storm

输入主题,自动生成带引用的长文报告

STORM是一个基于大语言模型的知识整理系统,能够针对用户给定的主题进行自主研究,并生成带有引用的完整长篇报告。它通过多智能体协作模拟人类写作流程,包括资料收集、大纲生成、文章撰写和引用标注等环节,帮助用户快速获取结构化的深度内容,解决了传统信息检索中资料分散、整合耗时的问题。核心能力包括自动搜索网络资料、生成带引用的报告、支持自定义模型和检索接口,适用于学术研究、市场分析、技术调研等场景。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 31469
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队stanford-oval
所属国家
定价模式free
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议MIT
主要语言Python
技术栈/模型agentic-rag,deep-research,emnlp2024,knowledge-curation,large-language-models,naacl,nlp,report-generation,retrieval-augmented-generation
GitHub 星标★ 31469
30天Star增速
HF 下载量
上线时间2024-03-24 00:00:00
最近更新2026-09-22 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数3

使用教程

难度:进阶 约 15 分钟 部署方式:库/依赖 5 步

环境要求

  • Python 3.11(README 源码安装示例使用 conda create -n storm python=3.11)
  • OpenAI API Key(用于语言模型与 openai 类型的编码器)
  • 可访问 GitHub、LLM 接口与检索服务的网络环境
  • 可选:Conda(用于创建独立环境)
  • 可选:Bing Search 或 You.com 检索 API Key(使用对应检索器时需要)

安装与启动步骤

  1. 1安装 STORM 库

    最简单的方式:直接通过 pip 安装官方发布的 knowledge-storm 包,作为依赖在代码中调用。

    pip install knowledge-storm
  2. 2克隆源码仓库

    若想修改 STORM 引擎行为,则克隆源码到本地并进入 storm 目录。

    git clone https://github.com/stanford-oval/storm.git
    cd storm
  3. 3创建 Python 环境

    README 示例使用 Python 3.11,建议用 conda 建独立环境避免依赖冲突。

    conda create -n storm python=3.11
    conda activate storm
  4. 4安装项目依赖

    在已激活的 storm 环境中安装 requirements.txt 列出的全部依赖包。

    pip install -r requirements.txt
  5. 5写入 API 密钥

    在项目根目录新建 secrets.toml,填入语言模型与检索服务的密钥。

    # secrets.toml
    OPENAI_API_KEY="your_openai_api_key"
    BING_SEARCH_API_KEY="your_bing_search_api_key"
    ENCODER_API_TYPE="openai"

关键配置

配置项必填说明示例
OPENAI_API_KEY是语言模型与编码器调用的 OpenAI 密钥your_openai_api_key
BING_SEARCH_API_KEY否使用 BingSearch 检索器时需要的密钥your_bing_search_api_key
ENCODER_API_TYPE否编码器类型,使用 OpenAI 编码器时填 openaiopenai
YDC_API_KEY否YouRM 检索器所需的 You.com API 密钥your_ydc_api_key

如何确认成功

能成功 import knowledge_storm 并运行 examples 目录下的示例脚本、正常产出带引用的报告即安装成功。

常见问题

Q:pip 安装与克隆源码有什么区别?

A:pip install knowledge-storm 适合直接当库使用;克隆源码则可自行修改 STORM 引擎的行为。

Q:必须用 OpenAI 的模型吗?

A:不强制。v1.1.0 起集成了 litellm,可切换其他语言与嵌入模型;但示例配置默认使用 OPENAI_API_KEY。

Q:检索资料从哪里来?

A:支持 YouRM、BingSearch 等搜索引擎,也可用 VectorRM 基于用户自己提供的文档进行检索。

Q:对 Python 版本有要求吗?

A:README 源码安装示例使用 python=3.11,建议按此版本创建 conda 环境以免依赖冲突。

注意事项

  • secrets.toml 含密钥,不要提交到公开仓库。
  • STORM 与 Co-STORM 分别使用 STORMWikiRunner 和 CoStormRunner,参数不同请对应参考。
  • runner.run 的 do_research、do_generate_outline、do_generate_article、do_polish_article 置 False 可复用已有结果。
  • 调用 LLM 与检索服务会产生网络请求和费用,注意控制 top_k 等参数。

核心亮点

  • 多智能体协作模拟真实研究流程,报告结构完整
  • 自动引用来源,保证内容可追溯
  • 支持自定义LLM和检索器,灵活集成到现有工作流

不足之处

  • 依赖外部搜索API,可能产生额外成本
  • 生成报告质量受限于模型和检索源质量

适用场景

  • 学术文献综述初稿生成
  • 行业研究报告快速起草
  • 技术趋势调研与资料整理

替代项目

AutoGen、LangChain、Haystack

项目介绍

storm 是搜索知识领域的开源项目,由 stanford-oval 开发,2024 年首次发布。

在全站 13,109 个收录项目中,它的 GitHub 星标数(31,469)位列前 2%,在搜索知识分类的 586 个项目里位列前 3%。

近 41 天,它的 GitHub 星标从 30,940 增加到 31,469,净增 529。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-22。MIT许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:学术文献综述初稿生成。同类可对比的替代方案包括 AutoGen、LangChain、Haystack。

上一篇:Medical-Graph-RAG

下一篇:ChatKBQA

同类项目推荐

firecrawl 开源

网页抓取像喝水一样简单,开发者省下整周加班

The web data API to search, scrape, and interact at scale.

★ 183325 2026-08-09
contoso-chat 开源

一键跑通 Azure RAG 应用,从代码到评估部署全流程

This sample has the full End2End process of creating RAG application with Prompty an···

★ 766 2026-08-09
graphify 开源

整个代码库画成一张图,找问题一眼定位

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable k···

★ 120493 2026-08-09
WeKnora 开源

文档往里一扔,自动变成啥都能答的知识库

Open-source LLM knowledge platform: turn raw documents into a queryable RAG, an auto···

★ 28895 2026-08-09