OneMux/ドキュメント/チャット生成

チャット生成

OpenAI、Anthropic、Google などの主要モデルに対応した標準のチャット生成エンドポイントです。複数ターンの会話、システムプロンプト、ストリーミング出力、パラメーター調整をサポートしています。このページでは、リクエスト形式、レスポンス構造、よく使われるパラメーター、エラー処理について説明します。

インターフェース情報

  • エンドポイント: 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": "こんにちは!OneMux AI アシスタントです..."
      },
      "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 ロールを使って 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(推奨。より快適に利用できます)

よくあるエラー