08 แชทและ Langfuse
รันแชท AI ในแอปและตรวจสอบ trace, token, latency และต้นทุนของมันใน Langfuse
ผลลัพธ์
ในเวลาประมาณ 15 นาที แอปจะตอบคำถามเกี่ยวกับข้อมูลได้ และ Langfuse จะแสดง
trace ของโมเดลอย่างครบถ้วน เริ่มเฉพาะหลังจากโมดูล 07 กู้คืนแล้วและ
git branch --show-current คืนค่า build-workshop-v1
ขั้นที่ 1 — ตรวจสอบคีย์
ยืนยันว่าฟิลด์เหล่านี้ถูกกรอกใน workshops/build_workshop/app/.env.workshop แล้ว
URL ของ Langfuse ต้องตรงกับภูมิภาคของโปรเจกต์คุณ
OPENAI_API_KEY=sk-...
LLM_MODEL=<model from the template>
LLM_BASE_URL=https://api.openai.com/v1
LANGFUSE_PUBLIC_KEY=pk-lf-...
LANGFUSE_SECRET_KEY=sk-lf-...
LANGFUSE_BASE_URL=https://us.cloud.langfuse.comรีสตาร์ทเฉพาะแบ็กเอนด์ที่ใส่ instrument ไว้:
cd "$(git rev-parse --show-toplevel)/workshops/build_workshop/app"
docker compose --env-file .env.workshop \
-f docker-compose.workshop.yml \
-f docker-compose.otel.yml \
up -d --build backendตรวจสอบว่ามันสุขภาพดี:
docker compose --env-file .env.workshop \
-f docker-compose.workshop.yml \
-f docker-compose.otel.yml \
ps backendขั้นที่ 2 — ถามคำถามที่ทดสอบได้หนึ่งข้อ
เปิด localhost:8080 เลือก Ask AI แล้วป้อน:
What are the top 10 pickup zones by trip count in July 2022?
Show the SQL and the result.คาดหวัง: คำตอบ ตารางผลลัพธ์หรือกราฟ และตัวควบคุม Show SQL อ่าน SQL ที่
สร้างขึ้นและยืนยันว่ามันคิวรี nyc_tlc_data ก่อนจะเชื่อคำตอบ

ขั้นที่ 3 — หา trace ใน Langfuse ที่ตรงกัน
เปิดโปรเจกต์ Langfuse ที่สร้างในโมดูล 00 และเลือก trace chat ที่ใหม่สุด จับคู่มัน
กับคำถามของคุณด้วย timestamp หรือข้อความ input
ตรวจสอบฟิลด์เหล่านี้:
- คำถาม input และ output ที่สร้างขึ้น
- โมเดลและ latency
- จำนวน token ของ input/output และต้นทุน และ
- session หรือ conversation ID

ถ้าไม่มี trace ปรากฏ ให้ตรวจ log ของแบ็กเอนด์ก่อน:
docker compose --env-file .env.workshop \
-f docker-compose.workshop.yml \
-f docker-compose.otel.yml \
logs --tail=100 backendสาเหตุที่พบบ่อยคือ LANGFUSE_BASE_URL ที่ไม่ตรงกับภูมิภาคของโปรเจกต์
ขั้นที่ 4 — ตรวจสอบการจัดกลุ่มบทสนทนา
ถามคำถามต่อเนื่องหนึ่งข้อในแชทเดียวกัน:
For those zones, compare average fare and average tip.Langfuse ควรแสดงรอบสนทนาที่ถูก trace เป็นอันที่สองภายใต้ conversation/session เดียวกัน
การตรวจสอบความสมบูรณ์
- แชทคืนคำตอบที่มีที่มาชัดเจนและ SQL ที่มองเห็นได้
- ทั้งสองรอบปรากฏใน Langfuse
- คุณอ่านโมเดล latency token และต้นทุนได้
- ทั้งสองรอบใช้ conversation/session เดียวกัน
ไปต่อที่ 09 สรุปปิดท้าย