diff --git a/PROGRESS.md b/PROGRESS.md index 3d42dc8..af62c35 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -21,6 +21,11 @@ ## 已完成关键能力 +### 2026-06-17 / 用户操作说明书(详 + 精简两版)+ 文献库库容 21W→100W 全量更新 + +- 新增 `docs/操作说明书.md`(详版)+ `docs/操作说明书-精简版.md`:面向科研用户、不出现产品代号、从登录后正式操作讲起。覆盖三栏布局、**个人文件夹 → 工作目录 → 任务**三层概念(任务≠文件夹、多任务可共享一个工作目录)、新建任务、对话、技能矩阵(含 paper)、文件管理、进阶(方案确认卡/消息目录/记忆)、任务管理、图像视频、账户存储、FAQ;截图留占位标注。突出对外优势(内部文献库、科研计算、可直接产出文件)。 +- 文献库库容口径 **21W+ → 100W+** 全量改一遍:`SKILL_LIST.md`、`skills/documents/SKILL.md`(含 description,模型运行时据此向用户描述库容)、`skills/patent/SKILL.md`、`PROGRESS.md`、`scripts/optimize_arch_ppt.py`、两份说明书,共 10 处。bump 0.16.1 → 0.16.2。 + ### 2026-06-17 / paper skill:学术期刊论文写作 - 需求:现有 skill(proposal 写本子 / review 改稿 / research 查文献 / plot_pub 出图)缺"从零起草期刊投稿稿"这一环。联网调研开源论文 skill(ARS 32.1k★ / paper-writer-skill / claude-scientific-writer 1.9k★)——结论:不直接装(ARS 是 CC-BY-NC 非商用、全偏英文/医学/CS、引文默认 APA、依赖外部 API),但流程值得移植。 @@ -308,7 +313,7 @@ - **imagegen skill 加 ⛔ 调 tool 前必须贴 prompt + BLOCKING 等确认**:把模型脑内装配摊到对话层让用户最后过一眼防白烧 ¥0.22;诊断五维→六维加比例/尺寸。 - **新增 imagegen skill**:单文件五步法(诊断模糊度→给推断+待确认→拍板→装配 prompt→调 seedream);mermaid vs seedream 选型三段式。 - **登录页加「管理员添加用户」入口 + 删 chat meta 条/tok 显示**:`create_user`(CLI/web 共用)+ `POST /v1/auth/admin/create_user` 校验 `ZCBOT_ADMIN_TOKEN`。否决 User 表加 is_admin 列。 -- **新增 documents skill(内部材料学科知识库 document_search API)**:四函数 Bearer 认证,search 返整篇 Markdown,反模式约束只 print 前 300 字防爆上下文;库=7 材料学科英文论文 21W+ 文件 + 跨语言语义检索;与 research(OpenAlex)互补。 +- **新增 documents skill(内部材料学科知识库 document_search API)**:四函数 Bearer 认证,search 返整篇 Markdown,反模式约束只 print 前 300 字防爆上下文;库=7 材料学科英文论文 100W+ 文件 + 跨语言语义检索;与 research(OpenAlex)互补。 - **dev SPA SSE 客户端重连**:`fetchSse` 拆 consume + 重连壳(1/2/4s 退避 ×3);后端 `stream_events` 入口检 run_status 非 running 立即吐 done 关流。 - **research skill fetch_pdf 改走静态直链 + list 端点加直链 + pg_trgm GIN 索引**:绕开 paper_pdf_view 路径 bug;`?search` 30s→几十 ms;SKILL 加「XML 优先 PDF」。 - **顶栏 token 累计修(`sync_task_tokens` 改走 messages SUM)**:切 streaming 后内存计数器永不更新,改现算 + backfill。 diff --git a/SKILL_LIST.md b/SKILL_LIST.md index b8b9b30..cfd515e 100644 --- a/SKILL_LIST.md +++ b/SKILL_LIST.md @@ -22,7 +22,7 @@ zcbot 的"skill"是一份可加载的工作流脚本(`skills//SKILL.md` + | 演示出图 | [ppt](#ppt) | 生成 PowerPoint 演示稿(商务红主题,大纲对齐后一脚本整建) | | 演示出图 | [plot_pub](#plot_pub) | 出版级 matplotlib 学术图(中文 + viridis + 矢量 + 投稿级复合图设计纪律) | | 文献检索 | [research](#research) | 查 paper_server(OpenAlex 元数据 + Sci-Hub 下载) | -| 文献检索 | [documents](#documents) | 查内部 7 学科材料知识库(21W+ 论文,跨语言检索;host-side tool 持 key) | +| 文献检索 | [documents](#documents) | 查内部 7 学科材料知识库(100W+ 论文,跨语言检索;host-side tool 持 key) | | 科研计算 | [pymatgen](#pymatgen) | 晶体结构 / XRD 模拟 / 相图 / Materials Project(host-side tool 持 key) | | 科研计算 | [stats_ml](#stats_ml) | 配方-性能建模与机器学习(三库分工) | | 内容生成 | [imagegen](#imagegen) | 豆包 Seedream 5.0 文生图 + 改图 i2i(¥0.22 / 张) | @@ -262,7 +262,7 @@ paper_server 是内部 Django 文献库:元数据来自 OpenAlex,PDF / XML 由 S ### documents **查内部材料学科知识库(document_search API)。** -部署在 `https://ai.ctc-zc.com:8100/api`。后端按 `kb_name` 分库存 7 个材料学科,共 **21W+ 英文学术论文**(Elsevier 期刊为主,DOI 前缀文件名)。每个文档带 `md_content`(整篇 Markdown,LLM 友好)+ 可选原 PDF 下载。 +部署在 `https://ai.ctc-zc.com:8100/api`。后端按 `kb_name` 分库存 7 个材料学科,共 **100W+ 英文学术论文**(Elsevier 期刊为主,DOI 前缀文件名)。每个文档带 `md_content`(整篇 Markdown,LLM 友好)+ 可选原 PDF 下载。 **7 大学科库**(`classification_id` 1-7): | 学科 | 内容 | diff --git a/core/__init__.py b/core/__init__.py index aeaf282..dbd17b8 100644 --- a/core/__init__.py +++ b/core/__init__.py @@ -1,3 +1,3 @@ # zcbot 版本号单一事实源:web/app.py 的 FastAPI version、/healthz 返回、前端展示都引这里。 # 改版本只动这一行。 -__version__ = "0.16.1" +__version__ = "0.16.2" diff --git a/docs/assets/image-1781662287932-1.png b/docs/assets/image-1781662287932-1.png new file mode 100644 index 0000000..68a20d1 Binary files /dev/null and b/docs/assets/image-1781662287932-1.png differ diff --git a/docs/操作说明书-精简版.md b/docs/操作说明书-精简版.md new file mode 100644 index 0000000..967dc1b --- /dev/null +++ b/docs/操作说明书-精简版.md @@ -0,0 +1,107 @@ +# 科研智能助手 · 操作说明书(精简版) + +> 适用:无机非金属材料(水泥 / 混凝土 / 玻璃 / 陶瓷 / 耐火 / 新型建材)科研人员。从**登录后**讲起。 + +--- + +## 1. 它能帮你做什么 + +一句话:**把模糊的科研需求,变成可交付的成果文件。** 它不只是聊天,能查库、跑算、出图、写文档,并产出可下载的 `.docx` / `.pptx` / 图 / 数据。 + +相较通用聊天工具的**关键优势**: + +- **接入内部材料文献库**——100 万+ 篇材料论文(7 大学科),**中文提问命中英文文献**,全文可读,免你 OCR 翻库;另接 OpenAlex 元数据库补 DOI / 拉 PDF。 +- **科研写作全覆盖**——论文投稿稿、6 类基金申报书、国/行/团标、专利交底书、审稿润色,规范成稿、文献真实。 +- **科研计算**——XRD 模拟 / 相图、配方-性能建模、出版级学术图(中文 + 矢量)。 +- **真实执行**——在安全沙箱里实跑 Python、出图、转档,结果是算出来的;并有**跨任务长期记忆**。 + +--- + +## 2. 界面:三栏 + +``` +左:任务列表 中:对话区 右:文件区 ++ 新建任务 与助手一问一答 当前工作目录的文件 +搜索 / 筛选 实时显示进度 上传 / 预览 / 下载 +技能 / 记忆 底部输入框 +``` + +![](assets/image-1781662287932-1.png) + +> 手机端顶部有「任务 / 对话 / 文件」标签切换;分隔线可拖宽,`‹` `›` 可折叠两侧栏。 + +**三个概念(务必理清):个人文件夹 → 工作目录 → 任务** + +| 概念 | 是什么 | +|---|---| +| **个人文件夹(「我的」)** | 你的私有根空间,别人看不到;右栏文件区顶层即「我的」。 | +| **工作目录** | 一个项目 / 课题的文件夹,存该项目的素材与成果;右栏展示的就是它。**可被多个任务共享**。 | +| **任务** | 一次对话会话,新建时绑定到某个工作目录。 | + +**任务 ≠ 文件夹**:默认一个任务跟随任务名建一个同名目录(一对一);也可让多个任务挂**同一个工作目录**共享文件(如写一份本子,「立项依据 / 技术路线 / 经费」几个任务共用「XX 基金」目录,文件互通、对话各自独立)。 +> 类比:个人文件夹是家,工作目录是项目抽屉,任务是围绕抽屉的一次次对话。 + +--- + +## 3. 上手三步 + +1. **新建任务**:点左栏 `+ 新建任务` → 填任务名(其余默认即可)→ `创建`。 + - 可选「智能体类型」预设专长,不选则助手按你的话自动判断。 +2. **说需求**:在中栏底部输入框打字,**Enter 发送 / Shift+Enter 换行**。需求越具体越好(说清对象、目标、要什么产物)。 + - 例:「按国自然面上,写低碳水泥熟料的立项依据」「这组掺量-28天强度数据,建回归模型并出图」。 +3. **取文件**:助手产出的文件出现在右栏,点开预览,右上角 `下载`。 + +> 助手会分步执行(查资料 → 起草 → 出图),中栏实时显示进度;若提示「回复『继续』可续跑」,回个「继续」即可。 + +--- + +## 4. 能力一览(技能) + +新建任务时可指定「智能体类型」,或直接在对话里说需求由助手自动挂载。点左栏底部 **`技能`** 可看完整说明。 + +| 类别 | 能力 | 产物 | +|---|---|---| +| 科研写作 | 学术论文(中文核心/英文 SCI,含**引文三角核验**)、基金申报书(6 类)、标准起草(国/行/团标 + 编制说明)、专利交底书、审稿润色 | `.docx` | +| 演示出图 | PPT 演示稿、出版级学术图(XRD / TG-DSC / 应力应变,矢量) | `.pptx` / 高清图 | +| 文献检索 | 内部材料库(中文命中英文,**找材料文献优先**)、OpenAlex 元数据库(要 DOI 走它) | 文献清单 / PDF | +| 科研计算 | 晶体·物相(XRD/相图,含中英相名映射)、配方-性能建模与机器学习 | 数据 / 图 / 结论 | +| 内容生成 | 文生图 / 改图、文生视频 | 图 / 视频 | +| 通用 | 问题拆解(模糊命题 → 子问题 + 路线图)、代码调试 | — | + +> **写论文 vs 写本子 vs 审稿**:把数据写成投稿稿用「学术论文」;写基金本子用「申报书」;只改已有稿用「审稿」。 +> +> 任务常串多个技能(如**写论文全流程**:查文献 → 建模出数据 → 出图 → 起草 → 引文核验 → 终审),把目标说清即可,助手自动调度。每次都要重复交代的一套做法,可让助手**固化成你的私有技能**。 + +--- + +## 5. 文件操作 + +- **上传**:点右栏 `⬆`、或直接拖文件进右栏、或在输入框 **Ctrl+V 粘贴**图片(随消息发给助手)。 +- **选入**:点 `⊕` 从其他目录勾选文件,复制 / 移动到当前目录复用。 +- **预览**:点文件即在线看——图片可 Ctrl+滚轮缩放,Word/PDF/PPT/文本/表格直接渲染,无需下载。 +- **下载**:预览弹窗右上角 `下载`。 + +--- + +## 6. 常用小功能 + +- **切模型**:中栏顶部下拉切对话模型;旁边 `⚙` 选生图 / 生视频模型。 +- **润色**:`✨ 润色` 把随手草稿改成更清晰的指令再发(Ctrl+Z 可撤销)。 +- **方案确认卡**:助手在分叉点会给可点选项,点一个继续、或直接打字讨论。 +- **消息目录**:长对话右缘有圆点轨道,悬停看标题、点击定位到某轮提问。 +- **记忆**:左栏底部 `记忆` 只读查看长期记忆;**想改直接在对话里说**「记住… / 改成… / 忘掉…」。 +- **任务管理**:左栏 `筛选 ▾` 按名称 / 状态 / 目录筛选排序;中栏 `完成` 归档,`⋯` 里可导出 / 清空 / 废弃 / 删除(**删除不可逆,暂时不用建议「废弃」**)。 +- **账户**:右上角 `改密码` / `退出登录`;右栏底部显示已用存储与版本号。 + +--- + +## 7. 用好它的几条建议 + +- **需求越具体越好**:说清对象、目标、约束、想要的产物形式(Word 还是 PPT?要图还是数据?)。不会表达就先点 `✨ 润色`。 +- **一件事一个任务**:文件与对话都更清爽,便于归档筛选。 +- **文献多为英文别担心**:用中文提问即可,助手自动转专业英文术语检索。 +- **图 / 文件没被看到**:确认已出现在右栏;粘贴的图记得连同消息一起发送。 + +--- + +> 把它当成一位**懂材料、会查库、能动手出活**的科研助理:你说清要什么,它把活干出来、把文件交到你手上。 diff --git a/docs/操作说明书.md b/docs/操作说明书.md new file mode 100644 index 0000000..4cc01cb --- /dev/null +++ b/docs/操作说明书.md @@ -0,0 +1,359 @@ +# 科研智能助手 · 操作说明书 + +> 适用对象:无机非金属材料(水泥 / 混凝土 / 玻璃 / 陶瓷 / 耐火 / 新型建材)科研人员 +> 本说明书从**登录后正式操作**讲起。 + +--- + +## 目录 + +1. [平台能做什么(核心优势)](#1-平台能做什么核心优势) +2. [界面总览:三栏布局](#2-界面总览三栏布局) + - [2.1 三个概念:个人文件夹 → 工作目录 → 任务](#21-三个概念个人文件夹--工作目录--任务) +3. [第一步:新建任务](#3-第一步新建任务) +4. [第二步:与助手对话](#4-第二步与助手对话) +5. [选对「智能体类型」(技能矩阵)](#5-选对智能体类型技能矩阵) +6. [文件管理:上传 / 选入 / 预览 / 下载](#6-文件管理上传--选入--预览--下载) +7. [进阶操作](#7-进阶操作) +8. [任务管理](#8-任务管理) +9. [图像与视频能力](#9-图像与视频能力) +10. [账户与存储](#10-账户与存储) +11. [常见问题与使用建议](#11-常见问题与使用建议) + +--- + +## 1. 平台能做什么(核心优势) + +本平台是一个**面向材料科研的 AI 智能助手**。它不只是聊天工具——它能真正打开你的资料、查内部文献、跑计算、出图、写文档,并把成果以可直接交付的文件(Word / PPT / 图片 / 数据)产出。 + +相较通用聊天工具,本平台对科研工作有几项**关键优势**: + +| 优势 | 说明 | +|---|---| +| **接入内部材料文献库** | 内置 **100 万+ 篇材料学科论文**(胶凝 / 陶瓷 / 玻璃 / 晶体 / 复合 / 耐火 / 检验检测 7 大学科库,以 Elsevier 期刊为主),支持**中文提问命中英文论文**的跨语言语义检索,并已整篇 Markdown 化,助手可直接通读全文,免去你自己 OCR / 翻库。 | +| **接入文献元数据库** | 另接一套基于 OpenAlex 元数据的文献库,可按关键词 / DOI / 作者查文献、取摘要、拉 PDF,适合补 DOI、找全网文献。 | +| **科研写作全覆盖** | 申报书 / 任务书(6 类基金)、国标·行标·团标(含编制说明)、发明专利技术交底书、审稿润色——均按规范章节骨架成稿,文献真实、指标可考核。 | +| **科研计算能力** | 晶体结构 / XRD 模拟 / 相图(pymatgen,内置水泥·陶瓷·耐火相名中英文映射)、配方—性能建模与机器学习、出版级学术图(中文字体 + 矢量 + 投稿级排版纪律)。 | +| **可直接产出文件** | 不是给你贴一段文字,而是生成 `.docx` / `.pptx` / 高清图 / 数据文件,下载即用。 | +| **跨任务长期记忆** | 你的领域、习惯、常用约定会被记住,下次不用重复交代。 | +| **真实执行环境** | 助手在隔离的安全沙箱里实际运行 Python、渲染图表、转换文档,结果是真算出来的,不是「编」的。 | + +> 一句话:**把模糊的科研需求,变成可交付的成果文件。** + +--- + +## 2. 界面总览:三栏布局 + +登录后进入主界面,整体分为**左 / 中 / 右三栏**: +![](assets/image-1781662287932-1.png) + +- **左栏 = 任务**:你的所有工作会话,每条叫一个「任务」。顶部有「+ 新建任务」和搜索 / 筛选;底部有「技能」「记忆」两个入口。 +- **中栏 = 对话**:选中某个任务后,在这里与助手对话。中部会实时显示助手正在做什么(查文献、跑脚本、出图…),底部是消息输入框。 +- **右栏 = 文件**:当前任务工作目录下的所有文件。助手生成的成果、你上传的素材都在这里,可预览、可下载。 + +> **手机端**:顶部会出现「任务 / 对话 / 文件」三个标签,点击切换三栏。 + +三栏宽度可拖拽中间的分隔线调整;点栏顶的 `‹` / `›` 可折叠左 / 右栏,给对话区让出空间。 + +### 2.1 三个概念:个人文件夹 → 工作目录 → 任务 + +理解这三者的层级关系,是用好平台的关键: + +``` +我的(个人文件夹 · 你的私有空间,别人看不到) +├── 工作目录 A(一个项目 / 一个课题的文件夹) +│ ├── 任务①(对话会话:写大纲) ┐ +│ ├── 任务②(对话会话:起初稿) ├─ 共用 A 里的同一批文件 +│ └── 文件:素材 / 草稿 / 成果 ┘ +│ +├── 工作目录 B(另一个项目) +│ └── 任务③ +└── …… +``` + +| 概念 | 是什么 | 关系 | +|---|---|---| +| **个人文件夹(「我的」)** | 你的**私有根空间**,所有工作目录都在它下面。每个用户彼此隔离,看不到别人的内容。右栏文件区面包屑最顶层就标「我的」。 | 最外层容器 | +| **工作目录** | 一个项目 / 课题的文件夹,存放该项目的素材、草稿、成果。右栏「文件」区展示的,就是当前任务所属的工作目录。 | 属于个人文件夹;**可被多个任务共享** | +| **任务** | 一次**对话会话**(上下文 + 进度 + 消息记录)。新建任务时绑定到某个工作目录。 | 属于某个工作目录 | + +**关键点:任务 ≠ 文件夹。** + +- 新建任务默认「跟随任务名」**自动新建一个同名工作目录**——此时任务与目录一对一,最省心。 +- 你也可以让**多个任务共用一个工作目录**:新建任务时把「工作目录」选成已有的那个,它们就**共享同一批文件**。 + - 典型场景:写一份本子,建「立项依据」「技术路线」「经费测算」几个任务,都挂在同一个「XX 基金」工作目录下——彼此能看到对方产生的文件,但**对话各自独立、互不干扰**。 +- 在右栏文件区,面包屑点到顶层「我的」,可浏览你**所有**工作目录;用 `⊕ 选入`(见 [6.2](#62-选入从其他目录带文件进来))还能把别的目录里的文件复制 / 移动到当前目录复用。 + +> **一句话**:**个人文件夹是你的家,工作目录是一个个项目抽屉,任务是围绕某个抽屉展开的一次次对话。** 文件按抽屉(工作目录)存,对话按任务分。 + +--- + +## 3. 第一步:新建任务 + +所有工作都从「任务」开始。一个任务 = 一个独立的工作会话 + 一个独立的文件目录,互不干扰。建议**一件事一个任务**(如「XX 基金申报书」「玻璃配方建模」各建一个),方便管理与归档。 + +**操作步骤:** + +1. 点左栏顶部蓝色按钮 **`+ 新建任务`**。 +2. 在弹窗中填写: + + [截图:新建任务弹窗] + + | 字段 | 是否必填 | 说明 | + |---|---|---| + | **任务名** | 必填 | 一眼能认出的名字,如「初稿大纲」「早强配方对比」。 | + | **工作目录** | 默认即可 | 任务产生的文件存放处。默认「跟随任务名」自动新建;也可**选已有目录,让多个任务共享同一批文件**(概念见 [2.1](#21-三个概念个人文件夹--工作目录--任务))。 | + | **描述** | 可选 | 对任务的补充说明。 | + | **智能体类型** | 可选 | 预先指定助手用哪种专长(写本子 / 出 PPT / 查文献…)。不选则由助手按你的话自动判断。详见 [第 5 节](#5-选对智能体类型技能矩阵)。 | + | **模型** | 默认即可 | 驱动助手的大模型,一般用默认。 | + +3. 点 **`创建`**。任务出现在左栏列表顶部并自动选中,即可开始对话。 + +> **小贴士**:「智能体类型」不是必须先选——你完全可以建一个空白任务,直接用大白话说需求,助手会自己挂载合适的能力。 + +--- + +## 4. 第二步:与助手对话 + +选中任务后,中栏底部出现输入框。这是你与助手交互的主要方式。 + +[截图:对话区 + 底部输入框] + +### 4.1 发送消息 + +- 在输入框打字,按 **Enter 发送**,**Shift + Enter 换行**。 +- 发送后,助手开始工作。中栏会**实时显示它在做什么**——「正在检索文献」「正在运行脚本」「正在生成图表」等,过程透明可见。 +- 助手可能一次完成,也可能分多步(查资料 → 起草 → 出图)。耐心等它跑完一轮即可。 + +**提问示例(越具体越好):** + +> - 「帮我查一下碱激发胶凝材料早期强度发展的近五年文献,要英文期刊的。」 +> - 「按国家自然科学基金面上项目,写一份关于低碳水泥熟料的申报书立项依据。」 +> - 「这组掺量—28天强度数据,帮我建个回归模型并出一张图。」 + +### 4.2 「✨ 润色」按钮 + +如果你的需求只打了草稿、表达比较随意,可先点输入框右侧的 **`✨ 润色`**。它会用模型把你的草稿改写成更清晰、更可执行的指令再发送(误改了可 Ctrl+Z 撤销)。适合不确定怎么把需求说清楚时。 + +### 4.3 切换模型 + +中栏顶部的对话信息行有一个**模型下拉框**(常驻),可随时切换当前任务使用的对话模型。旁边的 **`⚙`(媒体)** 齿轮里可单独选「生图模型」「生视频模型」,详见 [第 9 节](#9-图像与视频能力)。 + +### 4.4 中途暂停 / 继续 + +- 助手运行时,发送按钮会变为可**停止**当前运行。 +- 若助手因步数上限等原因停下,通常会提示「回复『继续』可续跑」——直接回个「继续」即可。 + +--- + +## 5. 选对「智能体类型」(技能矩阵) + +平台内置一套**专业技能**,覆盖材料科研的高频场景。你可以在新建任务时指定,也可以在对话里直接说需求由助手自动挂载。下面是能力清单与**何时用**: + +### 科研写作 + +| 技能 | 做什么 | 典型产物 | +|---|---|---| +| **学术论文写作** | 把实验数据 / 前期报告写成**可投稿的期刊论文**:中文核心 / 英文 SCI,原创研究 / 综述 / 快报。按 IMRaD 骨架先建文献矩阵、先定图表、逐章「一段一卡」起草,并做**引文三角核验**(每条引文回库查真、定位原文锚点,杜绝编造与引而不实)。 | 投稿稿 `.docx`(+ 可选 cover letter / Highlights / 声明等投稿件) | +| **申报书 / 任务书** | 写本子、立项依据、研究方案、技术路线。覆盖国家重点研发、重大专项、国自然面上 / 青年 / 联合基金、省地方、横向共 6 类基金;自动生成经费表、技术路线图,并**严守文献真实性**(不编引文)。 | 带目录与图表编号的 `.docx` | +| **标准起草** | 起草国标 / 行标 / 团标(重点对接 CSTM 团标)及**编制说明**,符合 GB/T 1.1—2020;自动套用「应 / 宜 / 可」能愿动词、指标量化闭环。 | 标准正文 `.docx` + 编制说明 `.docx` | +| **专利交底书** | 把项目材料 / 论文 / 代码挖成发明专利点,做现有技术检索,按七章骨架成稿,供代理师转写。 | 技术交底书 `.docx` | +| **审稿 / 润色** | 审中英文论文 / 报告 / 申报书,先抓全局结构再改语言;长文档先出骨架扫描再分段深审。 | 问题清单 + 修改稿 | + +> **写论文 vs 写本子 vs 审稿**:要把数据写成**期刊投稿稿**用「学术论文写作」;写**基金申报书 / 任务书**用「申报书」;只**改已有稿**用「审稿 / 润色」。 + +### 演示与出图 + +| 技能 | 做什么 | 典型产物 | +|---|---|---| +| **PPT 演示稿** | 把汇报材料做成商务风可演示的 `.pptx`,卡片式版式、论断式标题、KPI 数据卡,原生可编辑。 | `.pptx` | +| **出版级学术图** | 出 SCI 投稿级 matplotlib 图(XRD 多谱叠图、TG-DSC 双轴、应力—应变…),中文字体 + viridis 配色 + 矢量输出。 | 高 dpi PNG / SVG / PDF | + +### 文献检索(**平台核心优势**) + +| 技能 | 做什么 | 关系 | +|---|---|---| +| **内部材料知识库** | 查 7 大学科 100 万+ 篇论文,**中文提问也能命中英文文献**,整篇 Markdown 直接可读。找材料类文献**优先用它**。 | 与下者互补 | +| **文献元数据库** | 基于 OpenAlex 查全网文献,要 DOI、要 PDF、要摘要走它。 | 找其他学科或要 DOI 走它 | + +### 科研计算 + +| 技能 | 做什么 | +|---|---| +| **晶体 / 物相计算** | 晶体结构 I/O、XRD 正向模拟与比对、相图、空间群、对称性;内置水泥熟料 / 陶瓷 / 耐火 / 玻璃相名中英文映射(C3S、钙矾石、莫来石…)。 | +| **统计建模与机器学习** | 配方—性能(强度 / 流动度 / 凝结时间)回归、DoE 响应面、假设检验与置信区间、小样本贝叶斯估计、聚类找异常配方。 | + +### 内容生成与通用 + +| 技能 | 做什么 | +|---|---| +| **文生图 / 改图** | 按描述生成图片,或在已有图上做像素级修改(详见第 9 节)。 | +| **文生视频** | 按描述生成短视频片段(详见第 9 节)。 | +| **问题拆解** | 面对模糊的高层科研问题,帮你拆成可操作的子问题 + 实施路线图,再接力给上面的专业技能。 | +| **代码 / 调试** | 修代码、调试、实现脚本。 | + +> **查看完整技能说明**:点左栏底部 **`技能`** 按钮,弹窗里分「平台技能 / 我的技能」两列,点任一项可展开完整说明文档。 +> +> [截图:技能查看弹窗] + +### 跨技能协作(典型组合) + +实际任务常常串联多个技能,例如: + +- **写论文全流程**:查文献建证据底座 → 配方建模 / 计算出数据 → 出版级出图 → 逐章起草 → 引文核验 → 审稿终审 →(可选)出投稿件。 +- **写本子全流程**:问题拆解 → 查文献 → 配方建模出预实验数据 → 出图 → 写申报书 → 审稿。 +- **PPT 汇报**:提炼论点 → 找数据与引文 → 出图 → 组装 PPT →(可选)做封面图。 + +你不需要手动串——把目标说清楚,助手会自动调度。 + +### 自定义你自己的技能 + +如果你每次都要重复交代同一套做法(术语表、模板、默认值),可以让助手把它**固化成你的私有技能**(只对你生效):在对话里说「我想要个自己的技能 / 把这套流程固定下来」,或「平台的 XX 技能挺好,但我想改成 YY」即可。 + +--- + +## 6. 文件管理:上传 / 选入 / 预览 / 下载 + +右栏「文件」区是当前任务的工作目录。助手生成的成果、你提供的素材都在这里。 + +[截图:右栏文件区 + 顶部三个按钮] + +### 6.1 上传素材 + +把已有资料(汇报草稿、数据表、参考论文、图片)交给助手处理,有三种方式: + +1. **点 `⬆` 按钮**,选文件上传到当前目录。 +2. **直接把文件拖进右栏**(出现「松开以上传」提示时放手)。 +3. **在对话输入框 Ctrl+V 粘贴**文件(如截图、图片),会生成一个可预览的小卡片,随消息一起发给助手。 + +### 6.2 选入(从其他目录带文件进来) + +点 `⊕` 按钮可从你**其他任务 / 目录**里勾选文件或文件夹,**复制**或**移动**到当前任务目录。适合复用之前任务的素材。 + +[截图:选入文件弹窗] + +### 6.3 预览 + +点文件列表里的任意文件即可在线预览,**无需下载**: + +- **图片**:支持 Ctrl + 滚轮缩放、放大后左键拖动平移、双击复位。 +- **Word(.docx)/ PDF**:直接在线阅读。 +- **PPT(.pptx)**:自动转换后在线预览版面。 +- **文本 / Markdown / 表格**:直接渲染。 + +[截图:文件预览弹窗(以一张图或一份 docx 为例)] + +### 6.4 下载 + +预览弹窗右上角有 **`下载`** 按钮,可保存原文件到本地。 + +--- + +## 7. 进阶操作 + +### 7.1 方案确认卡 + +当助手遇到需要你拍板的分叉点(如「用方案 A 还是方案 B」),它会在回复里给出**可点击的选项卡**。你可以: + +- **直接点某个选项**——相当于把该选项作为回复发出,助手继续; +- **或不点,直接用文字讨论**——把你的想法打出来也行。 + +历史里已选过的选项会标「✓ 已选」。 + +[截图:方案确认卡(带可点选项)] + +### 7.2 消息目录导航(长对话快速定位) + +长对话里,对话区**右缘会悬浮一列圆点**,每个点对应你的一轮提问。鼠标悬停出现该轮标题气泡,点击即可滚动定位到那一轮。方便在几十轮的长任务里快速回到某个问题。 + +### 7.3 跨任务长期记忆 + +点左栏底部 **`记忆`** 按钮,可**只读查看**助手记住的、跨任务共享的长期信息(你的领域、常用约定等)。 + +- **想改记忆?** 不在这里操作——**直接在对话里说**「记住……」「改成……」「忘掉……」,助手会帮你维护。 + +[截图:记忆查看弹窗] + +--- + +## 8. 任务管理 + +### 8.1 查找与筛选 + +左栏顶部点 **`筛选 ▾`** 展开筛选区,可: + +- **搜索**任务名 / 描述; +- 按**状态**(进行中 / 已完成 / 已废弃)筛选; +- 按**工作目录**筛选; +- 按创建时间 / 更新时间 / 名称 / 状态分组**排序**。 + +### 8.2 任务操作菜单 + +选中任务后,中栏顶部有: + +- **`完成`**:把任务标记为已完成(归档,不删数据)。 +- **`⋯`(更多)**:导出对话、清空对话、废弃、删除。 + +| 操作 | 含义 | 可逆性 | +|---|---|---| +| **导出对话** | 把整个对话记录导出留存。 | — | +| **清空对话** | 清掉对话消息(保留任务与文件)。 | 谨慎 | +| **废弃** | 标记为已废弃(仍可在筛选里找到)。 | 可恢复 | +| **删除** | 彻底删除任务。 | **不可逆** | + +> **提示**:破坏性操作(废弃 / 删除)按颜色区分(橙 / 红),并有二次确认,避免误点。 + +--- + +## 9. 图像与视频能力 + +平台可按文字描述**生成图片**、在已有图上**改图**、**生成短视频**,也能**「看懂」一张图**(OCR、读图表、描述内容)。 + +### 9.1 选择媒体模型 + +中栏对话信息行的 **`⚙`(媒体)** 齿轮里,可单独选「生图模型」「生视频模型」。选定后随你下一条消息生效。 + +### 9.2 生图与改图 + +- **生图**:直接说「画一张……」「来个封面」。助手会先把要画的内容、尺寸等**整理成最终描述明文展示给你确认**,你拍板后才真正出图。 +- **改图**:对刚生成或你上传的图说「按这个改成 X」,助手会在**那张图上修改**(保留原构图),而不是重画。 + +> **关于费用**:生图、生视频属于**计费能力**(按次 / 按时长),助手在调用前**一定会先把方案明文给你确认**,不会擅自消费。静态图够用时不建议上视频(视频单价显著更高)。 + +### 9.3 看图(图像理解) + +助手在需要时会自动「借眼睛」读图——识别图中文字、读取图表数据、描述图片内容。你上传图后直接问「这张图里写了什么 / 这条曲线峰值多少」即可。 + +--- + +## 10. 存储 + +### 10.1 存储用量 + +右栏底部有一条**存储进度条**,显示你当前已用的存储空间。最左侧还显示当前平台版本号。 + +--- + +## 11. 常见问题与使用建议 + +**Q:怎么让结果更好?** +A:需求越具体越好——说清**对象、目标、约束、想要的产物形式**(要 Word 还是 PPT?要图还是数据?)。不确定怎么表达时,先点 `✨ 润色`。 + +**Q:助手好像停住了 / 没出全?** +A:若提示「回复『继续』可续跑」,直接回「继续」。长任务分多步是正常的。 + +**Q:文献查出来大多是英文?** +A:内部材料库主语料是英文期刊,但**支持中文提问命中英文文献**。你用中文描述需求即可,助手会自动转专业英文术语检索。 + +**Q:我上传的图 / 文件助手看不到?** +A:确认文件已出现在右栏「文件」区;对话里用 Ctrl+V 粘贴的图,记得**连同那条消息一起发送**。 + +**Q:一个任务能干很多不相干的事吗?** +A:不建议。**一件事一个任务**,文件与对话都更清爽,也便于后续归档、筛选。 + +**Q:误删了任务能找回吗?** +A:**删除不可逆**。只是暂时不用,建议用「废弃」而非「删除」——废弃后仍可在筛选里找回。 + +--- + +> **使用心法**:把它当成一位**懂材料、会查库、能动手出活**的科研助理。你负责说清要什么,它负责把活干出来、把文件交到你手上。 diff --git a/scripts/optimize_arch_ppt.py b/scripts/optimize_arch_ppt.py new file mode 100644 index 0000000..f55d543 --- /dev/null +++ b/scripts/optimize_arch_ppt.py @@ -0,0 +1,418 @@ +# -*- coding: utf-8 -*- +"""一次性脚本:重组并瘦身《后端AI技术架构脉络说明-2》。 +- 双产品重组为 4 部分;删除占位/虚构内容并替换为真实信息;长段落瘦身。 +- 输出 -3,保留 -2 原件不动。视觉模板不动,只改文字 + 增删/重排页。 +""" +import copy +from pptx import Presentation +from pptx.oxml.ns import qn +from pptx.util import Inches, Pt +from pptx.enum.text import PP_ALIGN + +SRC = "后端AI技术架构脉络说明20260608-2.pptx" +DST = "后端AI技术架构脉络说明20260608-3.pptx" + +A_P = qn('a:p'); A_R = qn('a:r'); A_T = qn('a:t') + + +def first_run_size(p): + for r in p.runs: + if r.font.size is not None: + return r.font.size.pt + return None + + +def size_templates(tf): + d = {} + for p in tf.paragraphs: + if not p.runs: + continue + sz = first_run_size(p) + key = sz if sz is not None else '_none' + if key not in d: + d[key] = copy.deepcopy(p._p) + return d + + +def clone_para_with_text(template_p, text): + new_p = copy.deepcopy(template_p) + rs = new_p.findall(A_R) + if not rs: + return new_p + first = rs[0] + t = first.find(A_T) + if t is None: + t = first.makeelement(A_T, {}) + first.append(t) + t.text = text + for r in rs[1:]: + new_p.remove(r) + return new_p + + +def rebuild(tf, specs): + """specs: [(text, size_pt)] size 用于挑选要克隆格式的模板段落。""" + templ = size_templates(tf) + if not templ: + return + body = tf._txBody + for p in body.findall(A_P): + body.remove(p) + for text, sz in specs: + t = templ.get(sz) + if t is None: + t = next(iter(templ.values())) + body.append(clone_para_with_text(t, text)) + + +def shp(slide, name): + for s in slide.shapes: + if s.name == name: + return s + return None + + +def edit(slide, name, specs): + s = shp(slide, name) + if s is None or not s.has_text_frame: + print(f" !! 未找到形状 {name}") + return + rebuild(s.text_frame, specs) + + +def del_shape(slide, name): + s = shp(slide, name) + if s is not None: + s._element.getparent().remove(s._element) + + +def retext(shape, text, size_pt=None, align=None): + """改单段文字 + 可选字号/对齐,保留原 run 的颜色/字体(克隆来的)。""" + tf = shape.text_frame + body = tf._txBody + for p in body.findall(A_P)[1:]: + body.remove(p) + p0 = tf.paragraphs[0] + rs = p0._p.findall(A_R) + if rs: + first = rs[0] + t = first.find(A_T) + if t is None: + t = first.makeelement(A_T, {}) + first.append(t) + t.text = text + for r in rs[1:]: + p0._p.remove(r) + if size_pt is not None: + for r in p0.runs: + r.font.size = Pt(size_pt) + if align is not None: + p0.alignment = align + + +def clone_shape(slide, src_name, new_name): + """深拷贝一个形状(连同主题色/字体),分配唯一 id + 新名,返回 Shape。""" + src = shp(slide, src_name) + spTree = src._element.getparent() + new_sp = copy.deepcopy(src._element) + spTree.append(new_sp) + ids = [int(e.get('id')) for e in spTree.iter(qn('p:cNvPr')) + if e.get('id') and e.get('id').isdigit()] + nid = (max(ids) + 1) if ids else 100 + cNvPr = new_sp.find(qn('p:nvSpPr')).find(qn('p:cNvPr')) + cNvPr.set('id', str(nid)) + cNvPr.set('name', new_name) + for s in slide.shapes: + if s._element is new_sp: + return s + return None + + +def place(shape, left, top, width, height): + shape.left = Inches(left) + shape.top = Inches(top) + shape.width = Inches(width) + shape.height = Inches(height) + + +prs = Presentation(SRC) +S = prs.slides # 原始 0-based 索引 = 幻灯片号 - 1 + +# ============ S1 (idx0) 封面:删除 4 段概述(标题+正文+连接线+卡片底框),只留标题/副标题 ============ +# 每段含:卡片底框(9/13/17/21)、标题(10/14/18/22)、连接线(11/15/19/23)、正文(12/16/20/24) +for nm in ["AutoShape 6", + "AutoShape 9", "AutoShape 13", "AutoShape 17", "AutoShape 21", # 卡片底框 + "AutoShape 10", "AutoShape 14", "AutoShape 18", "AutoShape 22", # 标题 + "AutoShape 12", "AutoShape 16", "AutoShape 20", "AutoShape 24", # 正文 + "Connector 11", "Connector 15", "Connector 19", "Connector 23"]: + del_shape(S[0], nm) + +# 重新设计封面:左侧竖条/logo/顶部细线/页脚 保留作装饰边框; +# 主标题下移居中放大,补副标题(双产品)、议程标语(四部分)、落款单位。 +cover = S[0] +# 主标题:24 -> 40,移到垂直居中偏上,左对齐与竖条呼应 +retext(shp(cover, "AutoShape 7"), "后端 AI 技术架构脉络说明", size_pt=40, align=PP_ALIGN.LEFT) +place(shp(cover, "AutoShape 7"), 1.5, 2.55, 10.3, 1.0) +# 副标题:两大产品线 +sub = clone_shape(cover, "AutoShape 7", "CoverSubtitle") +retext(sub, "水泥基配方大模型 · 科研智能体应用平台", size_pt=20, align=PP_ALIGN.LEFT) +place(sub, 1.55, 3.7, 10.0, 0.6) +# 议程标语:四部分一行 +agenda = clone_shape(cover, "AutoShape 7", "CoverAgenda") +retext(agenda, "总体架构与核心定位 / 五大引擎与训练 / 智能体应用平台 / 总结与展望", + size_pt=14, align=PP_ALIGN.LEFT) +place(agenda, 1.57, 4.45, 10.5, 0.5) +# 落款单位:左下 +unit = clone_shape(cover, "AutoShape 7", "CoverUnit") +retext(unit, "中国建筑材料科学研究总院 · AI 技术部", size_pt=13, align=PP_ALIGN.LEFT) +place(unit, 1.57, 6.1, 8.0, 0.4) + +# ============ S2 (idx1) 目录:改为真实 4 部分 ============ +edit(S[1], "AutoShape 7", [("后端 AI 技术架构 · 汇报目录", 24)]) +edit(S[1], "AutoShape 12", [("总体架构与核心定位", 18)]) +edit(S[1], "AutoShape 13", [("明确平台核心定位与建设目标,展示总体技术架构图与核心技术栈,奠定整体框架。", 14)]) +edit(S[1], "AutoShape 17", [("配方大模型:五大引擎与训练", 18)]) +edit(S[1], "AutoShape 18", [("智能问答、知识库构建、知识库问答、文档分类、实验设计五大引擎,及配方大模型训练体系与成效。", 14)]) +edit(S[1], "AutoShape 22", [("科研智能体应用平台", 18)]) +edit(S[1], "AutoShape 23", [("自然语言驱动的科研智能体:工作流、定位价值、14 项 Skill 能力矩阵与平台技术架构。", 14)]) +edit(S[1], "AutoShape 27", [("总结与展望", 18)]) +edit(S[1], "AutoShape 28", [("汇总核心成果与模型矩阵,总结建设价值,展望后续优化方向。", 14)]) + +# ============ S3 (idx2) PART 01:替换占位/假技术栈为真实内容 ============ +edit(S[2], "AutoShape 7", [("PART 01 总体架构与核心定位", 24)]) +edit(S[2], "AutoShape 10", [ + ("01 / 核心定位与目标", 18), + ("面向行业场景构建一体化 AI 能力平台,聚焦水泥基材料,打通“通用能力接入 → 专属模型训练 → 智能推理 → 业务落地”全链路闭环。", 14)]) +edit(S[2], "AutoShape 12", [ + ("02 / 总体架构分层", 18), + ("分层解耦:应用层 → 后端服务层(五大引擎)→ 模型与数据层 → 行业模型训练模块,各层经标准接口协同,兼顾高可用与弹性扩展。", 14)]) +edit(S[2], "AutoShape 14", [ + ("03 / 关键技术栈", 18), + ("FastAPI 高并发异步后端;LangGraph + LangChain 编排;DeepSeek V3.1 / Qwen3 多模型并兼容 OpenAI 接口;Milvus 向量库;LLaMA Factory 训练。", 14)]) + +# ============ S6 (idx5) 核心技术栈:8 框瘦身 ============ +edit(S[5], "AutoShape 12", [("高性能后端框架:FastAPI 高并发异步,保障接口高效、稳定、低延迟,支撑大规模请求与模型调用。", 14)]) +edit(S[5], "AutoShape 14", [("智能体流程编排:LangGraph 可视化编排复杂逻辑,LangChain 构建调用链,兼容 OpenAI 接口,多模型高效协同。", 14)]) +edit(S[5], "AutoShape 18", [("通用与微调基座:DeepSeek V3.1、Qwen3-30B-A3B 为通用基座,Qwen2.5-1.5B 行业微调,兼顾通用与适配。", 14)]) +edit(S[5], "AutoShape 20", [("多模态与向量增强:Qwen2.5-VL 解析视觉内容,BGE-M3 向量化,构建全维度语义理解与知识表示。", 14)]) +edit(S[5], "AutoShape 24", [("数据解析与存储:MinerU 解析 PDF/DOC 等非结构化文档,Milvus 向量库实现海量向量高维索引与快速检索。", 14)]) +edit(S[5], "AutoShape 26", [("RAG 检索增强:外部知识库与大模型深度融合,有效抑制幻觉,提升回答准确性、专业性与一致性。", 14)]) +edit(S[5], "AutoShape 30", [("一站式训练:LLaMA Factory 标准化训练流水线,统一接入多类开源大模型,降低开发与迭代门槛。", 14)]) +edit(S[5], "AutoShape 32", [("低成本微调:PEFT + LoRA 仅训练少量关键参数即显著提效,大幅节省算力,加速行业模型落地。", 14)]) + +# ============ S7 (idx6) PART 02:通用假五引擎 → 真实五引擎总览 ============ +edit(S[6], "AutoShape 7", [("PART 02 水泥基配方大模型:五大引擎", 24)]) +edit(S[6], "AutoShape 10", [("01 智能问答中枢", 16)]) +edit(S[6], "AutoShape 12", [("大模型统一入口,支持通用对话、文件问答、工具调用与多轮会话,可升级为执行任务。", 13)]) +edit(S[6], "AutoShape 14", [("02 知识库构建引擎", 16)]) +edit(S[6], "AutoShape 16", [("将非结构化文档解析、向量化为可检索、可追溯的企业知识资产,支撑上层应用。", 13)]) +edit(S[6], "AutoShape 18", [("03 知识库问答引擎", 16)]) +edit(S[6], "AutoShape 20", [("基于 RAG 结合企业知识作答,支持引用溯源,显著抑制大模型幻觉。", 13)]) +edit(S[6], "AutoShape 22", [("04 AI 文档分类引擎", 16)]) +edit(S[6], "AutoShape 24", [("自动识别文档领域与材料分类并归档,触发向量重建,实现知识治理自动化。", 13)]) +edit(S[6], "AutoShape 26", [("05 智能实验设计引擎", 16)]) +edit(S[6], "AutoShape 28", [("多阶段工作流将需求转为可执行实验方案,调用行业微调模型生成配方。", 13)]) + +# ============ S8 (idx7) 智能问答中枢:295 字一坨 → 瘦身 ============ +edit(S[7], "AutoShape 2", [ + ("定位", 16), + ("大模型统一入口,负责通用对话、文件问答、工具调用与多轮会话管理。", 13), + ("核心技术", 16), + ("• LangGraph 编排复杂对话流程", 13), + ("• 核心模型 DeepSeek V3.1 / Qwen3-30B-A3B", 13), + ("• 支持文件问答、多轮上下文与思考模式", 13), + ("• MCP 工具接入外部业务系统与接口", 13), + ("• SSE 流式输出,实时生成展示", 13), + ("主要价值", 16), + ("• 统一、标准化的大模型问答能力", 13), + ("• 高扩展性,无缝集成更多业务工具", 13), + ("• 从“回答问题”升级为“执行任务”", 13)]) + +# ============ S9 (idx8) 知识库构建 ============ +edit(S[8], "AutoShape 2", [ + ("核心定位", 16), + ("将非结构化文档转化为可检索、可引用、可追溯的企业知识资产,是上层应用的基础。", 13)]) +edit(S[8], "AutoShape 3", [ + ("支持内容类型", 16), + ("• 文档类:PDF / Word / PPT / Excel", 13), + ("• 图像类:图片、扫描件、图表", 13), + ("• 文本类:Markdown / TXT / CSV / JSON", 13)]) +edit(S[8], "AutoShape 4", [ + ("主要价值", 16), + ("• 分散资料沉淀为结构化企业知识库", 13), + ("• 为问答、实验、训练提供高质量数据基础", 13)]) + +# ============ S10 (idx9) 知识库问答 ============ +edit(S[9], "AutoShape 2", [ + ("定位", 16), + ("基于 RAG 架构,让大模型结合企业内部知识作答,保证专业性与准确性。", 13)]) +edit(S[9], "AutoShape 3", [ + ("核心技术", 16), + ("• RAG 检索增强生成", 12), + ("• BGE-M3 向量化 + Milvus 检索", 12), + ("• DeepSeek/Qwen 结合上下文生成", 12), + ("• 支持引用来源溯源", 12), + ("• 多维度检索过滤", 12)]) +edit(S[9], "AutoShape 4", [ + ("主要价值", 16), + ("• 提升专业性、准确性与可追溯性", 13), + ("• 赋能私有文档深度问答", 13), + ("• 降低大模型幻觉风险", 13)]) + +# ============ S11 (idx10) 文档分类:169 字 → 瘦身 ============ +edit(S[10], "AutoShape 2", [ + ("定位", 16), + ("自动识别文档领域与材料分类并归档至对应知识库,实现知识管理自动化。", 13)]) +edit(S[10], "AutoShape 3", [ + ("核心技术", 16), + ("• 内容理解:基于 MinerU + Qwen2.5-VL 解析", 13), + ("• 分类推理:DeepSeek V3.1 / Qwen3 判定", 13), + ("• 智能输出:摘要、领域、分类路径、依据、置信度", 13), + ("• 闭环管理:自动触发文档迁移与 Milvus 重建", 13)]) +edit(S[10], "AutoShape 4", [ + ("主要价值", 16), + ("• 大幅降低人工整理归档成本", 13), + ("• 归入正确体系,提升检索效率", 13), + ("• 为行业模型筛选标准化数据集", 13)]) + +# ============ S12 (idx11) 实验设计:238 字 → 瘦身 ============ +edit(S[11], "AutoShape 2", [ + ("▍定位", 16), + ("平台最核心的行业智能体能力,经多阶段工作流将需求转为可执行实验方案。", 13), + ("▍核心技术", 16), + ("• LangGraph 编排含人工确认的实验设计流", 13), + ("• 混合调用:通用模型析文献,行业微调模型生成配方", 13), + ("• 知识驱动:Milvus 检索文献作决策依据", 13), + ("▍主要价值", 16), + ("• 海量文献转为实验依据,降低人工成本", 13), + ("• 方案生成全链路可追溯", 13), + ("• 专项微调模型提升配方专业性与适配性", 13)]) + +# ============ S14 (idx13) 科研平台:作为 PART 03 开篇 ============ +edit(S[13], "AutoShape 7", [("PART 03 科研智能体应用平台", 24)]) +edit(S[13], "TextBox 9", [ + ("以自然语言为入口,平台自动识别意图、动态挂载专业能力,把科研任务串成可执行、可交付的工作流;", 13.5), + ("关键节点由用户确认,全程运行在统一的模型、知识与安全底座之上。", 13.5)]) + +# ============ S15 (idx14) 定位与价值 ============ +edit(S[14], "AutoShape 9", [ + ("面向科研全流程的智能体:以自然语言为入口,自动拆解任务、调度工具与专业能力,把“想法”直接转化为可交付科研产物,压缩从需求到成果的链路。", 16)]) +edit(S[14], "AutoShape 14", [ + ("从问题拆解、文献检索、计算建模、出版级出图,到申报书/标准/专利起草与审稿,覆盖“调研—计算—写作—评审”全链条,无需多工具切换。", 14)]) +edit(S[14], "AutoShape 18", [ + ("用自然语言描述需求,平台自动识别意图、挂载对应专业能力,按阶段化流程推进,关键节点与用户确认,过程可控可追溯。", 14)]) +edit(S[14], "AutoShape 22", [ + ("不止对话回答,直接产出 Word / PPT / 图表 / 数据等规范化交付物,贴合科研与项目申报格式,降低整理排版成本。", 14)]) + +# ============ S16 (idx15) 能力矩阵 ============ +edit(S[15], "AutoShape 12", [("申报书/任务书、国标·行标·团标、专利交底书、审稿润色,覆盖立项到评审的写作全链路。", 14)]) +edit(S[15], "AutoShape 16", [("检索内部 100 万+ 篇材料学科论文库与全网文献,支持中文检索命中英文文献,提供可溯文献支撑。", 14)]) +edit(S[15], "AutoShape 20", [("晶体结构 / XRD 模拟 / 相图计算,配方-性能统计建模与机器学习,服务“配比→性能”预测寻优。", 14)]) +edit(S[15], "AutoShape 24", [("一键生成商务级 PPT,出版级 matplotlib 学术图(中文+矢量),让成果能看、能讲、能投稿。", 14)]) +edit(S[15], "AutoShape 28", [("文生图、文生视频按需调用,为封面、概念示意与宣传材料快速产出配图与动效。", 14)]) +edit(S[15], "AutoShape 32", [("科学问题拆解与路线图引导、代码实现与调试,把专业能力按任务智能编排串联。", 14)]) +edit(S[15], "AutoShape 34", [("当前已沉淀 14 项专业能力(skill),按“科研写作·文献检索·科研计算·演示出图·内容生成·通用元能力”六类组织,并可持续扩展。", 13)]) + +# ============ S17 (idx16) 平台技术架构:8 框瘦身 ============ +edit(S[16], "AutoShape 12", [("ReAct 智能体循环:“思考→调用工具→观察”自主迭代,内置重复调用守卫与异常自愈,自动收敛到可交付结果。", 14)]) +edit(S[16], "AutoShape 14", [("阶段化编排:复杂任务以图式工作流编排,嵌入人工确认节点,关键决策由用户拍板,过程可追溯。", 14)]) +edit(S[16], "AutoShape 18", [("意图识别 + 按需挂载:识别需求后动态加载对应 skill,不相关能力不进上下文,精准又省算力。", 14)]) +edit(S[16], "AutoShape 20", [("可扩展插件:每个 skill 是独立可维护的工作流(流程+模板+脚本),新增能力即插即用。", 14)]) +edit(S[16], "AutoShape 24", [("每用户 Docker 沙盒隔离:代码执行与文件读写独立容器运行,资源限额 + 网络管控 + 最小权限。", 14)]) +edit(S[16], "AutoShape 26", [("丰富工具集 + MCP:内置文件、命令、Python、联网检索等工具,兼容 MCP 接入外部系统。", 14)]) +edit(S[16], "AutoShape 30", [("多模型自由调度:兼容 DeepSeek、Qwen 等及 OpenAI 接口,涉密任务可切内网私有模型。", 14)]) +edit(S[16], "AutoShape 32", [("RAG + 长期记忆:向量检索抑制幻觉,双层记忆与长任务断点恢复,跨会话沉淀偏好与上下文。", 14)]) + +# ============ S18 (idx17) 训练体系导语:215 字 → 瘦身 + 侧标改子节 ============ +edit(S[17], "AutoShape 8", [("训练体系", 20)]) +edit(S[17], "AutoShape 10", [ + ("聚焦水泥基材料智能配方大模型的核心训练体系——材料配方智能化设计的技术基石。", 16), + ("阐述从数据采集、特征工程到算法选型、迭代优化的全流程逻辑,融合材料科学机理与深度学习,破解传统研发“试错成本高、周期长”的痛点。", 16), + ("并展示模型在性能预测、多目标配方寻优等关键环节的技术突破。", 16)]) + +# ============ S19 (idx18) 训练基础信息 ============ +edit(S[18], "AutoShape 12", [("采用 LLaMA Factory 训练框架,Qwen2.5-1.5B-Instruct 为基座,兼顾训练效率与推理性能。", 13)]) +edit(S[18], "AutoShape 16", [("PEFT + LoRA:不更新主干参数,仅微调少量低秩矩阵,大幅降低显存与训练成本,精准学习配方知识。", 13)]) +edit(S[18], "AutoShape 20", [("以 SFT 为核心,建立“材料性能要求 → 配方组成”的精准映射,实现需求到方案直接转化。", 13)]) +edit(S[18], "AutoShape 24", [("基于 16 组实验室实测数据:输入 3 天/7 天抗压、抗折强度;输出矿粉、电石渣、脱硫石膏、粉煤灰、水、减水剂配比。", 13)]) + +# ============ S21 (idx20) 训练成效 ============ +edit(S[20], "AutoShape 12", [ + ("损失值收敛表现", 14), + ("初始 0.6897 → 第 50 轮 0.0073,降幅 98.9%,拟合充分且未过拟合。", 12)]) +edit(S[20], "AutoShape 14", [ + ("学习率动态调整", 14), + ("从 4.92e-04 衰减至 4.93e-07,配合损失动态适配,避免后期震荡。", 12)]) +edit(S[20], "AutoShape 27", [("损失曲线全程无剧烈波动,稳定在极低水平,参数更新策略有效,鲁棒性佳。", 12)]) +edit(S[20], "AutoShape 31", [("模型掌握“低强度→低掺量、高强度→高掺量”行业逻辑,配方贴合工程实际。", 12)]) +edit(S[20], "AutoShape 35", [("稳定输出高精度预测值,并按工程格式生成完整配方,直接对接下游系统。", 12)]) + +# ============ S23 (idx22) 总结 PART 04:删除虚构指标,替换真实成果 ============ +edit(S[22], "AutoShape 7", [("总结与展望", 24)]) +# 标题与正文是分开的形状:标题改 AutoShape 11/16/21/26,正文改 13/18/23/28 +edit(S[22], "AutoShape 11", [("01. 核心能力落地成效", 18)]) +edit(S[22], "AutoShape 13", [ + ("已落地五大引擎(智能问答、知识库构建/问答、文档分类、实验设计)与科研智能体平台,沉淀 14 项专业 skill;水泥基配方大模型完成首版训练,损失收敛至 0.0073。", 14)]) +edit(S[22], "AutoShape 16", [("02. 平台技术底座", 18)]) +edit(S[22], "AutoShape 18", [ + ("FastAPI + LangGraph 智能体内核,DeepSeek/Qwen 多模型调度,Milvus + RAG 抑制幻觉,每用户 Docker 沙盒隔离,LLaMA Factory + LoRA 行业微调。", 14)]) +edit(S[22], "AutoShape 21", [("03. 业务价值与知识资产", 18)]) +edit(S[22], "AutoShape 23", [ + ("打通“数据→知识→决策”全链路闭环;内部 100 万+ 篇材料论文知识库与配方数据沉淀为可复用知识资产,支撑研发提效。", 14)]) +edit(S[22], "AutoShape 26", [("04. 下一阶段规划", 18)]) +edit(S[22], "AutoShape 28", [ + ("配方数据集由 16 条扩充至 200+,简化配方空间,搭建“预测—实验—反馈”闭环,目标配方达标率 ≥85%;持续扩展 skill 与场景。", 14)]) + +# ============ S24 (idx23) 模型矩阵汇总:6 框各 120+ 字 → 瘦身 ============ +edit(S[23], "AutoShape 9", [ + ("模型矩阵架构", 18), + ("基于 DeepSeek、Qwen 大模型底座,融合视觉模型与向量检索,构建“通用+垂直”双轮驱动体系。", 13), + ("核心价值:打通“解析→沉淀→决策”全链路闭环,提升研发与应用效率。", 14)]) +DIV = "——————————" +edit(S[23], "AutoShape 11", [ + ("01. 智能问答中枢:通用基座", 15), (DIV, 11), + ("模型:DeepSeek V3.1 / Qwen3-30B-A3B", 12), + ("场景:通用问答、文件问答与工具调用,平台统一入口。", 12)]) +edit(S[23], "AutoShape 13", [ + ("02. 知识库构建:多模态沉淀", 15), (DIV, 11), + ("模型:Qwen2.5-VL + BGE-M3 + Milvus", 12), + ("场景:文档解析、图表提取,非结构化数据向量化入库。", 12)]) +edit(S[23], "AutoShape 15", [ + ("03. 知识库问答:精准溯源", 15), (DIV, 11), + ("模型:DeepSeek V3.1 + BGE-M3 + Milvus", 12), + ("场景:RAG 精准问答,提供原文引用与溯源。", 12)]) +edit(S[23], "AutoShape 17", [ + ("04. AI 文档分类:知识治理", 15), (DIV, 11), + ("模型:Qwen3-30B-A3B + BGE-M3", 12), + ("场景:自动识别主题、分类归档,解决海量文档管理难题。", 12)]) +edit(S[23], "AutoShape 19", [ + ("05. 智能实验设计:研发提效", 15), (DIV, 11), + ("模型:通用大模型 + Qwen2.5-1.5B(LoRA 配方模型)", 12), + ("场景:分析文献与实验数据,生成配方初步方案。", 12)]) +edit(S[23], "AutoShape 21", [ + ("06. 配方模型训练:垂直深耕", 15), (DIV, 11), + ("模型:Qwen2.5-1.5B 基座 + BGE-M3 预处理", 12), + ("场景:学习“性能-配方”映射,建立专属垂直模型。", 12)]) + +# ============ 结构:重排 + 删除(S4=idx3 与 S25=idx24 删除) ============ +# 目标顺序(原始 0-based 索引): +# 开场: 0,1 | PART1: 2,4,5 | PART2: 6,7,8,9,10,11,12,17,18,19,20,21 +# PART3: 13,14,15,16 | PART4: 22,23,25 +order = [0, 1, 2, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 17, 18, 19, 20, 21, + 13, 14, 15, 16, + 22, 23, 25] +sldIdLst = prs.slides._sldIdLst +ids = list(sldIdLst) +dropped_rids = [ids[i].get(qn('r:id')) for i in range(len(ids)) if i not in order] +for e in ids: + sldIdLst.remove(e) +for i in order: + sldIdLst.append(ids[i]) +# 彻底移除被删幻灯片的部件(否则孤立 part 残留,PowerPoint 可能弹"修复") +for rid in dropped_rids: + if rid in prs.part.rels: + prs.part.drop_rel(rid) + +prs.save(DST) +print(f"OK -> {DST} 共 {len(order)} 页") diff --git a/skills/documents/SKILL.md b/skills/documents/SKILL.md index ba17f1d..3dcd215 100644 --- a/skills/documents/SKILL.md +++ b/skills/documents/SKILL.md @@ -1,11 +1,11 @@ --- name: documents -description: 查内部材料学科知识库(document_search API,7 个学科:胶凝 / 陶瓷 / 玻璃 / 晶体 / 复合 / 耐火 / 检验检测,21W+ 英文学术论文 Markdown 化,跨语言语义检索)。用户找材料领域文献、特定学科论文、材料性能数据时使用;与 research(OpenAlex 外部库)互补,可并用 / 同时试。 +description: 查内部材料学科知识库(document_search API,7 个学科:胶凝 / 陶瓷 / 玻璃 / 晶体 / 复合 / 耐火 / 检验检测,100W+ 英文学术论文 Markdown 化,跨语言语义检索)。用户找材料领域文献、特定学科论文、材料性能数据时使用;与 research(OpenAlex 外部库)互补,可并用 / 同时试。 --- # Documents -部署在 `https://ai.ctc-zc.com:8100/api` 的文档检索 API。后端按 `kb_name` 分库存储 7 个材料学科库(中文命名:胶凝 / 陶瓷基 / 玻璃基 / 晶体材料 / 复合材料 / 耐火材料 / 检验检测,共 21W+ 文件),**文档主体是英文学术论文**(Elsevier 期刊为主,DOI 前缀文件名),每个文档带 `md_content`(整篇 Markdown,LLM 友好)+ 可选的原 PDF 下载。**API 后端有跨语言语义检索**,中英文 query 都能命中英文文档。本 skill 使用三个 host-side tool:`document_list_kb` / `document_search` / `document_download`,**不要**自己 `httpx` 裸调,也不要在 `run_python` 里读 `DOCUMENT_SEARCH_API_KEY`。 +部署在 `https://ai.ctc-zc.com:8100/api` 的文档检索 API。后端按 `kb_name` 分库存储 7 个材料学科库(中文命名:胶凝 / 陶瓷基 / 玻璃基 / 晶体材料 / 复合材料 / 耐火材料 / 检验检测,共 100W+ 文件),**文档主体是英文学术论文**(Elsevier 期刊为主,DOI 前缀文件名),每个文档带 `md_content`(整篇 Markdown,LLM 友好)+ 可选的原 PDF 下载。**API 后端有跨语言语义检索**,中英文 query 都能命中英文文档。本 skill 使用三个 host-side tool:`document_list_kb` / `document_search` / `document_download`,**不要**自己 `httpx` 裸调,也不要在 `run_python` 里读 `DOCUMENT_SEARCH_API_KEY`。 > ⚠️ **配置条件**:只有宿主后端配置了 `DOCUMENT_SEARCH_API_KEY` 时,上述 tool 才会出现在可用工具列表里。若没有 `document_*` tool,降级走 `research` skill(OpenAlex + Sci-Hub,不受影响,中文 query 先转专业英文术语)/ 用户自己导出文档落 task 目录后用 `read` 工具读。**别让 LLM 误推**:research 跟本 skill 不同范式,research 不持 secret,任何模式都能用。 diff --git a/skills/patent/SKILL.md b/skills/patent/SKILL.md index 51bc7d8..adb2d09 100644 --- a/skills/patent/SKILL.md +++ b/skills/patent/SKILL.md @@ -57,7 +57,7 @@ markitdown https://example.com/ -o /source/外部.md 3. **执行检索**(优先级从高到低): - **`web_search`** —— 优先搜中国专利文库 / Google Patents / 期刊综述。query 里带 `site:patents.google.com` / `专利` / `CN10` 等限定符可显著提升信号 - **`web_fetch`** —— 命中的关键专利/论文页拉全文摘要 - - **`documents` skill** —— 本地材料学科库(7 个学科共 21W+ 论文)如果命中 + - **`documents` skill** —— 本地材料学科库(7 个学科共 100W+ 论文)如果命中 - **`research` skill** —— OpenAlex 学术文献库,找综述与对比方案 4. **每条命中归档** (写到 spec §4): - 公开号 / 标题 / 申请人 / 公开日 (专利) 或 DOI / 作者 / 期刊 / 年 (论文)