Chat Completions

向支持 Chat Completions 的 Genesis 模型发送消息,并返回生成内容。

POST https://token.moi.matrixorigin.cn/v1/chat/completions

调用前准备

准备具有 Genesis 权限的访问凭据,并从查看模型列表取得模型 ID。确认所选模型支持 Chat Completions。

请求体

$GENESIS_ACCESS_TOKEN 替换为访问令牌或服务账号 API Key,将 $MODEL_ID 替换为要调用的模型 ID。

curl -X POST \
  "https://token.moi.matrixorigin.cn/v1/chat/completions" \
  -H "Authorization: Bearer $GENESIS_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "'"$MODEL_ID"'",
    "messages": [
      {
        "role": "user",
        "content": "用一句话说明数据库事务的作用。"
      }
    ],
    "max_tokens": 128
  }'

字段

类型

必填

说明

model

string

要调用的 Chat Completions 模型 ID。

messages

array of object

按顺序提交的消息列表。

max_tokens

integer

本次生成的输出 Token 上限,仅使用所选模型支持的值。

temperature

number

采样温度,仅在所选模型支持时设置。

stream

boolean

设为 true 以请求流式输出,响应格式见「流式响应」。

下面表格展开示例中 messages 数组的每一项;每一行是该数组项的一个字段。

字段

类型

必填

说明

role

string

消息角色。

content

string

消息的文本内容。

成功响应

服务返回模型生成的消息。

{
  "id": "<COMPLETION_ID>",
  "object": "chat.completion",
  "model": "<MODEL_ID>",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "事务将一组操作作为整体执行,以保证数据一致性。"
      },
      "finish_reason": "stop"
    }
  ]
}

字段

类型

说明

id

string

本次 Completion 的标识。

object

string

响应对象类型,示例为 chat.completion

model

string

实际处理请求的模型 ID。

choices

array of object

生成结果列表。

下面表格展开示例中 choices 数组的每一项;每一行是该数组项的一个字段。

字段

类型

说明

index

integer

当前生成结果在列表中的位置。

message

object

助手消息。

finish_reason

string

当前生成的结束原因。

下面表格展开示例中 choices[].message 对象;每一行是该对象的一个字段。

字段

类型

说明

role

string

消息角色。

content

string

助手生成的文本内容。

流式响应

stream 设为 true 并带 Accept: text/event-stream 请求头来请求流式输出。服务返回 text/event-stream;收到 data: [DONE] 前,持续读取事件中的增量内容。建立流前发生错误时,响应为 JSON 错误对象,结构同「错误响应」。

curl -N -X POST \
  "https://token.moi.matrixorigin.cn/v1/chat/completions" \
  -H "Authorization: Bearer $GENESIS_ACCESS_TOKEN" \
  -H 'Content-Type: application/json' \
  -H 'Accept: text/event-stream' \
  -d '{
    "model": "'"$MODEL_ID"'",
    "messages": [
      {
        "role": "user",
        "content": "用一句话说明主键的作用。"
      }
    ],
    "stream": true
  }'
data: {"object":"chat.completion.chunk","choices":[{"delta":{"content":"主键"}}]}

data: {"object":"chat.completion.chunk","choices":[{"delta":{"content":"用于唯一标识表中的每一行。"}}]}

data: [DONE]

字段

类型

说明

object

string

事件对象类型,示例为 chat.completion.chunk

choices

array of object

当前事件的增量列表。

[DONE]

event marker

正常结束标记;收到该标记后再将结果标记为完成。

下面表格展开示例中 choices 数组的每一项;每一行是该数组项的一个字段。

字段

类型

说明

delta

object

增量对象。

下面表格展开示例中 choices[].delta 对象;每一行是该对象的一个字段。

字段

类型

说明

content

string

存在时追加到当前文本。

错误响应

{
  "error": {
    "message": "<可读错误信息>",
    "type": "<错误类型,可能省略>",
    "code": "<错误代码,可能省略>"
  }
}

字段

类型

说明

error

object

错误对象。

下面表格展开示例中 error 对象;每一行是该对象的一个字段。

字段

类型

说明

message

string

可读错误信息。

type

string

模型服务返回的错误类别,可能省略。

code

string 或 null

模型服务返回的错误代码,可能省略。

后续操作

流式读取见上文「流式响应」。其他请求形态见 ResponsesMessages(Anthropic)

最后更新于