星芸AI API开发文档
  1. 对话接口
星芸AI API开发文档
  • 文档说明
  • API身份认证
  • API请求
  • API模型接口
    • 模型名称
      • 模型名称获取
    • 对话接口
      • 对话接口
        POST
    • 文本补全接口
      • 文本补全接口
    • 图像生成/识别接口
      • 图像生成接口
      • 图像识别接口
    • 向量嵌入接口
      • 向量嵌入接口
    • AI绘图(MJ绘图)接口
      • 任务提交
        • 执行动作
        • 提交Blend任务
        • 提交Describe任务
        • 提交Imagine任务
        • 提交Modal
        • 提交Shorten任务
      • 任务查询
        • 查询所有任务
        • 根据ID列表查询任务
        • 查询任务队列
        • 指定ID获取任务
        • 获取任务图片的seed
    • 开放插件(Plugin)接口
      • 联网接口
        • 联网(增强)接口
    • 语音/文本接口
      • 文本转语音(TTS)
      • 语音转文本(STT)
  • 常见问题
  • API调用错误码汇总
  1. 对话接口

对话接口

正式环境
https://aiapi.xing-yun.cn
正式环境
https://aiapi.xing-yun.cn
POST
https://aiapi.xing-yun.cn
https://aiapi.xing-yun.cn/v1/chat/completions
提示
这里仅显示“对话”接口,其他图片解析等多模态接口请查看对应接口内容
模型名称调用名称备注
GPT-3.5系列gpt-3.5-turbo上下文4K Token
gpt-3.5-turbo-0613上下文4K Token
gpt-3.5-turbo-16k上下文16K Token
gpt-3.5-turbo-16k-0613上下文16K Token
GPT-4.0系列gpt-4上下文8K Token
gpt-4-0314上下文8K Token
gpt-4-0613上下文8K Token
gpt-4-1106-preview最大输入128K Token,最大输出4KToken,该模型是最新的GPT-4-turbo模型
gpt-4-turbo最大输入128K Token,最大输出4KToken,该模型是最新的GPT-4-turbo模型
国内大模型(小程序等审查专用)qwen-turbo上下文8K Token

请求参数

