特殊接口 - 智能体与对话

查智能体对话/反馈/文件接口、钉钉/微信/企业微信机器人接入回调、LLM 网关 OpenAI 兼容接口(models/embeddings/completions/chat)时

06-二次开发 / API参考
aitalk智能体chat对话message_feedbackfiledingtalk钉钉wechat微信公众号jsapiwework企业微信llmLLM网关OpenAI兼容

智能体与对话特殊接口

涵盖智能体对话(/aitalk_modelview/api)、钉钉(/dingtalk)、微信公众号(/wechat)、企业微信(/wework)、LLM 网关(/llm/api)。

智能体对话 /aitalk_modelview

代码文件:myapp/views/view_chat.pyroute_base = '/aitalk_modelview/api'

对话智能体

POST/GET  /aitalk_modelview/api/chat/<chat_name>
参数 位置 类型 说明
chat_name path string 智能体名称
session_id body string 会话 ID
search_text body string 用户输入文本
username body string 用户名(可选)
enable_asr body bool 启用语音识别
enable_tts body bool 启用语音合成

响应(流式/数组):

{
  "status": 0,
  "result": [
    {"text": "回复内容", "audio": "base64_audio", "image": "image_url"}
  ],
  "finish": true
}

说明: 支持流式返回 LLM 响应、知识库召回、文件上传、多模态输入。

可用模型查询

POST/GET  /aitalk_modelview/api/models/<chat_name>
参数 位置 类型 说明
chat_name path string 智能体名称
llm_url body string 可选,自定义 LLM 服务地址
llm_token body string 可选,自定义 LLM Token

响应:

{
  "status": 0,
  "result": {
    "data": [{"id": "model-name", "owned_by": "org", "max_model_len": 4096}],
    "value": "默认模型名"
  }
}

对话反馈

POST  /aitalk_modelview/api/message_feedback/<chat_name>
参数 位置 类型 说明
chat_name path string 智能体名称
session_id body string 会话 ID
message_id body string 消息 ID
feedback_type body string 反馈类型
feedback_tag body string 反馈标签
feedback_description body string 反馈描述

响应:

{"status": 0, "message": "success"}

对话文件上传/下载

POST  /aitalk_modelview/api/file/<chat_name>/<file_name>    # 上传
GET   /aitalk_modelview/api/file/<chat_name>/<file_name>    # 下载/预览
参数 位置 类型 说明
chat_name path string 智能体名称
file_name path string 文件名

GET 响应: HTML(CSV → 表格,MD → 渲染 HTML,DOCX/PDF → 文档预览)


钉钉机器人 /dingtalk

代码文件:myapp/views/view_chat_dingtalk.pyroute_base = '/dingtalk'

钉钉机器人对话入口

GET/POST  /dingtalk/chatgpt/<chat_name>
参数 位置 类型 说明
chat_name path string 智能体名称
timestamp header string 时间戳
sign header string HMAC-SHA256 签名

请求体: 钉钉 Webhook 消息 JSON

响应: 空(异步处理后通过钉钉 API 回复)

说明: 先验证 HMAC-SHA256 签名,再调用 Chat 基类处理对话,异步发送回复。


微信公众号 /wechat

代码文件:myapp/views/view_chat_wechat.pyroute_base = '/wechat'

微信公众号 Token 验证

GET/POST  /wechat/token
参数 位置 类型 说明
signature query string 微信签名
timestamp query string 时间戳
nonce query string 随机数
echostr query string 验证回显字符串

响应: 返回 echostr(验证通过)或空字符串

微信 JSAPI 签名

GET/POST  /wechat/jsapi
参数 位置 类型 说明
url query/body string 当前页面 URL

响应:

{
  "code": 0,
  "message": "success",
  "data": {
    "nonceStr": "xxx",
    "timestamp": "xxx",
    "signature": "xxx",
    "appId": "xxx",
    "jsapi_ticket": "xxx"
  }
}

微信公众号对话入口

GET/POST  /wechat/chatgpt/<chat_name>
参数 位置 类型 说明
chat_name path string 智能体名称

请求体: 微信加密 XML 消息

响应: XML 格式消息(支持 text / image / voice / video)

备注:该视图还注册了 /wechat/MP_verify_xxx.txt 静态校验文件路由(公众号域名校验用),此处略。


企业微信 /wework

代码文件:myapp/views/view_chat_wework.pyroute_base = '/wework'

企业微信对话入口

GET/POST  /wework/chatgpt/<chat_name>
参数 位置 类型 说明
chat_name path string 智能体名称
msg_signature query string 消息签名
timestamp query string 时间戳
nonce query string 随机数
echostr query string 验证回显(GET 时)

GET 响应: 返回解密后的 echostr(URL 验证)

POST 请求体: WXBizMsgCrypt 加密 XML 消息

POST 响应: 加密 XML 消息(Markdown 格式回复)


LLM网关 /llm/api

代码文件:myapp/views/view_llm_ingress.pyroute_base = '/llm/api'

大模型列表

GET/POST  /llm/api/<ingress_id>/v1/models
GET/POST  /llm/api/<ingress_id>/v1/models/<model>
参数 位置 类型 说明
ingress_id path int 网关 ID
model path string 可选,指定模型名

响应(OpenAI 兼容格式):

{
  "object": "list",
  "data": [
    {"id": "model-name", "object": "model", "created": 1700000000, "owned_by": "org"}
  ]
}

大模型向量化

POST  /llm/api/<ingress_id>/v1/embeddings
参数 位置 类型 说明
ingress_id path int 网关 ID
model body string 模型名
input body string/array 输入文本

响应: OpenAI embeddings 格式

说明: 代理请求到 InferenceService,包含认证/配额/限流检查。

大模型补全

POST  /llm/api/<ingress_id>/v1/completions
参数 位置 类型 说明
ingress_id path int 网关 ID
model body string 模型名
prompt body string 输入提示

响应: OpenAI completion 格式(支持流式)

大模型对话

POST  /llm/api/<ingress_id>/v1/chat/completions
参数 位置 类型 说明
ingress_id path int 网关 ID
model body string 模型名
messages body array 对话消息列表
stream body bool 是否流式返回

响应: OpenAI chat completion 格式(stream=true 时 chunked 返回)

说明: 代理请求到 InferenceService,包含认证验证、搜索插件、安全检查、重试逻辑。

网关测试弹窗

GET/POST  /llm/api/test/<ingress_id>

响应: JSON,网关测试弹窗配置

网关指标监控弹窗

GET  /llm/api/monitoring/<ingress_id>

响应: JSON,监控指标数据

最后更新 2026-06-30完整文档以官方仓库为准:GitHub Wiki