正在加载 SciChat
正在准备页面内容…
正在准备页面内容…
「工件(Artifact)」是 SciChat 工具执行后的结构化、可视化输出。每当一个工具运行成功,它的结果不会被压成一段纯文字,而是封装为一个工件,由前端渲染成可交互的卡片。
普通聊天机器人只能用文字描述结果,工件则让结果可视、可交互、可核对、可导出:
| 纯文本回答 | 工件输出 |
|---|---|
| 「苯的分子式是 C₆H₆,苯环由 6 个碳和 6 个氢组成……」 | 一个经校验的 分子结构卡片 |
| 「sin 与 cos 在 0 到 2π 上的图像如下……」 | 一张可悬停读数、可缩放的函数图 |
| 「这段代码的运行结果是……」 | 真正跑过的 Python 输出 + 图表 |
每个工件都来自一个具体工具(见 [工具体系](/docs/tools)),二者一一对应:工具负责「算」,工件负责「展示」。
后端共有 13 种工件类型,与 13 个工具对应:
| 工件 kind | 来源工具 | 说明 |
|---|---|---|
molecule | molecule | 经校验的分子结构、候选或澄清卡 |
graph | graph | 可缩放函数 / 坐标图 |
svg_diagram | svg_diagram | 安全的科学 SVG 示意图 |
html_visual | html_visual | (新) 交互式教学 HTML 演示 |
image | image_generation | AI 生成的插图 / 示意图 |
search_evidence | search | 带引用、经校验的搜索证据 |
similar_questions | similar | 3 道梯度变式练习题 |
code | code | 可复制运行的代码片段 |
python_result | python_exec | 沙箱 Python 执行结果 |
deep_report | deep_report | 多节结构化研究报告 |
file_evidence | file_read | 从 PDF / Word / 文本抽取的证据块 |
ocr_evidence | ocr_evidence | 图片 OCR 文字证据 |
image_observation | image_analysis | 对图片的结构化视觉观察 |
[!TIP] 不必记住这些英文 kind 名——它们是后端标识。你在界面上看到的是渲染后的卡片。这里列出只是帮助你理解「一个回答里出现的每张卡片」分别从哪个工具来。
molecule分子结构卡片以 Tool 产出的 molecule Artifact 为准。成功结构会带 sci-molecule 预览,主聊天中以紧凑卡片展示,Canvas 中以完整视图展开;如果结构无法唯一确认,则展示候选或澄清建议,而不是把原始 JSON 或猜测结构当成结果。
结构解析会优先使用本地规则、显式 SMILES 和化学校验,再使用 PubChem / OPSIN 等外部解析兜底;AI 只负责补全候选,输出仍必须通过校验。Canvas 中可以继续对 SVG / 图表 / 分子进行优化,分子的楔形式、费歇尔投影等特殊表达会通过 Canvas 的分子表达优化能力处理。
graph可缩放函数图:悬停读坐标、拖拽缩放视图、图例区分多曲线、自动标注零点/极值等关键点,支持中文曲线名。
svg_diagram内嵌矢量示意图,用于受力分析、电路、光路、实验装置、几何图形。SVG 经过严格清理(禁 <script>、<foreignObject>、外链 href 等),杜绝注入风险。
html_visual / sci-html 面板(新)v0.1.0 新增的工件类型,呈现一份自包含、可交互的教学演示:滑块、拖拽、动画、分步推进,让抽象概念变得可操作(抛体运动、函数变换、排序算法、概率模拟等)。
python_result完整展示沙箱运行情况:高亮的源代码、stdout 文字输出、matplotlib 图表(直接渲染)、错误信息,以及执行状态标签(成功 / 失败 / 超时)。
code带语法高亮、一键复制的代码块,覆盖 Python、JS/TS、C/C++、Java、HTML、CSS、SQL、Bash、JSON、YAML 等主流语言。
deep_report多节长篇报告(最多约 8 节),含来源附录与字数/节数/来源数等元信息。
similar_questions三道难度梯度(简单 / 中等 / 困难)的变式练习,每题带学科与难度标签。
search_evidence、file_evidence、ocr_evidence、image_observation 都属于「证据/观察」卡片,便于你核对来源:
| 工件 | 内容 |
|---|---|
| 搜索证据 | 搜索结果摘要 + 可点击来源链接 |
| 文件证据 | PDF / Word / 文本抽取的引用块 |
| OCR 证据 | 图片识别出的文字块 |
| 图片观察 | 对图片的结构化视觉描述 |
imageAI 生成的插图 / 示意图,含 alt 文本描述。在 Canvas 中,图片工件支持拖拽平移、滚轮缩放、弹窗放大和下载,方便检查大图细节。
在 [Canvas 工作台](/docs/canvas) 里,成功工件会从消息中拆出来,每个工件独占一个标签页。对于 SVG 示意图、函数图、分子结构,还可以直接在工件底部输入优化指令,例如「箭头改红色」「再加一条参考曲线」「换成楔形式」。优化结果会本地覆盖并即时重渲染,也可以一键还原 AI 原始结果。分子结构在 Canvas 中使用完整视图;主聊天则保留紧凑预览,方便继续对话。
每个工件都带一个状态,让你一眼看出它是否可信:
| 状态 | 含义 |
|---|---|
done | 成功完成,结果可用 |
failed | 执行失败(超时 / 出错),不会伪装成功 |
partial | 部分完成,结果不完整 |
skipped | 规划后被跳过(条件不满足或被禁用) |
[!WARNING] 工具失败时,工件会显示 failed 并说明原因(如「Python 执行超时」),通常还会附上原始输入,方便你复制到本地自行运行。SciChat 绝不会把失败的工具粉饰成成功工件。
多数工件支持导出,常见格式包括:
csv · json · txt · svg · md · image
例如:搜索/文件证据可导出来源列表(CSV/JSON),SVG 示意图可导出 svg,报告可导出 md,生成图片可保存为 image,交互式 HTML 可下载为自包含 .html。
sci-* 渲染器[!IMPORTANT] SciChat 从不直接渲染模型生成的任意原始 HTML。所有工件只通过一组*白名单 `sci-渲染器**呈现(如sci-molecule、sci-graph、sci-svg、sci-code、sci-html` 等),每种渲染器只接受受约束的结构化数据。
这道防线意味着:即使模型输出了危险内容,也无法变成可执行脚本注入页面。唯一的例外是交互式教学 HTML(html_visual / sci-html),它确实需要运行 HTML,因此被放进无网络的严格沙箱 iframe——隔离在 opaque origin、严格 CSP 之下,既能交互又被牢牢限制在沙箱内。
除了独立卡片,AI 回答的文字里还会用到行内语义标签(如 KaTeX 公式、术语高亮、提示框等),它们同样只走受控渲染,不会执行任意 HTML。
下一步:[Canvas 工作台 →](/docs/canvas)