STORM is a large language model system that researches topics and generates Wikipedia-style articles with citations.
The system addresses the challenge of producing long-form, well-cited articles by decomposing the task into two stages. Rather than directly generating articles, STORM first gathers information through multi-perspective question asking and retrieval-augmented generation, then synthesizes this research into structured outlines before producing the final article. The approach grounds outputs in retrieved sources, enabling citation of specific claims. A collaborative variant, Co-STORM, extends this by allowing humans to guide the research and curation process, supporting more aligned information seeking.
STORM suits projects requiring automated knowledge synthesis from web sources, particularly those where Wikipedia-style formatting and citations matter. The system works with multiple retrieval backends including search engines and user-provided document collections, and supports various language models through a unified interface. It is most useful for exploratory research, pre-writing stages, and knowledge exploration rather than as a replacement for human editorial work. The tool provides a Python package with customizable components, allowing developers to swap language models and retrieval sources according to their needs.
Development shows sustained activity with recent additions of model integration support through a third-party library, a minimal web interface for local development and demos, and expanded retrieval options including vector-based grounding on custom documents. The project maintains an active research connection with papers presented at major conferences and continues to refine its pipeline through code refactoring that emphasizes modularity and extensibility.