01 创建你的第一个Agent
近两年,AI Agent项目变得越来越炙手可热,在AI 编程领域有Qoder、Claude Code、Codex等一批非常好用的编程工具,极大的提高了程序员的工作效率。
在AI工作助手方向上,一只小龙虾在2026年引爆了全网,成为最火热的工作助手,甚至一度出现从孩子到老人排队在大厂楼下排队安装龙虾的盛况,它就是OpenClaw,而在今天主打“自我进化”与“持久记忆”的AI工作助手爱马仕Hermes又成为最受欢迎的开源项目。
本文就从介绍AI Agent开始,带大家一起系统学习全新的LangChain框架V1.x版本。
一、什么是Agent
LangChain官网明确的给出了Agent的定义:
Agent= Model + HarnessModel就是指AI 大模型(LLM),Harness可以理解成是Agent运行的一整套框架。
1.1 Harness是什么
Harness负责管理:大模型、Prompt提示词、context上下文、工具、记忆等等任务。
从本质上来说,在一个AI Agent系统中,大语言模型是大脑,Harness是由各个功能组织起来的一整套AI工程系统。
1.2 Agent的核心任务
Agent的核心任务就是完成一个循环:
1、根据用户请求去调用大模型,并且由大模型去判断是否工具
2、如需调用工具,则调用指定工具
3、再次调用大模型并携带工具调用结果,大模型会根据工具调用结果继续判断是否需要调用工具
4、反复执行循环直至任务完成,输出最终结果
整个流程如下图:

二、定义第一个Agent
2.1 安装uv
安装uv来来管理项目依赖。
MacOS安装命令
brew install uvWindows安装命令
winget install uv验证安装结果:
uv --version显示uv的版本信息说明uv安装成功。
uv --version
uv 0.11.17 (Homebrew 2026-05-28 x86_64-apple-darwin)2.2 指定python环境
首页,要求确保系统中安装了Python环境,并且LangChainV1.x要求Python的版本不低于3.11。
uv python install 3.11查看可以的python版本,有我们安装的3.11说明成功
uv python list2.2 安装LangChain依赖
初始化项目
uv init指定Python版本
uv venv --python 3.11安装LangChain相关依赖
uv add langchain deepagents
uv sync安装langchain-openai依赖
uv add langchain-openai安装加载env配置依赖
uv add python-dotenv2.3 PyCharm添加解释器
进入setting->Project->Python Interpreter-> Add Local Interpreter

选择刚刚用命令创建的venv环境

三、创建第一个Agent
首先,在项目根目录下创建.env文件,并填写OpenAI模型API KEY配置信息。
# OpenAI大模型
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxx
OPENAI_API_BASE=https://xxxxx/v1接下来,我们就可以使用LangChain提供的create_agent方法完成Agent的创建,通过系统提示词来指定,这个Agent是一个专门为程序员工作的AI助手,模型使用gpt-5.4,并为这个Agent添加一个获取最新资讯的工具。
之后,调用AI传入用户提问。
from dotenv import load_dotenv
load_dotenv()
from langchain.agents import create_agent
# 1.定义工具
def get_today_ai_news() -> str:
"""获取今天最新的AI资讯"""
return (
"1. Agent成为AI核心方向\n"
"2. GPT-5.5强化推理与编程\n"
"3. Claude新版本提升代码能力\n"
"4. Gemini升级多模态能力\n"
"5. AI正进入操作系统层"
)
# 2.创建Agent
agent = create_agent(model="openai:gpt-5.4",
system_prompt="你是一个专门为程序员工作的AI助手",
tools=[get_today_ai_news])
# 3.调用Agent
result = agent.invoke({"messages": [{"role": "user", "content": "今天有哪些热门AI资讯?"}]})
# 4.输出结果
print(result)执行结果如下,最终Agent通过工具调用生成了正确的结果.
[{'type': 'text', 'text': '今天的热门 AI 资讯有:\n\n1. Agent 成为 AI 核心方向 \n2. GPT-5.5 强化推理与编程 \n3. Claude 新版本提升代码能力 \n4. Gemini 升级多模态能力 \n5. AI 正进入操作系统层 \n\n如果你愿意,我还可以进一步帮你把这 5 条整理成:\n- 程序员视角解读\n- 每条新闻的影响分析\n- 适合发朋友圈/公众号的简讯版'}]在上面的案例中,我们使用了三个Agent的组件,下面将一一介绍它们的作用。
(1) Model(模型)
在创建Agent时,需要指定Agent使用的模型,通过provider:model(模型提供商:模型名称)来指定。
(2) tools (工具)
tools是提供给大模型调用的插件,模型就像是人类的大脑,光有大脑还是无法行动,而工具就像是人类的手和脚,协助大模型来完成各种各样的任务,比如:操作文件读写、获取天气信息、发送Email邮件等等。
tools可以是一个Python函数,也可以是通过LangChain定义的工具,工具调用在整个Agent 开发中非常重要。
(3) System Prompt(系统提示词)
系统提示词主要用于指定Agent的人格设定、风格、行为偏好以及一些特定规则。
四、总结
本文我们从零搭建了一个最基础的 LangChain Agent。
Agent 的本质可以概括为一句话:
Agent=LLM + Harness
其中 LLM 负责“思考”,Harness 负责包括工具调用、上下文管理和执行流程控制。
而 Agent 的运行机制,本质就是一个循环:思考 → 判断是否调用工具 → 执行工具 → 回传工具调用结果 → 再思考 → 直到完成任务。