STORM是什么
STORM全称为Synthesis of Topic Outlines through Retrieval and Multi-perspective Question Asking,是斯坦福OVAL团队开发的开源知识整理系统。它会围绕主题检索网络资料、提出多视角问题、生成大纲并撰写带引用的长报告。
STORM主要服务于研究和写作前期,而不是直接交付可发表文章。官方明确提醒,生成结果通常仍需要大量编辑和事实核查。
STORM的工作流程
- 接收用户输入的研究主题。
- 查找相似主题文章并识别不同观点。
- 让虚拟作者从多个视角提出问题。
- 模拟作者与主题专家之间的连续访谈。
- 通过搜索引擎或自定义语料检索资料。
- 整理收集到的证据并生成层级大纲。
- 根据大纲和来源撰写完整文章。
- 补充引用、摘要并减少重复内容。
主要功能
- 从一个主题自动展开多轮网络研究。
- 通过不同人物视角扩大问题覆盖范围。
- 模拟访谈并根据新信息提出追问。
- 收集网页资料和可追溯引用。
- 把检索结果整理为层级式文章大纲。
- 生成维基百科风格的长篇报告。
- 分离研究、大纲、写作和润色四个模块。
- 允许替换语言模型、搜索引擎和向量检索器。
- 支持用用户自有文档构建VectorRM语料检索。
- 提供Python包、示例脚本和轻量Streamlit界面。
为什么采用多视角提问
只让模型直接列问题,容易停留在常见概念和表面信息。STORM会先查看相似主题的文章和人物视角,再让不同虚拟作者提出更有差异的问题。
- 发现主流叙述之外的利益相关者。
- 覆盖历史、技术、经济、伦理和社会影响。
- 减少只围绕用户最初措辞搜索的局限。
- 通过追问补充未知概念和证据空白。
- 为最终大纲提供更广泛的章节候选。
Co-STORM是什么
Co-STORM是在STORM基础上发展的协作式知识整理模式。它让用户、多个AI专家和一个主持智能体共同讨论主题,并持续维护动态思维导图。
| 角色 | 主要职责 |
|---|---|
| AI专家 | 基于外部资料回答问题或提出追问 |
| 主持智能体 | 发现尚未讨论的重要信息并提出启发式问题 |
| 人类用户 | 观察讨论或主动输入观点来调整研究方向 |
| 动态思维导图 | 把讨论内容整理为层级概念结构 |
Co-STORM的价值
- 用户不必等到最终报告才发现研究方向偏离。
- 可以在讨论中补充目标、约束和专业背景。
- 动态思维导图降低长时间讨论的认知负担。
- 主持智能体帮助发现已检索但尚未讨论的知识。
- 最终报告可以基于共同探索过程生成。
STORM与Co-STORM对比
| 维度 | STORM | Co-STORM |
|---|---|---|
| 工作方式 | 自动研究后生成文章 | 人类与多智能体共同探索 |
| 用户参与 | 主要提供主题和配置 | 可以在讨论中持续介入 |
| 知识结构 | 大纲和文章 | 动态思维导图、讨论和报告 |
| 适合任务 | 相对明确主题的快速综述 | 复杂、开放且需要逐步澄清的问题 |
| 主要输出 | 带引用的维基百科式文章 | 协作知识空间和最终报告 |
| 复杂度 | 较低 | 代理更多、调用更多、成本更高 |
在线研究预览使用教程
- 进入斯坦福STORM Research Preview。
- 阅读并接受当前服务条款。
- 输入范围明确、便于检索的研究主题。
- 补充希望了解的目标和排除范围。
- 等待系统检索、访谈和生成大纲。
- 查看报告结构以及每条引用来源。
- 打开原网页核对数字、日期和上下文。
- 把结果导出为研究初稿并进行人工改写。
怎样选择研究主题
- 使用具体对象、时间范围和研究问题。
- 避免只输入一个含义过宽的单词。
- 说明想比较的技术、政策、人物或方案。
- 写明需要历史、现状、争议还是未来趋势。
- 对快速变化的主题注明资料截止日期。
- 高风险主题要求优先使用一手来源。
- 将大问题拆成多个可独立核验的子问题。
适合哪些使用场景
- 学生为论文和课程作业建立研究框架。
- 研究人员快速了解陌生领域的概念与争议。
- 内容创作者收集背景资料和文章大纲。
- 产品经理研究市场、技术和用户问题。
- 政策与咨询人员整理多方观点和公开证据。
- 教师生成课程阅读提纲和讨论问题。
- 开发者搭建自定义深度研究与报告系统。
- 团队通过Co-STORM共同探索复杂主题。
不适合直接完成的任务
- 无需编辑即可发表的百科全书或正式论文。
- 要求穷尽全部文献的系统综述和Meta分析。
- 需要访问付费数据库、内部资料或不可公开网页的研究。
- 医学诊断、法律意见和个性化投资建议。
- 必须保证引用与论断逐句完全一致的高风险报告。
- 要求实时秒级新闻或完整社交媒体数据的监控。
- 没有人工审核的自动内容发布流水线。
价格与使用成本
斯坦福在线Research Preview没有公开会员价格,属于研究预览服务。它可能有使用限制、排队和条款要求,不能按商业SaaS理解为永久免费额度。
| 使用方式 | 软件价格 | 可能成本 |
|---|---|---|
| 斯坦福Research Preview | 未见公开收费 | 受研究服务容量和条款限制 |
| knowledge-storm Python包 | MIT开源免费 | 大模型、搜索、嵌入和服务器费用 |
| 源码自行部署 | MIT开源免费 | GPU或API、向量库、运维和安全成本 |
| 本地模型与本地语料 | 代码免费 | 硬件、存储、电力和维护成本 |
一次完整研究会产生多轮检索、问答、大纲、写作和润色调用,成本通常高于一次普通聊天。Co-STORM的多智能体讨论和思维导图还会增加调用次数。
支持的模型与检索器
knowledge-storm 1.1.0加入LiteLLM集成,可以连接LiteLLM支持的语言模型和嵌入模型。不同组件可以选择不同模型,在质量、速度和成本之间做分层配置。
| 组件 | 当前公开支持示例 |
|---|---|
| 语言模型 | LiteLLM支持的模型、OpenAI、Azure等 |
| 嵌入模型 | LiteLLM支持的嵌入服务 |
| 搜索检索 | You.com、Bing、Serper、Brave、DuckDuckGo、Tavily、Google等 |
| 自托管搜索 | SearXNG |
| 企业检索 | Azure AI Search |
| 自有语料 | VectorRM和向量数据库 |
本地部署教程
- 准备Python 3.11环境。
- 安装knowledge-storm包或克隆官方仓库。
- 选择语言模型、嵌入模型和搜索服务。
- 把API密钥保存到secrets配置或安全的环境变量。
- 运行官方STORM或Co-STORM示例脚本。
- 使用低风险主题检查研究、大纲和引用输出。
- 根据预算分别配置便宜模型和高质量写作模型。
- 生产使用前加入日志、限额、脱敏和错误处理。
模型分层建议
- 查询拆分和模拟对话可以使用更快、更便宜的模型。
- 大纲生成需要较强的结构化和全局理解能力。
- 文章生成应选择引用遵循和长文本能力更好的模型。
- 润色阶段要防止模型删除引用或新增无来源事实。
- 所有组件先小样本评估,再扩大并发和主题数量。
自有文档与私有知识库
VectorRM允许STORM基于用户提供的文档检索,而不是完全依赖公共搜索引擎。它适合内部资料、论文集合或经过审核的专业语料。
- 整理允许使用的文档和元数据。
- 去除重复、过时和权限不明的文件。
- 按项目要求切分文本并建立向量索引。
- 配置VectorRM连接向量数据库。
- 使用已知答案的问题测试召回率。
- 检查最终引用能否定位到原文段落。
- 设置文档权限、保留时间和删除流程。
引用为什么仍需核验
- 搜索结果可能来自低质量或过时网页。
- 网站可能拒绝抓取,导致正文无法解析。
- 引用页面存在不代表它支持附近的全部论断。
- 模型可能把多个来源信息错误合并。
- 网页更新后引用内容和日期可能变化。
- 二手报道可能误解论文、法律或官方数据。
- 生成文章可能遗漏反例和重要争议。
事实核查流程
- 逐段标记可以外部验证的事实性陈述。
- 打开对应引用并定位直接支持内容。
- 优先替换为论文、官方数据和原始文件。
- 对数字、日期、姓名和因果关系交叉核验。
- 寻找反面证据和相互矛盾的可靠来源。
- 删除没有来源或来源不支持的结论。
- 记录资料截止日期和仍不确定的问题。
隐私与数据安全
在线Research Preview需要把主题和交互发送给斯坦福托管服务,用户应阅读当前服务条款。研究项目还发布过由预览数据整理的WildSeek数据集,因此敏感主题不应提交到公共演示。
- 不要输入个人身份、客户秘密和未公开研究资料。
- 不要把API密钥写进代码仓库。
- 本地部署也要核对模型与搜索提供商的数据政策。
- 自有文档建立向量库前完成权限和脱敏。
- 日志可能包含查询、网页内容和生成文本。
- 对研究数据设置保留、删除和访问控制。
- 高敏感项目优先使用经过批准的本地组件。
产品优势
- 把检索、多视角提问、大纲和写作连接成完整流程。
- 模拟追问比一次搜索更容易发现知识空白。
- 最终文章包含引用,便于返回原始网页核验。
- 研究、大纲、写作和润色模块可以分别配置。
- Co-STORM支持用户在研究过程中主动引导。
- 动态思维导图适合复杂和长期讨论。
- 支持多种模型、搜索引擎和自有语料。
- MIT许可证便于研究、修改和二次开发。
- 论文、代码、数据集和复现实验资料相对完整。
使用限制与注意事项
- 官方明确表示结果通常不能直接发表。
- 引用存在不等于每条论断已经准确核验。
- 无法抓取的网页会产生403、解析失败或证据缺口。
- 研究质量高度依赖搜索引擎和语言模型。
- 多轮检索和生成可能产生较高API成本。
- 复杂主题可能形成冗长、重复或偏离重点的报告。
- 在线预览不是带服务承诺的商业产品。
- 自部署需要编程、密钥管理和基础设施能力。
- 动态网页、付费墙和非文本资料覆盖有限。
- 高风险领域必须由专业人员审核。
- 公开预览不适合敏感或保密主题。
- MIT代码许可不包含第三方模型和搜索服务费用或许可。
GitHub与开源状态
STORM与Co-STORM官方仓库由stanford-oval维护,采用MIT许可证。项目包含knowledge_storm核心包、STORM和Co-STORM示例、轻量前端、数据集与复现资料。
Python包可以直接安装,源码也允许修改。第三方大模型、搜索引擎、嵌入服务和抓取内容仍受各自条款约束,不能因为STORM代码开源就忽略这些限制。
基本信息
| 字段 | 内容 |
|---|---|
| 工具名称 | STORM / Co-STORM |
| 开发团队 | Stanford OVAL |
| 工具类型 | 知识整理、深度研究与长报告生成 |
| 核心方法 | 多视角提问、模拟访谈、检索增强和自动大纲 |
| 在线版本 | Research Preview |
| Python包 | knowledge-storm |
| 开源协议 | MIT |
| 价格 | 代码免费,模型与检索等资源另行计费 |
| 是否提供API | 提供Python接口,不是统一托管商业API |
| 主要输出 | 带引用长报告、讨论和动态思维导图 |
推荐指数
4.7 / 5。STORM把多视角检索与长报告写作做成了可研究、可扩展的开源流程,Co-STORM的人机协作也很有价值;但引用与事实仍需逐项核验,自部署成本和复杂度不低。
常见问题
STORM可以免费使用吗?
在线Research Preview没有公开会员收费,开源代码采用MIT许可证。自部署需要承担模型、搜索、嵌入、服务器和存储成本。
STORM生成的文章能直接发布吗?
不建议。官方明确表示通常需要大量编辑,引用、事实、结构和措辞都应人工检查。
STORM和Co-STORM有什么区别?
STORM偏自动研究和成文,Co-STORM让用户、AI专家和主持智能体共同讨论,并维护动态思维导图。
可以使用自己的文档吗?
可以。VectorRM支持把研究建立在用户提供的文档和向量库上。
支持本地模型吗?
架构允许替换模型组件,LiteLLM也扩大了兼容范围。具体本地模型需要根据上下文、质量和硬件单独测试。
为什么有时出现403错误?
部分网站拒绝抓取或页面解析失败,STORM会记录错误并跳过相关内容,这可能造成引用和信息覆盖缺口。
STORM提供商业API吗?
项目提供Python类和模块接口,但没有统一托管的商业API套餐。开发者需要自行接入模型与检索服务。
STORM开源吗?
开源。官方GitHub仓库和knowledge-storm代码采用MIT许可证。
桂公网安备45132202000164号