DeepAgents · 从入门到精通 目录

§02 五分钟跑通你的第一个 Agent

先给结论:装一个包,写十行代码,你的第一个深度代理就活了。

我用一个天气助手做例子。够简单,一眼看懂。

第一步:安装

pip install deepagents tavily-python
# 或用 uv
uv add deepagents tavily-python

tavily-python 是搜索工具,第三章实战会用到。先不装也行。

第二步:设 API Key

export ANTHROPIC_API_KEY="你的key"
# 用 OpenAI 就设 OPENAI_API_KEY

第三步:写第一个 Agent

from deepagents import create_deep_agent

def get_weather(city: str) -> str:
    """查询某个城市的天气。"""
    return f"{city} 永远是晴天!"   # 这里是假数据

agent = create_deep_agent(
    model="anthropic:claude-sonnet-4-6",  # provider:model 格式
    tools=[get_weather],                  # 挂上你的工具
    system_prompt="你是个乐于助人的助手",
)

result = agent.invoke(
    {"messages": [{"role": "user", "content": "旧金山天气怎么样?"}]}
)
print(result["messages"][-1].content)

跑一下。它会输出:"旧金山永远是晴天!"

就这?就这。

你没写任何规划逻辑。没写文件系统。没写上下文管理。 但这些能力,已经在那儿了。只是这个例子用不上。

标叔的经验:我第一次跑通时,愣了一下。十行代码,连 write_todos 都不用调,就有了一个能扩展的 Agent 底座。这种"默认即强大"的感觉,是 DeepAgents 最值钱的地方。

model 怎么写

注意 model="anthropic:claude-sonnet-4-6" 这个写法。 provider:model,冒号分隔。这是 DeepAgents 的约定。

它支持一大票模型:

model="anthropic:claude-sonnet-4-6"   # Anthropic
model="openai:gpt-5.4"                 # OpenAI
model="google_genai:gemini-3.1-pro-preview"  # Google
model="ollama:devstral-2"              # 本地 Ollama
model="deepseek:deepseek-v4-flash"     # DeepSeek

换模型,只改这一行。不用动其他代码。

标叔的结论:能用字符串写模型,就别手动 ChatOpenAI(...)。让框架替你初始化。后面 §19 会讲为什么。

下一章,我们看一次调用背后,框架到底帮你做了什么。