Claude Sonnet 5 API
مرجع API كامل لنماذج Claude Sonnet 5 اللغوية الكبيرة المقدمة من Anthropic.
إصدارات النموذج
تدعم واجهة API هذه إصدارين من نموذج Claude Sonnet 5:
مقارنة سريعة
Claude Sonnet 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-text-to-text',
messages: [
{
role: 'user',
content: 'Write a four-line modern poem about a programmer drinking coffee.'
}
],
stream: true,
max_tokens: 500,
top_p: 0.5,
top_k: 50
})
});
Claude Sonnet 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-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,
top_p: 0.5,
top_k: 50
})
});
تنسيق الاستجابة
تعيد نماذج Claude Sonnet 5 اللغوية الكبيرة استجابات إكمال متوافقة مع OpenAI. عند استخدام stream: true، تكون الاستجابة Server-Sent Events؛ وعند استخدام stream: false، تكون الاستجابة كائن JSON واحدًا.
استجابة ناجحة
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-sonnet-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-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-file-analysis","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"claude-sonnet-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 عند الحاجة إلى ملفات أو صور.
- اضبط معلمات Claude بعناية: يتم دعم
top_p وtop_k ويمكنهما تغيير تنوع الإخراج.
- عالج أحداث SSE: ألحق
choices[0].delta.content للعرض المتدفق، وتعامل مع data: [DONE] بوصفه إكمالًا ناجحًا.
- أرسل المدخلات المدعومة فقط: تتجاهل النماذج النصية أجزاء الملفات والصور غير المدعومة في العميل الحالي.