OneMux/เอกสาร/การสร้างบทสนทนา

การสร้างบทสนทนา

จุดเชื่อมต่อมาตรฐานสำหรับการสร้างบทสนทนา รองรับโมเดลหลักจาก OpenAI, Anthropic, Google และผู้ให้บริการอื่น ๆ รองรับการสนทนาหลายรอบ system prompt การส่งออกแบบสตรีม และการปรับแต่งพารามิเตอร์ หน้านี้อธิบายรูปแบบคำขอ โครงสร้างการตอบกลับ พารามิเตอร์ที่ใช้บ่อย และการจัดการข้อผิดพลาด

ข้อมูลอินเทอร์เฟซ

  • Endpoint: POST /v1/chat/completions
  • การยืนยันตัวตน: Authorization: Bearer sk-xxx
  • โปรโตคอล: รูปแบบที่เข้ากันได้กับ OpenAI

การเรียกใช้งานพื้นฐาน

curl https://api.onemux.net/v1/chat/completions \
  -H "Authorization: Bearer $ONEMUX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-6.1-sol",
    "messages": [{"role": "user", "content": "สวัสดี OneMux"}]
  }'

ตัวอย่างการตอบกลับ

{
  "id": "chatcmpl-xxx",
  "object": "chat.completion",
  "model": "gpt-6.1-sol",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "สวัสดี! ฉันคือผู้ช่วย AI ของ OneMux..."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 10,
    "completion_tokens": 15,
    "total_tokens": 25
  }
}

การสนทนาหลายรอบ

อาร์เรย์ messages ใช้เก็บประวัติการสนทนาตามลำดับเวลา:

response = client.chat.completions.create(
    model="gpt-6.1-sol",
    messages=[
        {"role": "user", "content": "ฉันชื่อเสี่ยวหมิง"},
        {"role": "assistant", "content": "สวัสดี เสี่ยวหมิง!"},
        {"role": "user", "content": "ฉันชื่ออะไร?"}
    ]
)
# AI 会回答:你叫小明

System Prompt

ใช้บทบาท system เพื่อกำหนดกฎการทำงานของ AI:

messages = [
    {"role": "system", "content": "คุณเป็นวิศวกร Python มืออาชีพ ให้คำตอบที่กระชับและเป็นมืออาชีพ"},
    {"role": "user", "content": "จะอ่านไฟล์ได้อย่างไร?"}
]

พารามิเตอร์ที่ใช้บ่อย

พารามิเตอร์คำอธิบายค่าที่แนะนำ
temperatureความสร้างสรรค์ (0-2)0.7 (ค่าเริ่มต้น), ใช้ 1.2 สำหรับงานเขียนเชิงสร้างสรรค์ และ 0.3 สำหรับการสร้างโค้ด
max_tokensความยาวเอาต์พุตสูงสุดกำหนดตามความต้องการ เพื่อหลีกเลี่ยงไม่ให้โมเดล "พูดเยิ่นเย้อ"
top_pการสุ่มตัวอย่างแบบนิวเคลียส (0-1)0.9 (ค่าเริ่มต้น)
streamการส่งออกแบบสตรีมtrue (แนะนำ เพื่อประสบการณ์การใช้งานที่ดียิ่งขึ้น)

ข้อผิดพลาดที่พบบ่อย