科大讯飞
  1. 星火微调服务Web API文档文档
科大讯飞
  • iOS SDK接入文档
  • 平台文档
    • 开发者新手指南
      • 平台简介
      • 快速指引
    • 服务协议
      • 讯飞开放平台用户服务协议
      • 讯飞星火认知大模型接口服务协议
      • 开发者应用创建规则
      • 讯飞开放平台隐私政策
      • 开发者用户个人信息保护合规指引
      • 开放平台SDK合规使用说明
      • SDK隐私政策总览
      • SDK合规使用说明总览
      • 科大讯飞儿童隐私保护政策
      • 讯飞开放平台SLA协议
      • 讯飞开放平台订购协议
    • 用户认证须知
      • 用户认证简介
      • 企业实名认证
      • 个人实名认证
      • 初创团队认证
      • 学生认证
      • 公益项目认证
      • 个人升级企业认证
    • 财务
      • 退款规则及退款流程
      • 财务相关说明
    • 账号
      • 账号注销与删除流程
      • 账号与应用说明
    • 会员
      • 会员权益详情
      • 会员时效说明
      • 会员试用版
  • 星火认知大模型
    • SparkDesk
      • SparkDesk使用指南
      • SparkDesk隐私政策
      • SparkDesk用户协议
    • 星火认知大模型
      • 服务说明
      • 通用鉴权URL生成说明
      • Spark Android SDK接入文档
      • Linux SDK接入文档
      • Windows SDK接入文档
      • 讯飞星火认知大模型隐私政策
      • Web 文档
        • 星火认知大模型Web API文档
        • 星火大模型V1.5
        • 星火大模型V2
        • 星火大模型V3
    • 星火知识库
      • 星火知识库 API 文档
        • 星火知识库 API 文档
        • 文档问答
        • 文档上传
        • 文档总结
        • 获取文档总结/概要信息
      • 新版Embedding API文档
    • 图片生成
      • 图片生成 API
    • 图片理解
      • 图片理解 API
    • 大模型定制训练平台
      • 产品使用说明
      • 星火微调服务Web API文档文档
        • 星火微调服务Web API文档文档
        • V1.5版本
        • 微调模型
  • 语音识别
    • 语音唤醒(新版)
    • 语音听写
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • Java SDK 文档
      • 音频文件格式说明
      • 语音听写服务说明
      • 语音听写(流式版)SDK隐私政策
      • 语音听写(流式版)SDK合规使用说明
      • HarmonyOS SDK 文档
      • 语音听写自训练平台
      • 语音听写(流式版)WebAPI
    • 语音转写
      • 语音转写服务说明
      • 语音转写 服务协议
      • WebAPI 文档
        • 语音转写 API 文档
        • 文件上传
        • 查询结果
    • 极速语音转写
      • 极速语音转写 API 文档
      • 小文件上传
      • 初始化分块信息
      • 分块上传
      • 分块上传完成
      • 创建任务
      • 查询任务
    • 实时语音转写
      • 实时语音转写服务说明
      • 实时语音转写 API
    • 离线语音听写
      • Android SDK 文档
      • 离线语音听写服务说明
      • 离线语音听写SDK隐私政策
      • 离线语音听写SDK合规使用说明
    • 离线语音听写(新版)
      • Android SDK 文档
      • 离线语音听写隐私政策
    • 语音唤醒
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 语音唤醒服务说明
      • 离线唤醒SDK隐私政策
    • 语音唤醒(新版)
      • Android SDK 文档
      • Linux SDK 文档
      • 语音唤醒隐私政策
    • 离线命令词识别
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 离线命令词识别服务说明
      • 离线命令词识别SDK隐私政策
      • 离线命令词SDK合规使用说明
  • 语音合成
    • 在线语音合成
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • Java SDK 文档
      • 服务协议
      • 在线语音合成服务说明
      • 发音人自训练平台使用指南
      • WebAPI
    • 长文本语音合成
      • 长文本语音合成 API 文档
      • 创建任务
      • 查询任务
    • 离线语音合成
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 服务协议
      • 离线语音合成服务说明
    • AI虚拟人技术
      • Web SDK 2.0 接入指南
      • Android-SDK
      • iOS-SDK
      • Web API 文档
        • AI虚拟人技术 API 文档
        • 音频驱动
        • 启动
        • 文本驱动
        • 停止
        • 心跳
  • 语音扩展
    • 语音评测(流式版)
      • 接口说明
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 语音评测SDK隐私政策
      • 语音评测(流式版)API
    • 语音评测suntone
      • 语音评测suntone API
    • 离线变声
      • Android SDK 集成文档
    • 音色转换
      • 音色转换 API
    • 性别年龄识别
      • 性别能力识别 API
    • 声纹识别
      • Web API 文档
      • 声纹识别 API
    • 歌曲识别
      • 歌曲识别 API
    • 歌曲识别 ACRCloud
      • 接口说明
      • 哼唱识别
      • 音乐识别
    • AI 客服中间件
      • 接口说明
      • 获取token
      • 查询配置
      • 直接外呼
      • 创建外呼任务
      • 提交任务数据
      • 启动外呼任务
      • 暂停外呼任务
      • 删除外呼任务
      • 查询任务
      • 结果数据推送
      • 话单推送
      • 录音推送
      • 会话推送
      • 呼入话术上下文动态数据获取
  • 自然语言处理
    • 文本纠错
      • 文本纠错 API
      • 黑白名单上传
    • 公文校队
      • 公文校对 API
    • 文本合规
      • 文本合规 API
      • 新增黑名单词库
      • 根据lib_id添加黑名单词条
      • 根据lib_id查询词条明细
      • 根据lib_id删除词条
      • 根据appid查询账户下所有词库
      • 根据lib_id删除词库
      • 创建白名单库
      • 根据lib_id添加放行词条
      • 根据lib_id查询词条详情
      • 根据lib_id删除词条信息
      • 根据appid查询所有词库列表
      • 根据lib_id删除词库
    • 图片合规
      • 图片合规 API
    • 音频合规
      • 音频合规 API
    • 视频合规
      • 视频合规 API
    • 文本改写
      • 文本改写 API
    • 机器翻译
      • 机器翻译(新) API
    • 机器翻译niutrans
      • 机器翻译niutrans API
    • 同声传译
      • 同声传译 API 
    • 离线分词
      • Android SDK 文档
  • 人脸识别
    • 人脸验证与检索
      • Android SDK 文档
      • iOS SDK 文档
      • 人脸验证与检索SDK隐私政策
      • 人脸验证与检索SDK合规使用说明
    • 人脸对比
      • 人脸比对 API
    • 人脸比对sensetime
      • 人脸比对sensetime API
    • 人脸水印照比对
      • 人脸水印照比对 API
    • 静默活体检测
      • 静默活体检测 API
    • 配合式活体检测
      • 配合式活体检测 API
    • 静默活体检测sensetime
      • 静默活体检测sensetime API
    • 人脸检测和属性分析
      • 人脸检测和属性分析 API
    • 人脸特征分析tuputech
      • 年龄 API
      • 颜值 API
      • 性别 API
      • 表情 API
  • 文字识别
    • 通用文字识别
      • 通用文字识别 API
    • 通用文字识别
      • 通用文字识别 intsig API
    • 手写文字识别
      • 手写文字识别 API
    • 印刷文字识别
      • 印刷文字识别 API
    • 印刷文字识别(多语种)
      • 印刷文字识别(多语种)
    • 印刷文字识别(多语种)intsig
      • 印刷文字识别(多语种)intsig API
    • 图片文档还原
      • 图片文档还原 API 
    • 国内通用票据识别
      • 接口说明
      • 国内通用票据识别 API
    • 离线OCR
      • Android SDK 文档
    • 名片识别 intsig
      • 名片识别 API
    • 身份证识别 intsig
      • 身份证识别 intsig API
    • 银行卡识别 intsig
      • 银行卡识别 API
    • 营业执照识别 intsig
      • 营业执照识别 intsig API
    • 增值税发票识别 intsig
      • 增值税发票识别 intsig API
    • 拍照速算识别
      • 接口说明
      • 拍照速算识别 API
    • 公式识别
      • 接口说明
      • 公式识别 API
    • 指尖文字识别
      • 接口说明
      • 指尖文字识别 API
    • 身份证识别
      • 接口说明
      • 身份证识别 API
    • 增值税发票识别
      • 接口说明
      • 增值税发票识别 API
    • 营业执照识别
      • 接口说明
      • 营业执照识别 API
    • 火车票识别
      • 接口说明
      • 火车票识别 API
    • 出租车发票识别
      • 接口说明
      • 出租车发票识别 API
  • 图像识别
    • 场景识别
      • 场景识别 API
    • 物体识别
      • 物体识别 API
    • 场所识别
      • 场所识别 API 文档
  • 基础服务
    • 云服务器 CVM
      • 云服务器 CVM 产品简介
      • 快速入门
      • 服务协议
  • 解决方案
    • 签到解决方案
      • SaaS操作文档
    • 智能硬件通用方案
      • 智能硬件通用方案说明
      • 麦克风阵列Android SDK
      • 麦克风阵列Linux SDK
      • 双麦阵列设计参考
      • 麦克风阵列录音要求
      • 语音唤醒Android SDK
      • 语音唤醒Linux SDK
      • 离线声纹Android SDK
      • 离线声纹Linux SDK
  • MSC API 文档
    • Android
      • 文件列表
      • SDK初始化
      • 语音识别(Recognizer)
      • 语音合成(Synthesizer)
      • 语音评测(Evaluator)
      • 语音唤醒(Wakeuper)
      • 声纹人脸(Verifier)
      • Android 常量字段值
      • 基础类
    • IOS
      • 文件列表
      • SDK初始化
      • 语音识别(Recognizer)
      • 语音合成(Synthesizer)
      • 语音评测(Evaluator)
      • 语音唤醒(Wakeuper)
      • 声纹人脸(Verifier)
      • 基础类
    • Windows&Linux
      • 文件列表
      • API 文档
    • Java
      • 所有类列表
      • SDK初始化
      • 语音识别(Recognizer)
      • 语音合成(Synthesizer)
      • 常量字段值
      • 基础类
  1. 星火微调服务Web API文档文档

