Wbot-4:347B已上线,相较于原版Wbot-4,该版本可免费调用 API
API调用:https://api.223387.xyz/
如何体验Wbot-4-Preview-low?答:前往https://api.223387.xyz/体验!
对话型应用 API
对话应用支持会话持久化,可将之前的聊天记录作为上下进行回答,可适用于聊天/客服 AI 等。基础 URL
鉴权
Service API 使用API-Key 进行鉴权。 强烈建议开发者把 API-Key 放在后端存储,而非分享或者放在客户端存储,以免 API-Key 泄露,导致财产损失。 所有 API 请求都应在 Authorization HTTP Header 中包含您的 API-Key,如下所示:
POST
发送对话消息
创建会话消息。Request Body
-
Name
queryTypestringDescription 用户输入/提问内容。 -
Name
inputsTypeobjectDescription (选填)允许传入 App 定义的各变量值。 inputs 参数包含了多组键值对(Key/Value pairs),每组的键对应一个特定变量,每组的值则是该变量的具体值。 -
Name
response_modeTypestringDescriptionstreaming流式模式(推荐)。基于 SSE(Server-Sent Events)实现类似打字机输出方式的流式返回。
-
Name
userTypestringDescription 用户标识,用于定义终端用户的身份,方便检索、统计。 由开发者定义规则,需保证用户标识在应用内唯一。 -
Name
conversation_idTypestringDescription (选填)会话 ID,需要基于之前的聊天记录继续对话,必须传之前消息的 conversation_id。 -
Name
auto_generate_nameTypeboolDescription (选填)自动生成标题,默认false。 可通过调用会话重命名接口并设置auto_generate为true实现异步生成标题。
Response
- 当
response_mode为streaming时,返回 ChunkChatCompletionResponse object 流式序列。 -
ChunkChatCompletionResponse
- 返回 App 输出的流式块,
Content-Type为text/event-stream。 每个流式块均为 data: 开头,块之间以 \n\n 即两个换行符分隔,如下所示: -
event: messageLLM 返回文本块事件,即:完整的文本以分块的方式输出。task_id(string) 任务 ID,用于请求跟踪和下方的停止响应接口message_id(string) 消息唯一 IDconversation_id(string) 会话 IDanswer(string) LLM 返回文本块内容created_at(int) 创建时间戳,如:1705395332
event: agent_messageAgent模式下返回文本块事件,即:在Agent模式下,文章的文本以分块的方式输出(仅Agent模式下使用)task_id(string) 任务 ID,用于请求跟踪和下方的停止响应接口message_id(string) 消息唯一 IDconversation_id(string) 会话 IDanswer(string) LLM 返回文本块内容created_at(int) 创建时间戳,如:1705395332
event: agent_thoughtAgent模式下有关Agent思考步骤的相关内容,涉及到工具调用(仅Agent模式下使用)id(string) agent_thought ID,每一轮Agent迭代都会有一个唯一的idtask_id(string) 任务ID,用于请求跟踪下方的停止响应接口message_id(string) 消息唯一IDposition(int) agent_thought在消息中的位置,如第一轮迭代position为1thought(string) agent的思考内容observation(string) 工具调用的返回结果tool(string) 使用的工具列表,以 ; 分割多个工具tool_input(string) 工具的输入,JSON格式的字符串(object)。如:{"dalle3": {"prompt": "a cute cat"}}created_at(int) 创建时间戳,如:1705395332message_files(array[string]) 当前agent_thought关联的文件IDfile_id(string) 文件ID
conversation_id(string) 会话ID
event: message_file文件事件,表示有新文件需要展示id(string) 文件唯一IDtype(string) 文件类型,目前仅为imagebelongs_to(string) 文件归属,user或assistant,该接口返回仅为assistanturl(string) 文件访问地址conversation_id(string) 会话ID
event: message_end消息结束事件,收到此事件则代表流式返回结束。task_id(string) 任务 ID,用于请求跟踪和下方的停止响应接口message_id(string) 消息唯一 IDconversation_id(string) 会话 IDmetadata(object) 元数据usage(Usage) 模型用量信息retriever_resources(array[RetrieverResource]) 引用和归属分段列表
event: message_replace消息内容替换事件。 开启内容审查和审查输出内容时,若命中了审查条件,则会通过此事件替换消息内容为预设回复。task_id(string) 任务 ID,用于请求跟踪和下方的停止响应接口message_id(string) 消息唯一 IDconversation_id(string) 会话 IDanswer(string) 替换内容(直接替换 LLM 所有回复文本)created_at(int) 创建时间戳,如:1705395332
event: error流式输出过程中出现的异常会以 stream event 形式输出,收到异常事件后即结束。task_id(string) 任务 ID,用于请求跟踪和下方的停止响应接口message_id(string) 消息唯一 IDstatus(int) HTTP 状态码code(string) 错误码message(string) 错误消息
event: ping每 10s 一次的 ping 事件,保持连接存活。
Errors
- 404,对话不存在
- 400,
invalid_param,传入参数异常 - 400,
app_unavailable,App 配置不可用 - 400,
provider_not_initialize,无可用模型凭据配置 - 400,
provider_quota_exceeded,模型调用额度不足 - 400,
model_currently_not_support,当前模型不可用 - 400,
completion_request_error,文本生成失败 - 500,服务内部异常