Chat Completions
チャット補完レスポンスを作成します。テキスト生成、マルチモーダル入力、ファンクションコーリング、ストリーミングレスポンスなどの機能に対応しています。
新しいプロジェクトには Responses API をおすすめします。 Responses API は instructions と input を分離するため、システム指示に Prompt Caching が自動で適用され、キャッシュヒット率が高まり、コストとレイテンシを大きく抑えられます。Chat Completions は引き続き長期サポートされ、既存の連携を移行する必要はありません。
エンドポイント
POST https://api.ofox.ai/v1/chat/completionsリクエストパラメータ
Message形式
interface Message {
role: 'system' | 'user' | 'assistant' | 'tool'
content: string | ContentPart[] // テキストまたはマルチモーダルコンテンツ
name?: string
tool_calls?: ToolCall[] // assistantメッセージのツールコール
tool_call_id?: string // toolメッセージのコールID
}
// マルチモーダルコンテンツ
type ContentPart =
| { type: 'text'; text: string }
| { type: 'image_url'; image_url: { url: string; detail?: 'auto' | 'low' | 'high' } }リクエスト例
cURL
Terminal
curl https://api.ofox.ai/v1/chat/completions \
-H "Authorization: Bearer $OFOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-6.1-sol",
"messages": [
{"role": "system", "content": "あなたは親切なアシスタントです。"},
{"role": "user", "content": "API Gatewayとは何か説明してください"}
],
"temperature": 0.7
}'レスポンス形式
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1703123456,
"model": "openai/gpt-6.1-sol",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "API Gateway(APIゲートウェイ)とは..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 25,
"completion_tokens": 150,
"total_tokens": 175
}
}ストリーミングレスポンス
stream: true を設定してSSEストリーミングレスポンスを有効にします:
Python
stream.py
stream = client.chat.completions.create(
model="openai/gpt-6.1-sol",
messages=[{"role": "user", "content": "物語を聞かせてください"}],
stream=True
)
for chunk in stream:
content = chunk.choices[0].delta.content
if content:
print(content, end="", flush=True)ストリーミングレスポンス形式
各chunkはSSE経由で送信されます:
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"こん"},"finish_reason":null}]}
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"にちは"},"finish_reason":null}]}
data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: [DONE]マルチモーダル入力(ビジョン)
画像を送信してモデルに分析させます:
response = client.chat.completions.create(
model="openai/gpt-6.1-sol",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "この画像には何が写っていますか?"},
{"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}}
]
}]
)ビジョン機能に対応しているモデルは以下の通りです:openai/gpt-6.1-sol、anthropic/claude-sonnet-5.5、google/gemini-3.8-flash 等。
詳細はビジョンガイドをご覧ください。
Function Calling
詳細はファンクションコーリングガイドをご覧ください。
最終更新日