Skip to content

1.4 应用对话(App Chat)

这一章面向最终对话用户 — 用浏览器打开一个 Web 应用的分享链接,跟 AI 对话。不需要 Sira 账户,只需要持有分享 token 的 URL。

典型 URL:https://<sira-host>/app-chat/<share_token>


1.4.1 进入对话页

应用管理员发给你的 URL 长这样:

https://example.com/app-chat/abc123def456

其中 abc123def456 是应用的 share_token,在 应用管理 中创建 Web 类型应用时自动生成。

打开后流程:

  1. 页面显示加载指示器
  2. 系统校验 token 有效性 → 调用 /api/agent-system/applications/verify-token/{token}
  3. 校验成功 → 显示应用专属标题、欢迎语,进入对话界面
  4. 校验失败 → 显示「应用不存在或已停用」提示

1.4.2 对话界面

截图:应用对话界面

区块说明

  • 顶部:应用标题(管理员配置的 display_name)、欢迎语
  • 中间:消息流(从下往上滚动)
    • 用户消息:右对齐,蓝色气泡
    • AI 消息:左对齐,白色气泡,支持流式逐字显示
    • 思考指示器:AI 处理中显示"思考中..."动画
  • 底部输入区:
    • 多行输入框(Shift+Enter 换行,Enter 发送)
    • 「📎 上传文件」按钮(支持图片、PDF、Office 文档等)
    • 「发送」按钮(蓝色,内容为空时禁用)

隐私设计

公开分享场景下,不会显示:

  • 历史会话列表(避免不同访客看到彼此的对话)
  • 「新建会话」按钮
  • AI 工具调用细节
  • SubAgent 调用展开

每次刷新页面都是一个独立 session。如果你想保留某次对话,自己复制保存。


1.4.3 常用操作

发送消息

  1. 在输入框输入问题
  2. 按 Enter 或点「发送」
  3. AI 流式回复

上传文件

  1. 点「📎」按钮 → 弹出文件选择器
  2. 选择文件 → 显示文件名缩略
  3. 输入相关问题(如「这份合同有什么风险?」)
  4. 发送 → AI 会读取文件内容后回答

⚠️ 文件大小、类型由应用管理员在后端配置。常见限制:单文件 ≤ 20MB,支持 jpg/png/pdf/docx/xlsx/pptx/txt/md。

多轮对话

同一次浏览会话中,AI 会记住上下文(由 LangGraph 检查点机制保存)。例如:

你:推荐一款轻薄笔记本
AI:推荐 X、Y、Z 三款...
你:第二款的电池怎么样?  ← AI 知道你说的是 Y

中断 AI 回复

如果 AI 正在长篇生成,你想停下来:点击发送按钮位置(回复期间会变成"停止"图标),立刻中断。

刷新页面

刷新会结束当前会话,下一条消息会开启全新对话。


1.4.4 高级用法(如已启用)

不同应用可能开启不同高级特性,具体以管理员配置为准:

引用与来源

如果应用绑定了知识库,AI 回答末尾会显示📎 来源标签:

  • 点击展开:显示引用片段、文件名、相似度
  • 帮助你验证 AI 没有"编造"

思考过程展示

如果应用启用了"显示思考"(默认关闭),AI 回复前会先展示推理步骤:

  • 💭 思考:"用户在问 X,我需要查阅 Y"
  • 🔧 工具调用:"调用知识库检索..."
  • 📊 结果:"找到 3 篇相关文档"

工作流进度

如果背后是 Workflow / Dify 编排器,会显示进度卡片:

  • 🔄 正在执行节点 1/3:意图识别
  • ✅ 完成
  • 🔄 正在执行节点 2/3:数据查询
  • ...

1.4.5 让 AI 把文件发给你(MEDIA 标签)

当你让 AI 生成并发回一个文件(报表、PDF、图片等),AI 需要在回复里输出一个 MEDIA: 标签,平台才会把文件真正推送给你。标签本身不会显示在对话里——它会被替换成实际的文件。

  • 能发文件的前提:背后的编排器要带"沙箱 / 文件系统"(DeepAgents,或配了技能包的 Single 编排器),AI 才有地方生成并读取文件。
  • AI 偶尔会"嘴上说发了、其实没发":它回复"文件已生成 / 已发送"但你没收到文件——这是因为它忘了输出标签。直接提醒它即可:

💡 引导话术:发一句 "请用 MEDIA 标签把文件发给我",或 "把结果保存成 Excel 后用 MEDIA 标签发我"

  • 一条回复最多带一个文件;单文件默认上限 30MB
  • 各渠道支持的类型:文档(pdf / docx / xlsx / pptx / txt / md)、图片(jpg / png / webp / gif);飞书 / 企微 还支持视频(mp4)与音频(语音)。

完整语法与各渠道差异见 渠道接入 → AI 发送文件(MEDIA 标签)


1.4.6 渠道对话里的命令(仅企微 / 飞书 / 钉钉)

⚠️ 斜杠命令只在渠道对话(企业微信 / 飞书 / 钉钉)里生效;公开 Web 分享页(本章上面讲的 App Chat)不支持。

在企微 / 飞书 / 钉钉里跟机器人对话时,发送以 / 开头的消息会被当成命令处理(不消耗 AI 调用):

命令作用
/help列出所有可用命令
/clear查看当前会话信息,并提示二次确认(不实际删除)
/clear confirm真正清除当前会话的 AI 记忆(让 AI"忘掉"之前的上下文,确认有效期 5 分钟)
/whoami显示你的 用户 / 应用 / 会话 ID(找客服排查问题时用)
/wxbind / /wxunbind / /wxstatus微信个人号 绑定 / 解绑 / 查询状态(实验性)
  • 命令必须以 / 开头;不认识/xxx 会原样发给 AI。
  • /clear 只清 当前应用里你自己 的对话,不影响你在别的应用的上下文。
  • /help 可随时查看完整命令列表(会自动收录新命令)。

1.4.7 常见问题

Q1:页面显示"应用不存在或已停用"?

按可能性排序:

  1. URL 中 token 输错了 → 重新向分享你链接的人要
  2. 应用被管理员停用 → 联系应用负责人
  3. 应用被删除 → 同上

Q2:每次刷新对话都丢了,能保留吗?

公开分享场景下不保留(隐私设计)。如果你需要持久会话:

  • 让管理员把应用从 Web 类型改为 API Service 类型,你用带 session_id 的 API 调用即可
  • 或者让管理员开通正式 Sira 账户,登录后用平台内置的对话界面(支持会话列表)

Q3:能在企业微信里直接对话吗?

可以。这需要管理员把这个智能体/编排器额外发布为企业微信应用:在 Sira 里创建一个 wework_aibotwecom 类型的应用,绑定同一个编排器即可。

Q4:对话内容会被存档/审计吗?

会。所有对话都会被记录到后端日志,管理员可以在 审计 中查看。Token 使用量会进入 用量统计不要在公开分享应用里输入敏感信息(密码、身份证号等)。

Apache-2.0 Licensed