闲社
标题:
【新手教程】LangChain 0.3 快速入门:从零构建你的第一个 AI Agent
[打印本页]
作者:
嗜血的兔子
时间:
昨天 06:35
标题:
【新手教程】LangChain 0.3 快速入门:从零构建你的第一个 AI Agent
LangChain 0.3 快速入门:从零构建你的第一个 AI Agent
一、前言
LangChain 作为最流行的 AI Agent 开发框架之一,在 2024 年底发布了 0.3 大版本,带来了全新的架构设计和更简洁的 API。对于刚接触 AI Agent 开发的新手来说,LangChain 0.3 是一个绝佳的入门选择。
本教程将手把手教你从零开始,用 LangChain 0.3 构建一个能联网搜索、能调用工具的简单 AI Agent。不需要任何前置经验,跟着做就行。
二、前置条件
Python 3.9 或更高版本
一个 OpenAI API Key(或其他 LLM 提供商的 API Key)
基础 Python 编程知识
稳定的网络环境(国内用户建议配置代理)
三、环境搭建
步骤 1:创建虚拟环境
# 创建项目目录
mkdir my-first-agent
cd my-first-agent
# 创建虚拟环境
python -m venv venv
# 激活虚拟环境
# Windows:
venv\Scripts\activate
# macOS/Linux:
source venv/bin/activate
复制代码
步骤 2:安装依赖
# 安装 LangChain 0.3 核心包
pip install langchain==0.3.0
# 安装 OpenAI 集成
pip install langchain-openai
# 安装社区工具包(包含搜索等工具)
pip install langchain-community
复制代码
步骤 3:配置 API Key
# 创建 .env 文件
echo "OPENAI_API_KEY=your_api_key_here" > .env
复制代码
四、构建第一个 Agent
步骤 1:导入必要模块
from langchain import hub
from langchain.agents import create_openai_functions_agent, AgentExecutor
from langchain_openai import ChatOpenAI
from langchain_community.tools import DuckDuckGoSearchRun
from dotenv import load_dotenv
# 加载环境变量
load_dotenv()
复制代码
步骤 2:定义工具
# 创建搜索工具
search = DuckDuckGoSearchRun()
# 工具列表
tools = [search]
复制代码
步骤 3:创建 Agent
# 加载预设的 prompt 模板
prompt = hub.pull("hwchase17/openai-functions-agent")
# 初始化 LLM
llm = ChatOpenAI(model="gpt-4o-mini", temperature=0)
# 创建 Agent
agent = create_openai_functions_agent(llm, tools, prompt)
# 创建执行器
agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)
复制代码
步骤 4:运行 Agent
# 测试 Agent
response = agent_executor.invoke({
"input": "2024年诺贝尔物理学奖得主是谁?请搜索最新信息。"
})
print(response["output"])
复制代码
五、完整代码示例
from langchain import hub
from langchain.agents import create_openai_functions_agent, AgentExecutor
from langchain_openai import ChatOpenAI
from langchain_community.tools import DuckDuckGoSearchRun
from dotenv import load_dotenv
load_dotenv()
# 工具
search = DuckDuckGoSearchRun()
tools = [search]
# Agent 配置
prompt = hub.pull("hwchase17/openai-functions-agent")
llm = ChatOpenAI(model="gpt-4o-mini", temperature=0)
agent = create_openai_functions_agent(llm, tools, prompt)
agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)
# 交互式运行
while True:
user_input = input("\n请输入问题(输入 quit 退出):")
if user_input.lower() == "quit":
break
response = agent_executor.invoke({"input": user_input})
print(f"\nAgent 回答:{response['output']}")
复制代码
六、运行验证
保存为 agent.py,运行:
python agent.py
复制代码
如果看到 Agent 的思考过程(Thought → Action → Observation → Final Answer),说明运行成功。
七、常见问题
Q: 提示 "No module named 'langchain'"?
A: 确认虚拟环境已激活,且 pip install 成功执行。
Q: API Key 报错?
A: 检查 .env 文件路径是否正确,或直接在代码中设置 os.environ["OPENAI_API_KEY"] = "your-key"。
Q: 搜索工具返回空结果?
A: DuckDuckGo 在国内可能不稳定,可尝试使用 BingSearch 或自定义搜索工具。
Q: 如何添加更多工具?
A: LangChain 社区提供了大量预置工具,如计算器、天气查询、数据库操作等,只需导入并加入 tools 列表即可。
Q: 0.3 和 0.2 版本有什么区别?
A: 0.3 版本统一了 Agent 创建接口,简化了工具调用流程,推荐使用新版本的 create_openai_functions_agent。
八、进阶方向
学习 LangGraph 构建复杂工作流
使用 LangSmith 调试和监控 Agent
接入自定义工具(如数据库查询、API 调用)
尝试其他 LLM 提供商(Claude、Gemini、本地模型)
九、总结
通过本教程,你已经成功搭建了一个能联网搜索的 AI Agent。LangChain 0.3 的 API 设计更加简洁,降低了新手入门门槛。
下一步建议:尝试给 Agent 添加更多工具,或者使用 LangGraph 构建多步骤的复杂工作流。
有问题欢迎在评论区交流!
欢迎光临 闲社 (https://www.xianshe.com/)
Powered by Discuz! X5.0