星辰MaaS产品文档
平台介绍
星辰MaaS平台介绍
API文档
认知大模型
Spark X1 Http调用文档
Spark http调用文档
Spark4.0 Ultra
Spark Max
Spark Pro
Spark Pro-128k
Spark Lite
翻译大模型
人格大模型
代码大模型
医疗大模型
办公大模型
汽车大模型
数字员工大模型
虚拟人大模型
工业大模型
科技文献大模型
口语通用大模型
internlm2_7b_chat
llama2_7b
Chinese-Aplaca-2-7B
codellama_7b_instruction
internlm_7b
Chinese-Alpaca-2-13b-16k
llama-3-chinese-8b-instruct
Chinese-Alpaca-7B
baichuan_7b
spark 13b
spark 2.6b
llama3_8b_instruct
llama2_7b_chat_hf
llama2_13b
falcon_7b_instruct
phi_3_mini_4k_instruct
starcoder2-3b
c4ai_command_r_v01
qwen_v2_0.5b_chat
qwen_v2_1.5b_chat
qwen_v2_72b_chat
gemma2_9b_it
qwen_v2.5_7b_chat
Spark Character
语音大模型
中文识别大模型
多语种识别大模型
超拟人语音合成
多模态
图片生成
图像理解
Stable Diffusion-XL
Visual Transformer
通用OCR大模型
Stable-Diffusion-3-medium-diffusers
SDK文档
星火认知大模型
Windows SDK集成文档
Android SDK集成文档
Linux SDK集成文档
iOS SDK集成文档
识别大模型
Android SDK集成文档
Linux SDK集成文档
超拟人语音合成
Android SDK集成文档
Linux SDK集成文档
iOS SDK集成文档
图片生成
Android SDK集成文档
Linux SDK集成文档
Windows SDK集成文档
iOS SDK集成文档
图像理解
Android SDK集成文档
Linux SDK集成文档
用户指南
申请APPID指引
工单授权指引
鉴权说明
OpenAILike鉴权方式使用说明
WebSocket鉴权使用说明
http鉴权使用说明
大模型精调平台
产品使用说明
数据集格式说明
Web API文档
精调服务_WebSocket协议
精调服务_HTTP协议
图像理解_WebSocket协议
stable_diffusion图片生成
图片分类
bert协议服务
批处理API文档
Prompt工程指南
本文档使用 MrDoc 发布
-
+
首页
iOS SDK集成文档
## 1. 图片生成简介 SparkChain支持用户向大模型发送一个文本请求,大模型根据请求生成相应的图片**。** ## 2. 兼容性说明 | 类别 | 兼容范围 | | :------- | :------------------------------------ | | 系统 | 支持arm64架构,兼容iOS 9.0 及以上版本 | | 开发环境 | 建议使用Xcode 进行开发 | ## 3. 授权说明 星火认知大模型授权支持按照tokens授权和设备级授权两种方式。 tokens 授权:授权tokens总量,按照tokens 使用量计费,1 tokens 约等于1.5个中文汉字 或者 0.8个英文单词。 设备级授权:授权设备台数和有效期,按照设备指纹计量计费,此方式仅支持定制级客户,如有需要请与开放平台联系。 ## 4. SDK集成包目录结构 SDK zip包解压缩,得到如下文件: ├── Demo SparkChain的使用DEMO,DEMO中已经集成了SDK,您可以参考DEMO,集成SDK。集成前,请先测通DEMO,了解调用原理。 ├── ReleaseNotes.txt SDK版本日志 ├── SDK SparkChain SDK │ └── SparkChain.framework └── SparkChain 图片生成 iOS SDK集成文档.pdf SparkChain集成指南 ## 5. SDK工程配置 ### 5.1 导入SDK库 SparkChain iOS SDK 核心代码库由SparkChain.framework组成。在引入工程中时,在工程的General的frameworks,Libraries,and Embedded Content 中使用Embedded & sign 示例如下:  ### 5.2 设置BitCode SparkChain iOS SDK暂不支持Bitcode,Xcode 7、Xcode 8默认开启了Bitcode,而Bitcode 需要工程依赖的所有类库同时支持,可关闭此设置,只需在Targets - Build Settings 中搜索Bitcode 即可,找到相应选项,设置为NO。  ## 6. 接口流程调用图  ## 7. 初始化 **在使用SDK功能前,需要首先开通星火大模型授权并获取已开通授权的应用信息(appId、apiKey、apiSecret)。SDK全局只需要初始化一次。**初始化时,开发者需要构建一个SparkChainConfig实例config,把相关的appid信息以及日志设置等传入config中,然后通过[SparkChain.getInst init:config]方法把config实例设置到SDK中。SparkChainConfig 结构如下: ``` @interface SparkChainConfig : NSObject //配置appid @property(nonatomic, readonly, copy)NSString *appID; //配置apiKey @property(nonatomic, readonly, copy)NSString *apiKey; //配置apiSecret @property(nonatomic, readonly, copy)NSString *apiSecret; //配置SDK工作路径 @property(nonatomic, readonly, copy)NSString *workDir; //配置用户自定义标识 @property(nonatomic, readonly, copy)NSString *uid; //配置日志等级 @property(nonatomic, readonly, copy)int logLevel; //配置日志存储路径 @property(nonatomic, readonly, copy)NSString *logPath; @end ``` 具体初始化示例如下: ``` //配置应用信息 SparkChainConfig * config = [[SparkChainConfig alloc] init]; config.appID("appID") .apiKey("apiKey") .apiSecret("apiSecret"); int ret = [SparkChain.getInst init:config]; NSLog("初始化结果 ret = %d",ret); ``` 初始化参数说明: | 接口名称 | 含义 | 参数类型 | 限制 | 是否必填 | | :-------- | :----------------------------------------------------------- | :------- | :----------------------------------------------------------- | :------- | | appID | 创建应用后,生成的唯一应用ID | NSString | 与平台生成的appID完全一致 | 是 | | apiKey | 创建应用后,生成的唯一应用标识 | NSString | 与平台生成的apiKey完全一致 | 是 | | apiSecret | 创建应用后,生成的唯一应用秘钥 | NSString | 与平台生成的apiSecret完全一致 | 是 | | logLevel | 日志等级 | int | 枚举,0:VERBOSE,1:DEBUG,2:INFO,3:WARN,4:ERROR,5:FATAL,100:OFF | 否 | | logPath | 日志存储路径,设置则会把日志存在该路径下,不设置则会把日志打印在终端上。 | NSString | 设置的路径需要有读写权限 | 否 | | uid | 用户自定义标识 | NSString | | 否 | 初始化返回值:0:初始化成功,非0:初始化失败,请根据具体返回值参考错误码章节查询原因。 ## 8. LLM初始化 SDK是通过LLM实例和大模型进行交互的,不同的功能需要创建不同类型的LLM实例,SDK通过LLMFactory类向开发者提供相应功能的LLM实例。LLMFactory提供的LLM实例构造方法如下: | 功能 | 说明 | | :------- | :----------------------------------------------------------- | | 图片生成 | 构造方法:<br>[LLMFactory imageGeneration:llmconfig]<br>[LLMFactory imageGeneration:llmconfig width:xx height:xx]<br>参数说明:<br>config:星火大模型配置参数。其中的domain为tti,其他domain参数不生效。<br>width:生成图片的宽度。参考下方分辨率说明, 不同的分辨率计费不同,请选择合适的使用<br>height:生成图片的高度。参考下方分辨率说明, 不同的分辨率计费不同,请选择合适的使用 | - LLMConfig参数说明: | 接口名称 | 含义 | 参数类型 | 限制 | 是否必传 | | :---------- | :------------------------------------------ | :------- | :----------------------------------------------------------- | :------- | | domain | 需要使用的领域 | NSString | 取值为[general,generalv2,generalv3,tti,image],默认generalv2<br>general:通用大模型V1.5版本<br>generalv2:通用大模型V2版本<br>generalv3:通用大模型V3版本<br>generalv3.5:通用大模型V3.5版本<br>tti: 图片生成访问的是大模型tti服务<br>image: 图片理解访问的是大模型image服务<br>domain的取值对应的url不同,需要严格对应。url地址参见下文。 | 否 | | url | 配置chat服务器域名地址 | NSString | general:[wss://spark-api.xf-yun.com/v1.1/chat](wss://spark-api.xf-yun.com/v1.1/chat)<br>generalv2:[wss://spark-api.xf-yun.com/v2.1/chat](wss://spark-api.xf-yun.com/v2.1/chat)<br>generalv3:[wss://spark-api.xf-yun.com/v3.1/chat](wss://spark-api.xf-yun.com/v3.1/chat)<br>generalv3.5:[wss://spark-api.xf-yun.com/v3.5/chat](wss://spark-api.xf-yun.com/v3.5/chat)<br>tti:https://spark-api.cn-huabei-1.xf-yun.com/v2.1/tti<br>image:[wss://spark-api.cn-huabei-1.xf-yun.com/v2.1/image](wss://spark-api.cn-huabei-1.xf-yun.com/v2.1/image)<br>url和domain是配合使用的,SDK里预设了general,generalv2,generalv3,generalv3.5,tti和image的url。当使用这几个domain时,SDK会自动设置url,故开发者可不用额外设置其值。SDK同样支持开发者访问其他未预置的服务,此时则需要开发者同时设置domain和url。 | 否 | | maxToken | 回答的tokens的最大长度 | int | 取值范围1-4096,默认:2048 | 否 | | temperature | 配置核采样阈值,改变结果的随机程度 | float | 最小:0, 最大:1,默认:0.5 | 否 | | auditing | 内容审核的场景策略 | NSString | 当前仅支持default | 否 | | topK | 配置从k个候选中随机选择⼀个(⾮等概率) | int | 取值范围1-6,默认值:4 | 否 | | chatID | 配置关联会话chat_id标识,需要保障用户下唯一 | NSString | | 否 | - 分辨率说明: **注:** 图片生成按点数计费,不同分辨率计费不同,具体如下 | 分辨率(width * height) | 图点数 | | :----------------------- | :----- | | 512x512(默认) | 6 | | 640x360 | 6 | | 640x480 | 6 | | 640x640 | 7 | | 680x512 | 7 | | 512x680 | 7 | | 768x768 | 8 | | 720x1280 | 12 | | 1280x720 | 12 | | 1024x1024 | 14 | 具体构造示例如下: ``` //图片生成 LLMConfig * llmconfig = [[LLMConfig alloc] init]; llmconfig.maxToken(2048) ... .topK(4);//config配置可缺省,示例仅供展示如何使用,开发者根据实际情况选择 LLM * llm = [LLMFactory imageGeneration:llmconfig width:1024 height:1024]; ``` ## 9. 同步调用 用户可以通过llm.run方法向大模型发送问题请求,获取大模型返回结果,不支持单实例并发调用。调用接口如下: ``` @interface LLM : NSObject - (LLMOutput *)run:(NSString *)query; @end ``` run方法参数说明: | 参数名 | 类型 | 说明 | 限制 | 是否必填 | | :----- | :------- | :------- | :--------- | :------- | | query | NSString | 文本内容 | 0-1000字符 | 是 | LLMOutput数据结构说明。 | 参数 | 类型 | 说明 | | :--------------- | :------- | :----------------------------------------------------------- | | errCode | int | 调用结果状态,0:调用成功,非0:调用失败,具体原因请根据返回值参考错误码 | | errMsg | NSString | 调用失败时的错误信息 | | role | NSString | 星火大模型的角色,assistant::助手,user:用户 | | content | NSString | 调用结果 | | image | NSData | 获取图片生成结果的图片二进制流 | | sid | NSString | 获取本次交互的sid | | completionTokens | int | 回答的Token大小 | | promptTokens | int | 包含历史问题的总Tokens大小 | | totalTokens | int | promptTokens和completionTokens的和,也是本次交互计费的Tokens大小 | 具体示例如下: ``` NSString *content = @"帮我画一座山。"; //同步请求 LLMOutput * syncOutput = [self.llm run:content]; //解析获取的结果,示例展示所有结果获取,开发者可根据自身需要,选择获取 NSData *byte = syncOutput.image; //获取交互结果 int errCode = syncOutput.errCode;//获取结果ID,0:调用成功,非0:调用失败 NSString *errMsg = syncOutput.errMsg;//获取错误信息 NSString *role = syncOutput.role;//获取角色信息 NSString *sid = syncOutput.sid;//获取本次交互的sid int completionTokens = syncOutput.completionTokens;//获取回答的Token大小 int promptTokens = syncOutput.promptTokens;//包含历史问题的总Tokens大小 int totalTokens = syncOutput.totalTokens;//promptTokens和completionTokens的和,也是本次交互计费的Tokens大小 ``` ## 10. 异步调用 用户可以通过llm.arun方法向大模型发送问题请求,并从监听回调中一次性获取交互结果,不支持单实例并发调用。 #### 10.1 注册结果监听回调 图片生成的异步请求结果通过LLMCallbacks监听回调返回,LLMCallbacks监听回调接口如下: ``` @protocol LLMCallback <NSObject> - (void)llm:(LLM *)llm onResult:(LLMResult * _Nullable)result usrContext:(id _Nullable)usrContext; - (void)llm:(LLM *)llm onEvent:(LLMEvent * _Nullable)event usrContext:(id _Nullable)usrContext; - (void)llm:(LLM *)llm onError:(LLMError * _Nullable)error usrContext:(id _Nullable)usrContext; @end ``` LLMCallbacks数据结构说明: - onLLMResult为星火请求结果回调,参数说明如下: | 参数 | 类型 | 说明 | | :--------- | :-------- | :----------------- | | result | LLMResult | 星火大模型结果实例 | | usrContext | id | 用户自定义标识 | - LLMResult结构说明: | 成员变量 | 返回类型 | 说明 | | :--------------- | :------- | :----------------------------------------------------------- | | role | NSString | 星火大模型角色,assistant::助手,user:用户 | | content | NSString | 调用结果 | | status | int | 返回结果状态,0:start,1:continue,2:end | | image | NSData | 图片生成功能二进制流图片结果 | | sid | NSString | 本次交互的sid | | CompletionTokens | int | 回答的Token大小 | | PromptTokens() | int | 包含历史问题的总Tokens大小 | | TotalTokens() | int | promptTokens和completionTokens的和,也是本次交互计费的Tokens大小 | - onLLMEvent为星火请求事件回调,参数说明如下: | 参数 | 类型 | 说明 | | :--------- | :------- | :--------------- | | event | LLMEvent | 调用事件结果实例 | | usrContext | id | 用户自定义标识 | - LLMEvent结构说明: | 成员变量 | 返回类型 | 说明 | | :------- | :------- | :--------------------------------- | | eventID | int | 事件ID,15:建立连接,19:连接断开 | | eventMsg | NSString | 事件信息 | | sid | NSString | 本次交互的sid | - onLLMError为星火请求错误回调,参数说明如下: | 参数 | 类型 | 说明 | | :--------- | :------- | :--------------- | | error | LLMError | 错误信息结果实例 | | usrContext | id | 用户自定义标识 | - LLMError结构说明: | 成员变量 | 返回类型 | 说明 | | :------- | :------- | :------------ | | errCode | int | 错误码ID | | errMsg | NSString | 错误信息 | | sid | NSString | 本次交互的sid | 具体调用示例如下: ``` //实现数据回调函数 - (void)llm:(LLM *)llm onResult:(LLMResult *)result usrContext:(id)usrContext { //解析获取的交互结果,示例展示所有结果获取,开发者可根据自身需要,选择获取。 NSData *byte = result.image; //一次性返回完整结果,因此不需要获取status去判断结果是否返回完成 NSString *role = result.role;//获取角色信息 NSString *sid = result.sid;//获取本次交互的sid int completionTokens = result.completionTokens;//获取回答的Token大小 int promptTokens = result.promptTokens;//包含历史问题的总Tokens大小 int totalTokens = result.totalTokens;//promptTokens和completionTokens的和,也是本次交互计费的Tokens大小 } - (void)llm:(LLM *)llm onEvent:(LLMEvent *)event usrContext:(id)usrContext { NSLog(@"异步调用:eventID:%d eventMsg:%@",event.eventID,event.eventMsg); int eventID = event.eventID;//获取事件ID NSString *eventMsg = event.eventMsg;//获取事件信息 NSString *sid = event.sid;//本次交互的sid } - (void)llm:(LLM *)llm onError:(LLMError *)error usrContext:(id)usrContext { NSLog(@"异步调用:code:%d msg:%@",error.errCode,error.errMsg); int errCode = error.errCode;//获取结果ID,0:调用成功,非0:调用失败 NSString *errMsg = error.errMsg;//获取错误信息 NSString *sid = event.sid;//本次交互的sid } llm.callback = self; ``` #### 10.2 请求调用 异步请求调用接口如下: ``` @interface LLM : NSObject - (int)arun:(NSString *)query; - (int)arun:(NSString *)query usrContext:(id _Nullable)usrContext; @end ``` arun方法参数说明: | 参数 | 类型 | 说明 | 限制 | 是否必填 | | :----------- | :------- | :------------- | :--------- | :------- | | question | NSString | 文本内容 | 0-1000字符 | 是 | | `usrContext` | Object | 用户自定义标识 | | 否 | 具体示例如下: ``` //异步调用 NSString *query = @"帮我画一座山。"; int ret = [llm arun:query]; //用户带自定义标识 //NSString *myContext = @"myContext"; //int ret = [llm arun:query usrContext:myContext]; ``` ## 11. 停止请求调用 如果开发者不需要此次交互结果,可以通过调用stop()方法抛弃此结果,然后重新进行下一次交互。注意,虽然调用此方法可以让SDK抛弃此次交互结果,但由于本次交互已经产生,因此还是会扣取相应的token量。具体调用如下: ``` [llm stop]; ``` ## 12. 逆初始化 当SDK需要完整退出时,需调用逆初始化方法释放资源,示例代码如下: ``` [[SparkChain getInst] unInit]; ``` ## 13. SDK API介绍 ### 13.1 SparkChainConfig API | 返回值类型 | 属性说明 | | :--------------- | :----------------------------------------------------------- | | SparkChainConfig | @property(nonatomic, readonly, copy) NSString * appID 设置用户的appID | | SparkChainConfig | @property(nonatomic, readonly, copy) NSString * apiKey 设置用户的apiKey | | SparkChainConfig | @property(nonatomic, readonly, copy) NSString * apiSecret 设置用户的apiSecret | | SparkChainConfig | @property(nonatomic, readonly, copy) NSString * uid 设置用户自定义标识 | | SparkChainConfig | @property(nonatomic, readonly, copy) NSString * workDir 设置SDK工作路径 | | SparkChainConfig | @property(nonatomic, readonly, copy) NSString *logLevel 设置日志等级 | | SparkChainConfig | @property(nonatomic, readonly, copy) NSString *logPath 设置日志保存路径 | ### 13.2 SparkChain API | 返回值类型 | 方法说明 | | :--------- | :----------------------------------------------- | | SparkChain | + (SparkChain *)getInst 获取SparkChain实例 | | int | - (int)init:(SparkChainConfig *)config SDK初始化 | | int | - (int)unInit SDK逆初始化 | ### 13.3 LLMConfig API | 返回值类型 | 属性说明 | | :--------- | :----------------------------------------------------------- | | LLMConfig | @property(nonatomic, readonly, copy) NSString *uid 用户自定义标识 | | LLMConfig | @property(nonatomic, readonly, copy) NSString *domain 设置需要使用的领域 | | LLMConfig | @property(nonatomic, readonly, copy) NSString *auditing 内容审核的场景策略 | | LLMConfig | @property(nonatomic, readonly, copy) NSString *chatID 配置关联会话chat_id标识,需要保障用户下唯一 | | LLMConfig | @property(nonatomic, readonly, copy) NSString *temperature 配置核采样阈值,改变结果的随机程度 | | LLMConfig | @property(nonatomic, readonly, copy) int topK 配置从k个候选中随机选择⼀个(⾮等概率) | | LLMConfig | @property(nonatomic, readonly, copy)int maxToken 回答的tokens的最大长度 | | LLMConfig | @property(nonatomic, readonly, copy) NSString *url 配置chat服务器域名地址 | | LLMConfig | @property(nonatomic, readonly, copy)(NSString *key, int param) 扩展接口,用于扩展当前SDK不支持的参数 | | LLMConfig | @property(nonatomic, readonly, copy)(NSString *key, double param) 扩展接口,用于扩展当前SDK不支持的参数 | | LLMConfig | @property(nonatomic, readonly, copy)(NSString *key, Bool param) 扩展接口,用于扩展当前SDK不支持的参数 | | LLMConfig | @property(nonatomic, readonly, copy)(NSString *key, NSString *param) 扩展接口,用于扩展当前SDK不支持的参数 | ### 13.4 LLMFactory API | 返回值类型 | 方法说明 | | :--------- | :----------------------------------------------------------- | | LLM | + (LLM *)textGeneration:(LLMConfig * _Nullable)config 构建星火大模型交付LLM | | LLM | + (LLM *)imageGeneration:(LLMConfig * _Nullable)config width:(int)width height:(int)height 构建图片生成LLM | | LLM | + (LLM *)imageUnderstanding:(LLMConfig * _Nullable)config 构建图片生成LLM | ### 13.5 LLM API | 返回值类型 | 方法说明 | | :--------- | :----------------------------------------------------------- | | void | @property(nonatomic, weak) id<LLMCallback> callback 注册SparkChain结果监听回调 | | LLMOutput | - (LLMOutput *)run:(NSString *)query 文本同步调用 | | int | - (int)arun:(NSString *)query 文本异步调用 | | int | - (int)arun:(NSString *)query usrContext:(id _Nullable)usrContext 文本异步调用 | | int | - (int)stop 停止请求调用 | ### 13.6 LLMOutput API | 返回值类型 | 属性说明 | | :--------- | :----------------------------------------------------------- | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable sid 获取返回结果的sid字段 | | int | @property (nonatomic, assign, readonly) int errCode 获取错误码 | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable errMsg 获取错误信息 | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable raw 获取角色 | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable content 获取大模型交互的文本结果 | | NSData | @property (nonatomic, copy, readonly) NSData * _Nullable image 获取图片生成的图片结果 | | int | @property (nonatomic, assign, readonly) int status 获取结果状态 | | int | @property (nonatomic, assign, readonly) int completionTokens 获取回答的Token大小 | | int | @property (nonatomic, assign, readonly) int promptTokens 获取包含历史问题的总Tokens大小 | | int | @property (nonatomic, assign, readonly) int totalTokens promptTokens和completionTokens的和,也是本次交互计费的Tokens大小 | ### 13.7 LLMError API | 返回值类型 | 方法说明 | | :--------- | :----------------------------------------------------------- | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable sid 获取返回结果的sid字段 | | int | @property (nonatomic, assign, readonly) int errCode获取错误码 | | NSString | @property (nonatomic, copy, readonly) NSString * errMsg 获取错误信息 | ### 13.8 LLMEvent API | 返回值类型 | 方法说明 | | :--------- | :----------------------------------------------------------- | | int | @property (nonatomic, assign, readonly) int eventID 获取事件id | | NSString | @property (nonatomic, copy, readonly) NSString * eventMsg 获取事件信息 | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable sid 获取返回结果的sid字段 | ### 13.9 LLMResult API | 返回值类型 | 方法说明 | | :--------- | :----------------------------------------------------------- | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable role 获取角色 | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable content 获取大模型交互的文本结果 | | NSData | @property (nonatomic, copy, readonly) NSData * _Nullable image 获取图片生成的图片结果 | | int | @property (nonatomic, assign, readonly) int status 获取结果状态 | | int | @property (nonatomic, assign, readonly) int completionTokens 获取回答的Token大小 | | int | @property (nonatomic, assign, readonly) int promptTokens 获取包含历史问题的总Tokens大小 | | int | @property (nonatomic, assign, readonly) int totalTokens promptTokens和completionTokens的和,也是本次交互计费的Tokens大小 | | NSString | @property (nonatomic, copy, readonly) NSString * _Nullable sid 获取返回结果的sid字段 | ### 14. 错误码 错误码包含SDK错误码和云端错误码,SDK错误码用来反馈SDK本地运行时遇到的错误;云端错误码用来反馈星火大模型交互时服务端错误。 ### 14.1 SDK错误码 | 错误码 | 含义 | 自查指南 | | :----- | :------------------------------------------ | :----------------------------------------------------------- | | 0 | 操作成功 | | | 18000 | 本地license文件不存在 | 检查工作目录下是否存在license文件,或者该目录是否有读写权限 | | 18001 | 授权文件内容非法 | 授权文件存在问题,请联系技术支持询问 | | 18002 | 授权文件解析失败 | 授权文件可能存在损坏,请联系技术支持询问 | | 18003 | payload内容缺失 | 授权文件存在问题,请联系技术支持询问 | | 18004 | signature内容缺失 | 授权文件存在问题,请联系技术支持询问 | | 18005 | 授权已过期 | 授权时间过期,请检查系统时间是否是当前时间,并联系技术支持询问 | | 18006 | 授权时间错误,比正常时间慢30分钟以上 | 请检查系统时间是否正确 | | 18007 | 授权应用不匹配(apiKey、apiSecret) | apiKey、apiSecret 配置有误,请核对项目中配置的 apiKey、apiSecret 。 | | 18008 | 授权文件激活过期 | 授权文件已超过15天未激活,需要联系相关人员重新生成离线授权文件 | | 18009 | 授权app信息指针为空 | | | 18010 | 离线授权激活文件指定平台与设备平台不匹配 | 授权文件里预置的平台架构与实际运行的设备的平台架构不一致 | | 18011 | 离线授权激活文件指定架构与设备cpu架构不匹配 | 授权文件里预置的cpu架构与实际运行的设备的cpu架构不一致 | | 18012 | 离线授权激活文件中包含License个数异常 | 离线授权文件异常,请联系相关人员重新生成离线授权文件 | | 18013 | 离线授权激活文件中未找到当前设备 | 当前运行的设备的设备指纹不在离线授权文件中,请检查该设备的设备指纹是否在提供的指纹池中 | | 18014 | 离线授权激活文件中设备指纹安全等级非法 | 请联系技术支持调整该appid的设备指纹等级 | | 18015 | 硬件授权验证失败 | 硬件授权验证失败,请联系相关人员处理 | | 18016 | 离线授权激活文件内容非法 | 离线授权文件被修改,请联系相关人员重新生成离线授权文件 | | 18017 | 离线授权激活文件中协议头非法 | 离线授权文件被修改,请联系相关人员重新生成离线授权文件 | | 18018 | 离线授权激活文件中指纹组成项个数为0 | 离线授权文件生成异常,请联系相关人员重新生成离线授权文件 | | 18019 | 资源已过期 | 资源的时间校验已过期,请联系相关人员增加授权时间 | | 18100 | 资源鉴权失败 | 资源鉴权失败,请联系相关人员处理 | | 18101 | 资源格式解析失败 | 资源格式解析失败,请联系相关人员处理 | | 18102 | 资源(与引擎)不匹配 | 资源(与引擎)不匹配,请检查资源是否用错,如果未用错,请联系相关人员处理 | | 18103 | 资源参数不存在(指针为NULL) | 资源参数不存在,请检查资源是否正确 | | 18104 | 资源路径打开失败 | 资源路径打开失败,请检查工作目录下是否存在该资源,或者该资源是否存在读写权限 | | 18105 | 资源加载失败,workDir内未找到对应资源 | 请检查workDir中是否存在此资源,或者resDir是否设置正确,或者app是否有改路径的读写权限 | | 18106 | 资源卸载失败, 卸载的资源未加载过 | 资源卸载失败, 卸载的资源未加载过 | | 18200 | 引擎鉴权失败 | 引擎鉴权失败,引擎存在问题。请联系技术支持询问 | | 18201 | 引擎动态加载失败 | 引擎动态加载失败,请联系技术支持询问 | | 18202 | 引擎未初始化 | 引擎在使用前,需要调用engineInit初始化 | | 18203 | 引擎不支持该接口调用 | 引擎不支持该接口调用,请查询对应的能力文档,使用正确的方法调用 | | 18204 | 引擎craete函数指针为空 | 引擎存在问题,请联系技术支持询问 | | 18300 | SDK不可用 | SDK存在异常,请联系技术支持询问 | | 18301 | SDK未初始化 | 在使用大模型前请先初始化 SDK,如果有调用 uninit 方法,再次使用大模型交互时需要重新初始化。 | | 18302 | SDK初始化失败 | 请根据init接口回调中返回的错误码参考此文档做对应检查 | | 18303 | SDK 已经初始化 | 重复初始化导致,使用能力时,SDK 只需要初始化一次,请检查 SDK 初始化逻辑是否存在多次初始化。 | | 18304 | 不合法参数 | 请参考demo及集成文档仔细检查所传参数是否正确。 | | 18305 | SDK会话handle为空 | 请检查代码逻辑,handle是否被释放 | | 18306 | SDK会话未找到 | SDK会话未找到 | | 18307 | SDK会话重复终止 | SDK会话重复终止,请检查代码逻辑 | | 18308 | 超时错误 | 请求超时 | | 18309 | SDK正在初始化中 | SDK正在初始化中,请检查代码逻辑 | | 18310 | SDK会话重复开启 | SDK会话重复开启,请检查代码逻辑 | | 18311 | sdk同一能力并发路数超出最大限制 | sdk同一能力并发路数超出最大限制 | | 18312 | 此实例已处在运行态,禁止单实例并发运行 | SDK同一能力单实例不支持并发 | | 18400 | 工作目录无写权限 | 在设置 workDir 时,请确保该工作路径有读写权限。若无法设置读写权限,请修改为有读写权限的工作路径。 | | 18401 | 设备指纹获取失败,设备未知 | 采集不到设备指纹 | | 18402 | 文件打开失败 | 请检查 日志中所打印的文件是否存在,以及对应路径下是否有读权限。 | | 18403 | 内存分配失败 | 请联系技术支持询问 | | 18404 | 设备指纹比较失败 | 请联系技术支持询问 | | 18500 | 未找到该参数 key | 请参照demo或集成文档仔细检查参数名拼写 | | 18501 | 参数范围溢出,不满足约束条件 | 请根据文档检查调用 SDK 方法时所传参数范围,需要确保所传参数符合协议约束要求 | | 18502 | SDK 初始化参数为空 | 请根据 SDK 集成文档检查 SDK 初始化代码,确保必填参数有值且合法 | | 18503 | SDK 初始化参数中 appId 为空 | appId 为空值,请在 SDK 初始化时传入正确的 appId 值 | | 18504 | SDK 初始化参数中 apiKey为空 | apiKey为空值,请在 SDK 初始化时传入正确的 apiKey值 | | 18505 | SDK 初始化参数中 apiSecret 为空 | apiSecret 为空值,请在 SDK 初始化时传入正确的 apapiSecret 值 | | 18506 | ability参数为空 | 请检查代码逻辑,参数是否未传入 | | 18507 | input参数为空 | 请检查代码逻辑,参数是否未传入 | | 18508 | 输入数据参数Key不存在 | 请检查代码逻辑,参数key是否不符合该引擎 | | 18509 | 必填参数缺失 | 请参考demo或者文档检查是否漏传必填参数 | | 18510 | output参数缺失 | 引擎输出参数异常,请联系技术支持询问 | | 18520 | 不支持的编解码类型 | 请检查送入的数据是否符合要求 | | 18521 | 编解码handle指针为空 | 请检查代码逻辑,handle是否被释放 | | 18522 | 编解码模块条件编译未打开 | 请联系技术支持询问 | | 18523 | 编码错误 | 请联系技术支持询问 | | 18524 | 解码错误 | 请联系技术支持询问 | | 18600 | 协议中时间戳字段缺失 | 协议文件异常,请联系技术支持询问 | | 18601 | 协议中未找到该能力ID | 调用的能力不在该SDK中,请检查SDK是否使用错误,或者调用能力id是否写错 | | 18602 | 协议中未找到该资源ID | appid没有该资源的使用权限 | | 18603 | 协议中未找到该引擎ID | 协议存在问题,请联系技术支持询问 | | 18604 | 协议中引擎个数为0 | 协议存在问题,请联系技术支持询问 | | 18605 | 协议未被初始化解析 | 协议存在问题,请联系技术支持询问 | | 18606 | 协议能力接口类型不匹配 | 协议存在问题,请联系技术支持询问 | | 18607 | 预置协议解析失败 | 协议存在问题,请联系技术支持询问 | | 18700 | 通用网络错误 | 请检查网络连接是否正常 | | 18701 | 网络不通 | 请检查网络连接是否正常 | | 18702 | 网关检查不过 | 检查设备时间是否正确; 请检查 SDK 初始化时所传 apiKey、apiScrect 是否正确; | | 18703 | 云端响应格式不对 | 请检查网络是否可以正常访问外网 | | 18704 | 应用未注册 | appid存在问题,请检查 appid 是否正确 | | 18705 | 应用 ApiKey & ApiSecret 校验失败 | 请检查 apiKey、apiSecret 是否正确 | | 18706 | 引擎不支持的平台架构 | 请检查运行的设备平台引擎是否支持 | | 18707 | 授权已过期 | 请检查授权期限 | | 18708 | 无可用授权 | 没有授权或者授权已满 | | 18709 | 未找到该app绑定的能力 | 请检查该appid是否申请该能力 | | 18710 | 未找到该app绑定的能力资源 | 该appid没有该资源的使用权限,请联系技术支持询问 | | 18711 | JSON操作失败 | 请联系技术支持询问 | | 18712 | 网络请求 404 错误 | 请检查网络是否通畅 | | 18713 | 设备指纹安全等级不匹配 | 设备指纹安全等级不符合要求 | | 18714 | 应用信息有误 | 服务端无法查询到api_key,请检查api_key和api_secret信息是否填写正确 | | 18715 | 未找到该SDK ID | SDK异常,请联系技术支持询问 | | 18716 | 未找到该组合能力集合 | 请检查使用的能力是否是该appid所申请的能力 | | 18717 | SDK授权不足 | 授权数量已满 | | 18718 | 无效授权应用签名 | 应用签名异常,请联系技术支持询问 | | 18719 | 应用签名不唯一 | 应用签名异常,请联系技术支持询问 | | 18720 | 能力schema不可用 | 请联系技术支持询问 | | 18721 | 竞争授权: 未找到能力集模板 | 请联系技术支持询问 | | 18722 | 竞争授权: 能力不在模板能力集模板中 | 请联系技术支持询问 | | 18801 | 连接建立出错 | 请检查网络是否通畅 | | 18802 | 结果等待超时 | 请检查网络是否通畅 | | 18803 | 连接状态异常 | 请检查网络是否通畅 | | 18902 | 并发超过路数限制 | 不支持并发 | | 18903 | 大模型规划步骤为空 | 请检查请求数据的意图是否明确 | | 18904 | 插件未找到 | 请检查是否使用了未存在的插件 | | 18906 | 与大模型交互次数超限制 | | | 18907 | 运行超限制时长 | | | 18908 | 大模型返回结果格式异常 | 可能是因为大模型结果太多,导致30秒内没有返回完,从而引起SDK内部认为超时,建议使用异步调用。 | | 18951 | 同一流式大模型会话,禁止并发交互请求 | | | 18952 | 输入数据为空或异常 | | | 19001 | 设备级授权: 设备被禁用 | | | 19002 | 设备级授权: 协议解析失败 | | | 19003 | 设备级授权: 本地缓存获取失败 | | | 19004 | 设备级授权: 无网络 | | | 19005 | 设备级授权: 授权未找到 | | | 19006 | 设备级授权: 设备授权获取失败 | | | 19007 | 设备级授权: 当前设备处于黑名单 | | | 19008 | 设备级授权: 当前设备不在白名单 | | | 19010 | 设备级授权: 鉴权参数非法 | | | 20011 | 设备级授权: 不匹配的appid | | ### 14.2 服务端错误码 | 错误码 | 错误信息 | | :----- | :----------------------------------------------------------- | | 0 | 成功 | | 10000 | 升级为ws出现错误 | | 10001 | 通过ws读取用户的消息出错 | | 10002 | 通过ws向用户发送消息 错 | | 10003 | 用户的消息格式有错误 | | 10004 | 用户数据的schema错误 | | 10005 | 用户参数值有错误 | | 10006 | 用户并发错误:当前用户已连接,同一用户不能多处同时连接。 | | 10007 | 用户流量受限:服务正在处理用户当前的问题,需等待处理完成后再发送新的请求。(必须要等大模型完全回复之后,才能发送下一个问题) | | 10008 | 服务容量不足,联系工作人员 | | 10009 | 和引擎建立连接失败 | | 10010 | 接收引擎数据的错误 | | 10011 | 发送数据给引擎的错误 | | 10012 | 引擎内部错误 | | 10013 | 输入内容审核不通过,涉嫌违规,请重新调整输入内容 | | 10014 | 输出内容涉及敏感信息,审核不通过,后续结果无法展示给用户 | | 10015 | appid在黑名单中 | | 10016 | appid授权类的错误。比如:未开通此功能,未开通对应版本,token不足,并发超过授权 等等 | | 10017 | 清除历史失败 | | 10019 | 表示本次会话内容有涉及违规信息的倾向;建议开发者收到此错误码后给用户一个输入涉及违规的提示 | | 10021 | 输入审核不通过 | | 10022 | 模型生产的图片涉及敏感信息,审核不通过 | | 10110 | 服务忙,请稍后再试 | | 10163 | 请求引擎的参数异常 引擎的schema 检查不通过 | | 10222 | 引擎网络异常 | | 10907 | token数量超过上限。对话历史+问题的字数太多,需要精简输入 | | 11200 | 授权错误:该appId没有相关功能的授权 或者 业务量超过限制 | | 11201 | 授权错误:日流控超限。超过当日最大访问量的限制 | | 11202 | 授权错误:秒级流控超限。秒级并发超过授权路数限制 | | 11203 | 授权错误:并发流控超限。并发路数超过授权路数限制 |
feiyang5
2024年5月6日 18:42
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码