Claude Sonnet 5.5 API
เอกสารอ้างอิง API ฉบับสมบูรณ์สำหรับโมเดล LLM Claude Sonnet 5.5 จาก Anthropic
รุ่นของโมเดล {#}
API นี้รองรับโมเดล Claude Sonnet 5.5 สองรุ่น:
การเปรียบเทียบโดยย่อ
Claude Sonnet 5.5 Text to Text
จุดปลายทาง
POST /api/v1/chat/completions
พารามิเตอร์คำขอ
จำเป็น
การรองรับข้อความ
ไม่บังคับ
ตัวอย่างคำขอ
const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'claude-sonnet-5.5-text-to-text',
messages: [
{
role: 'user',
content: 'Write a four-line modern poem about a programmer drinking coffee.'
}
],
stream: true,
max_tokens: 500,
})
});
Claude Sonnet 5.5 File Analysis
จุดปลายทาง
POST /api/v1/chat/completions
พารามิเตอร์คำขอ
จำเป็น
การรองรับข้อความ
ไม่บังคับ
ตัวอย่างคำขอ
const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'claude-sonnet-5.5-file-analysis',
messages: [
{
role: 'user',
content: [
{ type: 'text', text: 'Summarize the key points of this PDF.' },
{
type: 'file',
file: {
filename: 'gptproto.pdf',
file_data: 'https://tos.gptproto.com/resource/gptproto.pdf'
}
}
]
}
],
stream: true,
max_tokens: 1000,
})
});
รูปแบบการตอบกลับ
โมเดล LLM Claude Sonnet 5.5 ส่งคืนการตอบกลับการเติมข้อความที่เข้ากันได้กับ OpenAI เมื่อกำหนด stream: true การตอบกลับจะเป็นเหตุการณ์ที่ส่งจากเซิร์ฟเวอร์ (SSE) และเมื่อกำหนด stream: false การตอบกลับจะเป็นออบเจ็กต์ JSON เดียว
การตอบกลับเมื่อสำเร็จ
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-sonnet-5.5-file-analysis","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-sonnet-5.5-file-analysis","choices":[{"index":0,"delta":{"content":"Here is a concise summary"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-sonnet-5.5-file-analysis","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-sonnet-5.5-file-analysis","choices":[],"usage":{"prompt_tokens":12,"completion_tokens":8,"total_tokens":20}}
data: [DONE]
การตอบกลับข้อผิดพลาด
event: error
data: {"error":{"message":"Authorization is empty","type":"invalid_request_error","code":"1001","param":null}}
แนวทางปฏิบัติที่แนะนำ
- ใช้ข้อความที่มีโครงสร้าง: ส่งประวัติการสนทนาผ่าน
messages[] แทนการรวมบริบททั้งหมดไว้ในพรอมป์ต์เดียว
- เลือกรุ่นโมเดลที่เหมาะสม: ใช้ Text to Text สำหรับการให้เหตุผลและการเขียนที่ใช้เฉพาะข้อความ และใช้ File Analysis เมื่อต้องใช้ไฟล์หรือรูปภาพ
- กำหนด
max_tokens ตามต้องการ: ใช้พารามิเตอร์นี้เพื่อควบคุมความยาวขาออกสูงสุด
- ประมวลผลเหตุการณ์ SSE: ต่อท้ายเนื้อหา
choices[0].delta.content เพื่อแสดงผลแบบสตรีม และถือว่า data: [DONE] หมายถึงเสร็จสมบูรณ์
- ส่งเฉพาะข้อมูลเข้าที่รองรับ: ในไคลเอนต์ปัจจุบัน โมเดลข้อความจะละเว้นส่วนไฟล์และรูปภาพที่ไม่รองรับ