星火微调服务Web API文档文档

1. Spark API V1 协议描述#

本协议用于描述 Spark 大模型集成接口协议
本API服务为AI 大模型的产品化接口,支持内容审核,快速修复等功能
每次交互需要重新建立websocket连接,当完成交互时,需要请求侧主动发送close消息,完成接口的断开。
如果在生成的过程中需要终止,可以直接发送websocket的close消息,关闭连接即可

#2. 接口说明#

#2.1 请求方法和URL#

模型版本url地址domain
V1.5版本ws(s): //spark-api.xf-yun.com/v1.1/chatgeneral
微调模型ws(s): //spark-api-n.xf-yun.com/v1.1/chatpatch

#2.2 接口Demo#

参见多种语言demo,目前已支持的语言:
(使用demo之前,你应该修改代码中的app_id,key和secret 鉴权参数)
go_demo.go
java_demo.java
python3_demo.py
具体可以从讯飞开放平台直接获取:星火大模型

#2.3 接口要求#

接口类型:流式 ws(s)
接口鉴权:使用签名机制进行鉴权,签名详情参照鉴权说明
接口对接:需要按照文档标准的方法进行对接,服务仅保障文档内描述功能。

#2.4 接口权限说明#

此服务与星火认知大模型V1.5 共用token授权。

