☰
Deep Agents 部署指南:10 分钟跑通最小版本,单服务器上线 Deep Research
2026/10/7 10:21:36 网站建设 项目流程

Deep Agents 部署指南:10 分钟跑通最小版本,单服务器上线 Deep Research

【免费下载链接】deepagentsThe batteries-included agent harness.项目地址: https://gitcode.com/GitHub_Trending/de/deepagents

Deep Agents 是基于 LangChain / LangGraph 的智能体框架,内置规划、文件系统、子代理委派与上下文管理。本文按部署路径分轨:本地 10 分钟跑通终端最小版,单服务器部署完整的 Deep Research 示例,生产侧覆盖依赖锁定、开机自启、追踪与调优四个检查点。

三条部署路径怎么选

做完这节,你会得到对号入座的结论:只读下文对应小节,其余跳过。

路径运行形态部署动作量适用人群
本地尝鲜dcode 终端智能体,单进程1 条安装命令 + 1 个模型密钥想先看效果、验证模型接入的开发者
单服务器落地LangGraph 本地服务器 + Deep Research 示例3 个密钥 + 1 次uv sync需要常驻跑研究任务的运维与开发者
生产部署锁定依赖 + systemd + 追踪在第 2 节基础上加 4 个检查点面向团队或对外提供服务的场景

⚠️ 三条路径共同前置:Python ≥ 3.11(各包requires-python声明为>=3.11),以及至少一个支持工具调用的模型 API 密钥。

10 分钟跑通终端最小版

做完这节,你会得到一个能直接对话的终端智能体 dcode,并用一条非交互命令验证它可用。

先确认 Python 版本:

python3 -V

安装 dcode(Deep Agents Code,预构建的终端编码智能体):

curl -LsSf https://langch.in/dcode | bash

该脚本默认带上 OpenAI、Anthropic、Gemini 三家模型客户端,按你使用的模型商设置对应密钥,例如:

export ANTHROPIC_API_KEY=你的密钥

启动交互式 TUI,输入任务(如 "Summarize the README in this repo"),看流式输出,Ctrl+C中断:

dcode

非交互验证(脚本与 CI 场景):

dcode -p "Say OK if the harness works."

期望返回模型文本输出且进程正常退出。dcode 还支持--headless等参数用于脚本化,deepagents --version类自检可用dcode --help查看完整参数。若只打算以编程方式搭自己的 agent,可跳过 dcode,直接uv add deepagents并调用create_deep_agent(...),见 libs/deepagents/ 包源码。

本节约:10 分钟,一条安装命令加一个密钥。

单服务器落地:部署 Deep Research 示例

做完这节,你会得到一台能常驻运行的深度研究服务:提交问题 → 规划 → 委派子代理搜索 → 合成报告,全程在浏览器可见。

安装 uv 并克隆仓库:

curl -LsSf https://astral.sh/uv/install.sh | sh git clone https://gitcode.com/GitHub_Trending/de/deepagents cd deepagents/examples/deep_research

安装示例依赖:

uv sync

uv sync会在该目录生成.venv,并严格按 pyproject.toml 声明安装 deepagents、langgraph-cli、tavily 等依赖。创建.env(langgraph.json已声明"env": ".env"):

# .env ANTHROPIC_API_KEY=你的密钥 TAVILY_API_KEY=你的密钥 LANGSMITH_API_KEY=你的密钥 LANGSMITH_TRACING=true

密钥用途:ANTHROPIC 驱动默认模型 Claude Sonnet 4.5,TAVILY 驱动网页搜索,LANGSMITH 用于追踪(可选,生产建议保留)。启动服务器:

uv run langgraph dev

langgraph dev读取 langgraph.json 中的图入口./agent.py:agent,默认监听 2024 端口并自动打开 Studio 网页;换端口加--port 2025。提交一个研究问题,观察 agent 规划任务、派发 research-agent 子代理、调用tavily_search并输出最终报告。

本节约:3 个密钥,一条uv sync,浏览器里可交互的研究服务。

