Skip to content

聊天接口(通用)

简洁描述:对话/聊天模型通用接口,支持 OpenAI、Claude、Gemini 等兼容格式。


概览

  • 请求方法:POST
  • 路径:/v1/chat/completions
  • 内容类型:application/json

认证方式

支持常见的 Header 认证格式:

  • OpenAI:Authorization: Bearer sk-xxx
  • Anthropic:x-api-key: sk-xxx(并可能需要 anthropic-version
  • Google:x-goog-api-key: sk-xxx

请求示例

Body 参数说明

参数类型必填描述
modelstring模型名称,例如 gpt-4o
messagesarray<object>聊天消息数组,项格式为 `{ role: 'system'
temperaturenumber采样温度,0-2 间,越高越随机
top_pnumber核采样概率阈值,0-1
streamboolean是否使用流式输出
max_tokensnumber最大生成 tokens 数
nnumber生成多少个候选完成
presence_penaltynumber提示新主题的惩罚系数 (-2.0 ~ 2.0)
frequency_penaltynumber降低重复的惩罚系数 (-2.0 ~ 2.0)
logit_biasobject指定标记的 logits 偏置,例如 { "50256": -100 }
userstring终端用户标识,用于滥用检测
stopstring or array遇到任一停止词时结束
response_formatobject结构化输出配置(见文档)

curl 示例

bash
curl -X POST "https://api.gpt.ge/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-xxxx" \
  -d '{
    "model": "gpt-4o",
    "messages": [{"role": "user", "content": "晚上好"}],
    "max_tokens": 1688,
    "temperature": 0.5,
    "stream": false
  }'

JavaScript (fetch) 示例

javascript
fetch('https://api.gpt.ge/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer sk-xxxx'
  },
  body: JSON.stringify({
    model: 'gpt-4o',
    messages: [{ role: 'user', content: '晚上好' }],
    max_tokens: 1688,
    temperature: 0.5
  })
}).then(r => r.json()).then(console.log)

Python 示例(requests)

python
import requests

resp = requests.post(
    'https://api.gpt.ge/v1/chat/completions',
    headers={'Content-Type': 'application/json', 'Authorization': 'Bearer sk-xxxx'},
    json={
        'model': 'gpt-4o',
        'messages': [{'role': 'user', 'content': '晚上好'}],
        'max_tokens': 1688,
        'temperature': 0.5
    }
)
print(resp.json())

返回示例(200)

json
{
  "id": "chatcmpl-A1iMgDLzZtUJ9QDpfqDLxKH0zfUnp",
  "object": "chat.completion",
  "created": 1724972230,
  "model": "gpt-4o-2024-05-13",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "晚上好!有什么我可以帮你的吗?",
        "refusal": null
      },
      "logprobs": null,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 9,
    "completion_tokens": 10,
    "total_tokens": 19
  },
  "system_fingerprint": "fp_157b3831f5"
}