#3. 请求#

#3.1 请求协议示例#

{
    "header": {
        "app_id": "123456",
        "uid": "39769795890"
        "patch_id":["xxx"]  //调用微调大模型时必传,否则不传
    },
    "parameter": {
        "chat": {
            "domain": "patch",  //调用微调大模型时,设置为“patch”
            "temperature": 0.5,
            "top_k": 4,
            "max_tokens": 2048,
            "auditing": "default",
            "chat_id":"xxx"
        }
    },
    "payload": {
        "message": {
            "text": [
                {
                    "role": "system",
                    "content": "你是星火认知大模型"
                },
                {
                    "role": "user",
                    "content": "今天的天气"
                }
            ]
        }
    }
}

#3.2 请求参数#

#3.2.1 平台参数#

header部分的字段介绍:
字段名类型是否必传含义备注限制
header.app_idstring是应用的app_id,需要在飞云交互平台申请"maxLength":8
header.uidstring否每个用户的id,非必传字段,用于后续扩展"maxLength":32
header.patch_idarray否用户微调训练后发布的模型服务ID,非必传字段,用于后续扩展(当调用微调模型时,必传)"maxLength":32

#3.2.2 服务特性参数#

#3.2.2.1 对话服务参数#
字段名类型是否必传含义备注默认值
parameter.chatobject是用于上传对话的参数信息
parameter.chat.domainstring是需要使用的领域通用模型:general,其他领域具体值联系接口提供方。
parameter.chat.temperaturefloat否核采样阈值,向上调整可以增加结果的随机程度取值范围 (0,1]0.5
parameter.chat.top_kint否从k个中随机选择一个(非等概率)最小值1,最大值6。4
parameter.chat.max_tokensint否回答的tokens的最大长度最小值是1, 最大值是4096。2048
parameter.chat.auditingstring否内容审核的严格程度strict表示严格审核策略;moderate表示中等审核策略;show表示演示场景参数;default表示默认的审核程度;(需继续下调策略需要申请)default
parameter.chat.chat_idstring否用于关联会话chat需要保障用户下唯一
parameter.chat.suppress_pluginstring否用于关闭云端搜索目前传固定值,字符串格式: {"knowledge", "medical"}