Authorization
在 Header 添加参数
Authorization
,其值为在 Bearer 之后拼接 Token
示例:
Authorization: Bearer ********************
Header 参数
Content-Type
string 
必需
示例值:
application/json
Accept
string 
必需
示例值:
application/json
Body 参数application/json
model
string 
必需
要使用的模型的 ID。有关哪些模型适用于聊天 API 的详细信息,请参阅模型端点兼容性表。
messages
object 
必需
以聊天格式生成聊天完成的消息。
role
string 
可选
content
string 
可选
temperature
integer 
可选
使用什么采样温度,介于 0 和 2 之间。较高的值(如 0.8)将使输出更加随机,而较低的值(如 0.2)将使输出更加集中和确定。 我们通常建议改变这个或top_p但不是两者。
top_p
integer 
可选
一种替代温度采样的方法,称为核采样,其中模型考虑具有 top_p 概率质量的标记的结果。所以 0.1 意味着只考虑构成前 10% 概率质量的标记。 我们通常建议改变这个或temperature但不是两者。
n
integer 
可选
为每个输入消息生成多少个聊天完成选项。
stream
boolean 
可选
如果设置,将发送部分消息增量,就像在 ChatGPT 中一样。当令牌可用时,令牌将作为纯数据服务器发送事件data: [DONE]发送,流由消息终止。
stop
string 
可选
API 将停止生成更多令牌的最多 4 个序列。
max_tokens
integer 
可选
聊天完成时生成的最大令牌数。 输入标记和生成标记的总长度受模型上下文长度的限制。
presence_penalty
number 
可选
-2.0 和 2.0 之间的数字。正值会根据到目前为止是否出现在文本中来惩罚新标记,从而增加模型谈论新主题的可能性。 查看有关频率和存在惩罚的更多信息。
frequency_penalty
number 
可选
-2.0 和 2.0 之间的数字。正值会根据新标记在文本中的现有频率对其进行惩罚,从而降低模型逐字重复同一行的可能性。 查看有关频率和存在惩罚的更多信息。
logit_bias
null 
可选
修改指定标记出现在完成中的可能性。 接受一个 json 对象,该对象将标记(由标记器中的标记 ID 指定)映射到从 -100 到 100 的关联偏差值。从数学上讲,偏差会在采样之前添加到模型生成的 logits 中。确切的效果因模型而异,但 -1 和 1 之间的值应该会减少或增加选择的可能性;像 -100 或 100 这样的值应该导致相关令牌的禁止或独占选择。
user
string 
可选
代表您的最终用户的唯一标识符,可以帮助 OpenAI 监控和检测滥用行为。了解更多。
示例
//  历史记录和用户新提出的问题通过插入messages中的[{},{},{}...]形式传参数,这样AI才会有记忆能力,通过不同的role分为用户,AI以及系统预设三部分,各个部分使用说明如下:
{
  "messages": [
    {
      "role": "system", // system表示系统预设角色,权重最高,适合做Prompt,例如:你叫小芸,你具有写作,聊天,和回答问题的能力
      "content": "你叫小芸,你具有写作,聊天,和回答问题的能力"
    },
    {
      "role": "user",  // user表示用户提问的内容,例如:你好
      "content": "你好"
    },
    {
      "role": "assistant",  // assistant表示AI回复的内容
      "content": "你好!有什么我可以帮助你的吗?"
    },
    {
      "role": "user",
      "content": "简单说一下你会做什么?"
    },
    {
      "role": "assistant",
      "content": "作为一个语言模型,我可以帮助你完成各种任务,包括但不限于:\n\n1. 回答常见问题:我可以回答关于历史、科学、地理、文化等各个领域的问题。\n\n2. 提供解释和定义:如果你需要解释某个概念或术语的含义,我可以帮你提供相关的定义和解释。\n\n3. 进行翻译:我可以翻译英文、中文和其他一些常见语言之间的文本。\n\n4. 撰写文章和段落:如果你需要帮助写作,我可以提供文章、段落或句子的写作建议和指导。\n\n5. 创意和灵感:如果你需要一些创意或灵感,我可以提供关于写作、绘画、设计等方面的建议。\n\n请记住,我是一个语言模型,虽然我尽力提供准确和有用的信息,但有时候可能会出现错误或不准确的回答。在使用我的回答时,请自行判断和核实信息的准确性。"
    },
    {
      "role": "user",  // 注意:请求的时候,最后一个一定是user,也就是用户提问,这样AI才能回答这个问题
      "content": "我上面问的你什么问题?"
    }
  ],
  "stream": false,  // 是否流式响应
  "model": "gpt-3.5-turbo",  // 模型定义在这里,其中,需要审查的国内模型可定义为:qwen-turbo,审查过后可更换
  "temperature": 0.5,
  "presence_penalty": 0,
  "frequency_penalty": 0,
  "top_p": 1
}

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://aiapi.xing-yun.cn/v1/chat/completions' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '//  历史记录和用户新提出的问题通过插入messages中的[{},{},{}...]形式传参数,这样AI才会有记忆能力,通过不同的role分为用户,AI以及系统预设三部分,各个部分使用说明如下:
{
  "messages": [
    {
      "role": "system", // system表示系统预设角色,权重最高,适合做Prompt,例如:你叫小芸,你具有写作,聊天,和回答问题的能力
      "content": "你叫小芸,你具有写作,聊天,和回答问题的能力"
    },
    {
      "role": "user",  // user表示用户提问的内容,例如:你好
      "content": "你好"
    },
    {
      "role": "assistant",  // assistant表示AI回复的内容
      "content": "你好!有什么我可以帮助你的吗?"
    },
    {
      "role": "user",
      "content": "简单说一下你会做什么?"
    },
    {
      "role": "assistant",
      "content": "作为一个语言模型,我可以帮助你完成各种任务,包括但不限于:\n\n1. 回答常见问题:我可以回答关于历史、科学、地理、文化等各个领域的问题。\n\n2. 提供解释和定义:如果你需要解释某个概念或术语的含义,我可以帮你提供相关的定义和解释。\n\n3. 进行翻译:我可以翻译英文、中文和其他一些常见语言之间的文本。\n\n4. 撰写文章和段落:如果你需要帮助写作,我可以提供文章、段落或句子的写作建议和指导。\n\n5. 创意和灵感:如果你需要一些创意或灵感,我可以提供关于写作、绘画、设计等方面的建议。\n\n请记住,我是一个语言模型,虽然我尽力提供准确和有用的信息,但有时候可能会出现错误或不准确的回答。在使用我的回答时,请自行判断和核实信息的准确性。"
    },
    {
      "role": "user",  // 注意:请求的时候,最后一个一定是user,也就是用户提问,这样AI才能回答这个问题
      "content": "我上面问的你什么问题?"
    }
  ],
  "stream": false,  // 是否流式响应
  "model": "gpt-3.5-turbo",  // 模型定义在这里,其中,需要审查的国内模型可定义为:qwen-turbo,审查过后可更换
  "temperature": 0.5,
  "presence_penalty": 0,
  "frequency_penalty": 0,
  "top_p": 1
}'

返回响应

🟢200成功
application/json
Body
id
string 
必需
object
string 
必需
created
integer 
必需
model
string 
必需
choices
array [object {3}] 
必需
index
integer 
可选
message
object 
可选
finish_reason
string 
可选
usage
object 
必需
prompt_tokens
integer 
必需
completion_tokens
integer 
必需
total_tokens
integer 
必需
示例
{
  "id": "chatcmpl-8eD4KviOzJPZxTFF8Pze9PYvoaSaN",
  "object": "chat.completion",
  "created": 1704594048,
  "model": "gpt-3.5-turbo-0613",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "你上面问的问题是:简单说一下你会做什么?"
      },
      "logprobs": null,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 406,
    "completion_tokens": 21,
    "total_tokens": 427
  },
  "system_fingerprint": null
}
上一页
模型名称获取
下一页
文本补全接口
Built with