GPT Researcher 是一个开源的深度研究智能体,旨在针对任何给定任务进行网络和本地研究。
该智能体能生成详细、客观、有据可查的研究报告。GPT Researcher 提供了一套完整的自定义选项,以创建量身定制和特定领域的研究智能体。受近期 Plan-and-Solve 和 RAG 论文的启发,GPT Researcher 通过并行化智能体工作提供稳定的性能和更快的速度,解决了错误信息、速度、确定性和可靠性问题。
我们的使命是通过人工智能,为个人和组织提供准确、客观和真实的信息。
通过将 GPT Researcher 安装为 Claude Skill,扩展 Claude 的深度研究能力:
npx skills add assafelovic/gpt-researcher
安装后,Claude 可以直接在对话中利用 GPT Researcher 的深度研究能力。
核心思想是利用“规划器”和“执行器”智能体。规划器生成研究问题,而执行器智能体收集相关信息。然后,发布器将所有发现汇总成一份全面的报告。
步骤:
* 基于研究查询创建特定任务的智能体。
* 生成共同构成对任务客观看法的问题。
* 使用爬虫智能体为每个问题收集信息。
* 总结每个资源并追踪其来源。
* 过滤摘要并将其汇总成最终的研究报告。
请参阅 文档 以了解:
- 安装和设置指南
- 配置和自定义选项
- 操作示例
- 完整的 API 参考
克隆项目并进入目录:
bash
git clone https://github.com/assafelovic/gpt-researcher.git
cd gpt-researcher
通过导出或存储在 .env 文件中来设置 API 密钥。
bash
export OPENAI_API_KEY={在此输入您的 OpenAI API 密钥}
export TAVILY_API_KEY={在此输入您的 Tavily API 密钥}
(可选)为了增强追踪和可观测性,您还可以设置:
```bash
```
对于自定义的 OpenAI 兼容 API(例如,本地模型、其他提供商),您也可以设置:
bash
export OPENAI_BASE_URL={在此输入您的自定义 API 基础 URL}
安装依赖并启动服务器:
bash
pip install -r requirements.txt
python -m uvicorn main:app --reload
访问 http://localhost:8000 开始使用。
对于其他设置(例如,Poetry 或虚拟环境),请查看 快速开始页面。
pip install gpt-researcher
...
from gpt_researcher import GPTResearcher
query = "why is Nvidia stock going up?"
researcher = GPTResearcher(query=query)
# 对给定查询进行研究
research_result = await researcher.conduct_research()
# 撰写报告
report = await researcher.write_report()
...
更多示例和配置,请参考 PIP 文档 页面。
GPT Researcher 支持 MCP 集成,以连接专业数据源,如 GitHub 仓库、数据库和自定义 API。这使得能够结合网络搜索从数据源进行研究。
export RETRIEVER=tavily,mcp # 启用混合网络 + MCP 研究
from gpt_researcher import GPTResearcher
import asyncio
import os
async def mcp_research_example():
# 启用 MCP 与网络搜索
os.environ["RETRIEVER"] = "tavily,mcp"
researcher = GPTResearcher(
query="What are the top open source web research agents?",
mcp_configs=[
{
"name": "github",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {"GITHUB_TOKEN": os.getenv("GITHUB_TOKEN")}
}
]
)
research_result = await researcher.conduct_research()
report = await researcher.write_report()
return report
有关全面的 MCP 文档和高级示例,请访问 MCP 集成指南。
GPT Researcher 可以使用 Google 的 Gemini 模型(Nano Banana)自动生成 AI 创建的插图并嵌入到您的研究报告中。
# 在您的 .env 文件中启用
IMAGE_GENERATION_ENABLED=true
GOOGLE_API_KEY=您的_google_api_密钥
IMAGE_GENERATION_MODEL=models/gemini-2.5-flash-image
启用后,系统将:
1. 分析您的研究上下文以识别可视化机会
2. 在研究阶段预生成 2-3 张相关图像
3. 在撰写报告时将其内联嵌入
生成的图像采用与 GPT Researcher UI 匹配的深色模式样式,具有青色点缀的专业信息图美学。
在我们的文档中 了解更多关于图像生成的信息。
GPT Researcher 现在包含深度研究功能——一种先进的递归研究工作流,以智能体的深度和广度探索主题。此功能采用树状探索模式,深入挖掘子主题,同时保持对研究主题的全面视角。
o3-mini)在我们的文档中 了解更多关于深度研究的信息。
步骤 1 - 安装 Docker
步骤 2 - 克隆 '.env.example' 文件,将您的 API 密钥添加到克隆的文件中,并将文件保存为 '.env'
步骤 3 - 在 docker-compose 文件中,注释掉您不想用 Docker 运行的服务。
docker-compose up --build
如果不行,请尝试不带短横线运行:
docker compose up --build
步骤 4 - 默认情况下,如果您没有在 docker-compose 文件中取消注释任何内容,此流程将启动 2 个进程:
- 运行在 localhost:8000 的 Python 服务器
- 运行在 localhost:3000 的 React 应用
在任何浏览器中访问 localhost:3000,开始您的研究之旅!
您可以指示 GPT Researcher 基于您的本地文档运行研究任务。当前支持的文件格式有:PDF、纯文本、CSV、Excel、Markdown、PowerPoint 和 Word 文档。
步骤 1:添加环境变量 DOC_PATH,指向您的文档所在文件夹。
export DOC_PATH="./my-docs"
步骤 2:
- 如果您在 localhost:8000 上运行前端应用,只需从“报告来源”下拉选项中选择“我的文档”。
- 如果您使用 PIP 包 运行 GPT Researcher,在实例化 GPTResearcher 类时,将 report_source 参数传递为 "local"。代码示例在此。
我们已将 MCP 服务器移至专用仓库:gptr-mcp。
GPT Researcher MCP 服务器使像 Claude 这样的 AI 应用程序能够进行深度研究。虽然 LLM 应用程序可以通过 MCP 访问网络搜索工具,但 GPT Researcher MCP 能提供更深层、更可靠的研究结果。
功能特性:
- 为 AI 助手提供深度研究能力
- 通过优化上下文使用提供更高质量的信息
- 为 LLM 提供具有更好推理能力的全面结果
- Claude Desktop 集成
详细的安装和使用说明,请访问 官方仓库。
随着 AI 从提示工程和 RAG 发展到多智能体系统,我们很高兴推出使用 LangGraph 和 AG2 构建的多智能体助手。
通过使用多智能体框架,研究过程的深度和质量可以通过利用具有专业技能的多智能体得到显著提升。受近期 STORM 论文的启发,该项目展示了 AI 智能体团队如何协作对给定主题进行研究,从规划到发布。
平均运行会生成一份 5-6 页的研究报告,支持 PDF、Docx 和 Markdown 等多种格式。
请在此 查看,或前往我们的文档了解 LangGraph 和 AG2 的更多信息。
GPT Researcher 支持 LangSmith 以增强追踪和可观测性,使调试和优化复杂的多智能体工作流变得更加容易。
启用追踪:
1. 设置以下环境变量:
bash
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=您的_api_密钥
export LANGCHAIN_PROJECT="gpt-researcher"
2. 照常运行您的研究任务。所有基于 LangGraph 的智能体交互将自动在您的 LangSmith 仪表板中被追踪和可视化。
GPT-Researcher 现在拥有一个增强的前端,以改善用户体验并简化研究流程。前端提供:
提供两种部署选项:
1. 由 FastAPI 提供的轻量级静态前端
2. 功能丰富的 NextJS 应用程序,用于高级功能
有关前端的详细设置说明和更多信息,请访问我们的 文档页面。
我们非常欢迎贡献!如果您有兴趣,请查看 贡献指南。
请查看我们的 路线图 页面,并通过我们的 Discord 社区 联系我们,如果您有兴趣加入我们的使命。
本项目 GPT Researcher 是一个实验性应用程序,按“原样”提供,不作任何明示或暗示的保证。我们根据 Apache 2 许可证分享代码,仅供学术目的。此处内容并非学术建议,也不推荐用于学术或研究论文。
我们对无偏见研究主张的看法:
1. GPT Researcher 的主要目标是减少不正确和有偏见的事实。如何实现?我们假设抓取的网站越多,数据不正确的可能性就越小。通过为每项研究抓取多个网站,并选择最频繁出现的信息,它们全部出错的可能性极低。
2. 我们的目标不是消除偏见;我们的目标是尽可能减少偏见。我们作为一个社区,旨在找出最有效的人/LLM 交互方式。
3. 在研究中,人们也倾向于偏见,因为大多数人对他们研究的主题已经有了自己的看法。这个工具会抓取许多观点,并将平等地解释一个有偏见的人可能永远不会阅读的多样化观点。