生产加固:锁定依赖、常驻服务与可观测

做完这节,你会得到四个可验收项:依赖版本锁死、服务重启后自动拉起、每次运行有追踪记录、并发参数受控。

依赖锁定。示例目录执行uv lock生成uv.lock并提交版本库;部署机上用uv sync按锁文件安装,保证构建可复现。pyproject.toml里已有override-dependencies处理已知 CVE,升级依赖时先跑uv sync验证。

密钥管理。.env建议chmod 600,密钥只在这一个文件里维护,服务单元通过EnvironmentFile引用。

systemd 服务化。创建/etc/systemd/system/deep-research.service:

[Unit] Description=Deep Research LangGraph Server After=network.target [Service] User=deepagent WorkingDirectory=/opt/deepagents/examples/deep_research EnvironmentFile=/opt/deepagents/examples/deep_research/.env ExecStart=/opt/deepagents/examples/deep_research/.venv/bin/uv run langgraph dev Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target

Restart=on-failure负责开机后崩溃自愈,配合下面两条命令启用开机自启:

systemctl daemon-reload systemctl enable --now deep-research

日志与追踪。journalctl -u deep-research -f看进程日志;.env中LANGSMITH_TRACING=true让每次运行生成 trace,用于定位慢请求和工具调用失败。

调优。examples/deep_research/agent.py 顶部两个常量控制成本:

参数示例默认生产建议说明
max_concurrent_research_units31~2并发子代理数,直接决定 API 并发开销
max_researcher_iterations32单个子代理最大迭代轮数

模型温度示例中已固定为 0,保持即可;限流场景再把并发降到 1。

本节约:uv.lock+ systemd 单元 + trace + 两个并发参数。

选读:切换模型与注册自定义工具

做完这节,你会得到把默认 Claude 换成 Gemini、并给自己的 agent 加工具的改法。

切换模型:模型参数接受任意 LangChain chat model 对象,示例中 Claude 与 Gemini 的切换写法在 examples/deep_research/agent.py 第 48~51 行:

from langchain_google_genai import ChatGoogleGenerativeAI from deepagents import create_deep_agent agent = create_deep_agent( model=ChatGoogleGenerativeAI(model="gemini-3-pro-preview", temperature=0.0), )

注册自定义工具:参考 examples/deep_research/research_agent/tools.py 中tavily_search的写法,用 LangChain 工具装饰器定义函数后,同时加入主 agent 与子代理的tools列表:

from langchain.tools import tool @tool def lookup_price(symbol: str) -> str: """查询股票报价。""" ... agent = create_deep_agent( model=model, tools=[lookup_price], subagents=[{"name": "researcher", "tools": [lookup_price], ...}], )

子代理定义见 agent.py 中的research_sub_agent字典,结构即name/description/system_prompt/tools四键。

本节约:模型与工具都是构造参数,改参数不改框架。

排错速查

症状原因动作
启动即报缺ANTHROPIC_API_KEY或 401密钥未设或失效核对.env中export值;echo $ANTHROPIC_API_KEY确认非空
Studio 打不开,端口报错2024 被占用--port 2025换端口启动
uv sync解析冲突锁文件与依赖声明不同步重新uv lock后uv sync,必要时重建.venv
流式输出中断模型侧过载断流保持客户端默认重试逻辑,不要手动关重试
搜索返回 403目标站点反爬工具侧已带 UA 抓正文(见tavily_search),持续 403 换用代理或放弃该源
子代理并发超限被限流并发参数偏高下调max_concurrent_research_units

本节约:按症状对表,先定边界再动手。

收尾

一条uv sync、一个.env、一个 systemd 单元,Deep Agents 就能从本机 demo 走到常驻服务;先锁依赖,再谈扩展。

  • 框架入口与导出清单:libs/deepagents/deepagents/init.py
  • 生产参考实现:examples/deep_research/agent.py
  • 示例总目录:examples/

【免费下载链接】deepagentsThe batteries-included agent harness.项目地址: https://gitcode.com/GitHub_Trending/de/deepagents

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询