#3.2.3 请求数据#

#3.2.3.1 文本数据#
payload.message段的参数:
字段含义数据类型取值范围默认值说明必填
text文本数据json object array受Token限制,有效内容不能超过8192Token是
单轮交互示例说明:
单轮交互只需要传递一个user角色的数据
[
    // 用户的提问
    {"role": "user", "content": "你会做什么?"}
]
多轮交互的格式示例:
多轮交互需要将之前的交互历史按照user->assistant->user->assistant规则进行拼接,并保证最后一条是user的当前问题。
[
    // 拼接对话历史信息:
    {"role": "user", "content": "你好"},              // 用户第一个问题   role是user,表示是用户的提问
    {"role": "assistant", "content": "你好!"},        // AI的第一个回复  role是assistant,表示是AI的回复
    {"role": "user", "content": "你是谁?"},           // 用户第二个问题
    {"role": "assistant", "content": "我是Spark API。"},  // AI的第二个回复
    // ...... 对话历史信息

    // 用户最新的提问
    {"role": "user", "content": "你会做什么?"}
]
字段解析:
字段含义数据类型取值范围默认值说明
role角色stringuser, assistantuser表示是用户的问题,assistant表示AI的回复
content文本内容string--该角色的对话内容

#4. 响应#

#4.1 响应协议示例#

#4.1.1 结果示例#

{
    "header": {
        "code": 0,
        "message": "Success",
        "sid": "cht000704fa@dx16ade44e4d87a1c802",
        "status": 0
    },
    "payload": {
        "choices": {
            "status": 2,
            "seq": 0,
            "text": [
                {
                    "content": "xxxxs",
                    "index": 0,
                    "role": "assistant"
                }
            ]
        },
        "usage": {
            "text": {
                "completion_tokens": 0,
                "question_tokens": 0,
                "prompt_tokens": 0,
                "total_tokens": 0
            }
        }
    }
}
注意:插件结果和大模型结果会交替返回。

#4.1.2 异常结果#

{
    "header": {
        "code": 10110,     // 错误码(重要)
        "message": "xxxx", // 错误描述信息(重要)
        "sid": "cht00120013@dx181c8172afb0001102",
        "status": 2,
    }
}

#4.2 响应参数#

#4.2.1 平台参数#

header部分的字段介绍:
字段名类型含义备注
header.codeint服务错误码0表示正常,非0表示出错
header.sidstring会话的sid
header.statusint会话的状态取值[0,1,2], 其中0表示第一个结果, 1表示中间结果, 2表示最后一个结果
header.messagestring返回消息描述错误码的描述信息

#4.2.2 响应数据参数#

文本响应:
choices(默认返回)
字段含义数据类型取值范围默认值说明必填
status数据状态int0:开始, 1:开始, 2:结束2表示文本响应结束是
seq数据序号int最小值:0, 最大值:9999999数据序号是
text文本结果json object array是一个json 数组是
token消耗响应:
usage(最后一个结果时,才会有该字段)
字段含义数据类型取值范围默认值说明必填
payload.usage.text文本数据json object
插件信息响应:
plugins(仅触发插件时返回)
字段含义数据类型取值范围默认值说明必填
text文本数据json object

#4.3 响应数据解析#

#4.3.1 payload.choices.text格式解析#

[
    {
        "content": "这是AI的回复文本",
        "index": 0,
        "role": "assistant"
    }
]
解析:
字段含义数据类型默认值说明
content回答的结果string----
index结果序号,在多候选中使用int0--
role角色stringassistantassistant说明这是AI的回复

#4.3.2 payload.usage.text格式解析#

{
    "prompt_tokens": 0,
    "question_tokens": 0,
    "completion_tokens": 0,
    "total_tokens": 0
}
解析:
字段含义数据类型默认值说明
completion_tokens回答tokens大小int----
question_tokens问题不带历史的tokens大小int--单轮情况下,此数值会略小于prompt_tokens
prompt_tokens问题总tokens大小int----
total_tokens问题和回答的tokens大小int----

