node-DeepResearch 开源AI Agent部署与使用
node-DeepResearch 是一款开源项目——AI Agent智能体,是开源复现版的OpenAI Deep Research,支持多步推理和复杂查询,今天我们一起来看下如何部署与使用该智能体。
快速概览
node-DeepResearch是一款开源的AI智能体项目,它以Gemini语言模型和Jina Reader工具为基石,具备强大的多步推理和复杂查询处理能力。其主要功能涵盖持续搜索与阅读、多步推理分析、实时进度反馈,以及支持灵活多样的查询方式。在技术原理上,Gemini语言模型担当核心,协同搜索引擎与Jina Reader完成网页内容处理工作。
深度解析(附运行示例)
node-DeepResearch究竟是什么
node-DeepResearch是一个开源性质的AI智能体项目,它的目标是通过不断地在网页上进行搜索和阅读,逐步推导并解答复杂问题。该项目依托Gemini语言模型和Jina Reader工具,无论是简单直白的问题,还是需要多步推理的复杂难题,都能妥善处理。同时,它还搭建了Web Server API,用户借助HTTP请求提交查询,就能实时获取进度更新。
node-DeepResearch的核心功能
- 持续搜索与阅读:借助如Brave或DuckDuckGo这类搜索引擎,查找相关信息,并深入阅读网页内容,直到找到问题答案,或者达到设定的token预算上限才停止。
- 多步推理:面对复杂的多步问题,它能够将问题逐步拆解,然后按步骤解决,展现出强大的逻辑分析能力。
- 实时进度反馈:通过Web Server API,用户可以随时查看查询的进展情况,获取实时的进度更新,不再对处理过程一无所知。
- 灵活的查询方式:无论是简单的事实性问题,还是像预测未来趋势、制定策略这类复杂的开放式问题,它都能应对自如。
node-DeepResearch的技术运作原理
- 语言模型:Gemini作为核心语言模型,在项目中发挥着关键作用,负责生成答案和构建推理逻辑。Gemini是一款功能强劲的通用语言模型,对多种自然语言任务都能轻松驾驭。
- 网页内容处理:Jina Reader工具在此承担重要职责,它能将网页内容转化为适合语言模型处理的纯文本格式。Jina Reader是一款开源工具,专门针对HTML网页内容处理进行了优化。
- 搜索与信息提取:依靠搜索引擎(例如Brave或DuckDuckGo)来获取相关信息。搜索引擎提供网页链接,智能体则基于对网页内容的阅读,精准提取出有用信息。
- 多步推理流程
- 初始化:预先设定好初始上下文和变量,为后续推理奠定基础。
- 预算检查:在推理的每一个步骤,都会检查token预算是否超出限制,确保资源合理使用。
- 生成提示:依据当前面临的问题,生成适合语言模型的输入提示,引导模型进行思考。
- 模型生成:调用Gemini模型,让其生成回答或者下一步的动作指令。
- 动作处理:根据Gemini生成的动作(比如搜索、访问网页、输出回答等),执行相应的实际操作。
- 结果评估:对生成的回答进行评估,判断其是否满足问题要求,如果不符合要求,则继续进行推理。
- 循环与终止:若在预算范围内找到了满意答案,就结束查询;若超出预算或者实在无法找到答案,便进入“Beast Mode”生成最终答案。
如何运行node-DeepResearch
1.安装依赖
首先要确保已经安装了Node.js和npm。接着,按以下步骤操作:
export GEMINI_API_KEY=... # 获取Gemini API密钥 export JINA_API_KEY=jina_... # 从https://jina.ai/reader获取免费的Jina API密钥 git clone https://github.com/jina-ai/node-DeepResearch.git cd node-DeepResearch npm install
2. 命令行运行方式
在命令行中输入指令,就能运行node-DeepResearch并提交查询获取结果:
npm run dev $QUERY
例如:
npm run dev "what is the capital of France?" npm run dev "who will be the biggest competitor of Jina AI"
3.使用Web Server API
1)启动Web Server:
npm run serve
服务器启动后,会在http://localhost:3000
运行,并提供以下API接口:
2)POST /api/v1/query:用于提交查询请求。
curl -X POST http://localhost:3000/api/v1/query -H "Content-Type: application/json" -d '{ "q": "what is the capital of France?", "budget": 1000000, "maxBadAttempt": 3 }'
3)GET /api/v1/stream/:requestId:连接到Server-Sent Events流,接收进度更新和最终答案。
curl -N http://localhost:3000/api/v1/stream/1234567890
4.借助Docker运行
1)构建Docker镜像:
docker build -t deepresearch:latest.
2)运行Docker容器:
docker run -p 3000:3000 --env GEMINI_API_KEY=your_gemini_api_key --env JINA_API_KEY=your_jina_api_key --env BRAVE_API_KEY=your_brave_api_key deepresearch:latest
3)使用Docker Compose:
docker-compose up
通过以上操作,就可以实现node-DeepResearch 开源AI Agent的部署与使用,赶紧去试试吧!