#4.3.4 结果格式补充说明#

模型结果除了普通文本类型,为了满足排版需求,会出现以下的标记语言,建议集成方进行适配:
markdown(表格、列表等)
latex(数学公式)

##

#5. 使用方式#

#5.1 连接管理#

#5.1.1 建立ws连接#

此协议对应的接口为长连接接口,连接建立之后可以进行长时间的交互,用户交互完成之后应该主动关闭连接。
建立连接需要满足以下条件:
必须符合 websocket 协议规范(rfc6455)
需要按照要求进行签名请求
如果用户在60秒内没有交互数据,服务侧会主动断开。因此也建议用户在交互完成之后,主动关闭连接。

#5.1.2 关闭ws连接#

正常交互结束后,客户端可以通过websocket协议发送Close类型消息关闭连接。
【建议用户在使用完毕之后,主动关闭websocket连接,不要故意长时间的占用ws连接资源!】
参考GoLand代码如下:
// 用户侧关闭连接
closeInfo := websocket.FormatCloseMessage(websocket.CloseNormalClosure, "close ws conn")
_ = conn.WriteControl(websocket.CloseMessage, closeInfo, time.Now().Add(2*time.Second))
_ = conn.Close()
除了正常交互连接断开之外,触发以下场景也会将连接断开
当用户持续持续60s空闲状态,不发送任何数据时,服务侧会主动断开连接。因此也建议用户在交互完成之后,主动关闭连接。
在服务进行升级、熔断等情况下,API可能会主动断开已完成交互连接,需要业务集成时,注意异常处理。

#5.2 内容审核说明#

当返回10013或者10014错误码时,代码内容审核判断当前问题或回复的信息涉及敏感信息。返回错误的同时,在header.message字段中会携带当前的敏感提示语。
10013 表示用户的问题涉及敏感信息,服务侧拒绝处理此次请求。
10014 表示回复结果中涉及敏感信息,后续结果不可以展示给用户。
10019 表示当前的回复疑似敏感,结果文本可以给用户展示。服务会在返回全部结果后再返回该错误码,如果继续提问可能会导致被审核拦截。建议在收到该错误码后提示用户涉及敏感信息,并禁掉对话框,禁止用户继续提问。
如果需要调整内容审核的严格程度、敏感词等信息,请联系我们。

#6. 错误码列表#

错误码错误信息
0成功
10000升级为ws出现错误
10001通过ws读取用户的消息 出错
10002通过ws向用户发送消息 出错
10003用户的消息格式有错误
10004用户数据的schema错误
10005用户参数值有错误
10006用户并发错误:当前用户已连接,同一用户不能多处同时连接。
10007用户流量受限:服务正在处理用户当前的问题,需等待处理完成后再发送新的请求。 (必须要等大模型完全回复之后,才能发送下一个问题)
10008服务容量不足,联系服务商
10009和引擎建立连接失败
10010接收引擎数据的错误
10011向引擎发送数据的错误
10012引擎内部错误
10013用户问题涉及敏感信息,审核不通过,拒绝处理此次请求。
10014回复结果涉及到敏感信息,审核不通过,后续结果无法展示给用户。(建议清空当前结果,并给用户提示/警告:该答案涉及到敏感/政治/恐怖/色情/暴力等方面,不予显示/回复)
10015appid在黑名单中
10016appid授权类的错误。比如:未开通此功能,未开通对应版本,token不足,并发超过授权 等等。 (联系我们开通授权或提高限制)
10018用户在5分钟内持续发送ping消息,但并没有实际请求数据,会返回该错误码并断开ws连接。短链接使用无需关注
10019该错误码表示返回结果疑似敏感,建议拒绝用户继续交互
10110服务忙,请稍后再试。
10163请求引擎的参数异常 引擎的schema 检查不通过
10222引擎网络异常
10223LB找不到引擎节点
10907token数量超过上限。对话历史+问题的字数太多,需要精简输入。
11200授权错误:该appId没有相关功能的授权 或者 业务量超过限制(联系我们开通授权或提高限制)
11201授权错误:日流控超限。超过当日最大访问量的限制。(联系我们提高限制)
11202授权错误:秒级流控超限。秒级并发超过授权路数限制。(联系我们提高限制)
11203授权错误:并发流控超限。并发路数超过授权路数限制。(联系我们提高限制)
上一页
产品使用说明
下一页
V1.5版本
Built with