跳到主要内容

LangChain 环境搭建

本章将详细介绍如何搭建 LangChain 的开发环境,包括 Python 环境配置、LangChain 安装以及各种模型提供商的 API 密钥获取。

Python 环境要求

版本要求

LangChain 需要 Python 3.10 或更高版本:

# 检查 Python 版本
python --version

# 推荐版本
# Python 3.10 - 3.12 稳定性较好
# Python 3.13+ 可能存在兼容性问题

创建虚拟环境

为什么需要虚拟环境?

虚拟环境可以隔离项目依赖,避免不同项目之间的包版本冲突。这是 Python 开发的最佳实践。

使用 venv(推荐)

# 创建虚拟环境
python -m venv langchain-env

# 激活虚拟环境
# Linux/Mac:
source langchain-env/bin/activate
# Windows:
langchain-env\Scripts\activate

# 退出虚拟环境
deactivate

使用 conda

# 创建环境
conda create -n langchain python=3.11

# 激活环境
conda activate langchain

# 退出环境
conda deactivate

安装 LangChain

基础安装

# 安装 LangChain 核心包
pip install langchain

安装模型集成包

LangChain 需要为不同的模型提供商安装相应的集成包:

# OpenAI 模型支持(必须)
pip install langchain-openai

# Anthropic 模型支持(必须)
pip install langchain-anthropic

# Google 模型支持
pip install langchain-google-genai

# AWS Bedrock 支持
pip install langchain-aws

# Ollama 本地模型支持
pip install langchain-ollama

安装所有集成(可选)

如果不想逐个安装,可以安装所有集成:

# 安装所有社区集成
pip install langchain-community

预发布版本

如果你想体验最新功能,可以安装预发布版本:

pip install --pre -U langchain

安装常用扩展

根据你的使用场景,可能还需要安装以下扩展:

RAG 相关

# 文档加载器
pip install langchain-community

# 文本分割
pip install langchain-text-splitters

# 向量存储
pip install langchain-pinecone langchain-milvus langchain-chroma

开发工具

# Jupyter 支持
pip install jupyter

# 日志和监控
pip install langsmith

环境变量配置

API 密钥获取

大多数 LLM 提供商都需要 API 密钥才能使用。以下是获取方式:

OpenAI

  1. 访问 OpenAI Platform
  2. 注册/登录账号
  3. 进入 API Keys 页面
  4. 创建新的 API Key

Anthropic

  1. 访问 Anthropic Console
  2. 注册/登录账号
  3. 进入 API Keys 页面
  4. 创建新的 API Key

Google

  1. 访问 Google AI Studio
  2. 创建 API Key

配置环境变量

Linux/Mac

# 写入 .bashrc 或 .zshrc
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
export GOOGLE_API_KEY="AIza..."

Windows

# 使用 set 命令(临时)
set OPENAI_API_KEY=sk-...

# 或写入系统环境变量
[System.Environment]::SetEnvironmentVariable("OPENAI_API_KEY", "sk-...", "User")

在代码中设置

import os

# 在代码中设置(不推荐,会泄露到版本控制)
os.environ["OPENAI_API_KEY"] = "sk-..."

# 更好的方式:使用 .env 文件
# 1. 安装 python-dotenv
pip install python-dotenv

# 2. 创建 .env 文件
# OPENAI_API_KEY=sk-...
# ANTHROPIC_API_KEY=sk-ant-...

# 3. 加载 .env 文件
from dotenv import load_dotenv
load_dotenv() # 默认读取 .env 文件

.env 文件示例

创建 .env 文件来管理敏感的配置信息:

# OpenAI
OPENAI_API_KEY=sk-xxxxx

# Anthropic
ANTHROPIC_API_KEY=sk-ant-xxxxx

# Google
GOOGLE_API_KEY=AIzaSyxxxxx

# Pinecone (向量数据库)
PINECONE_API_KEY=xxxxx

# LangSmith (可选,用于调试监控)
LANGSMITH_TRACING=true
LANGSMITH_API_KEY=ls-xxxxx
安全警告
  • 不要.env 文件提交到版本控制系统
  • .gitignore 中添加 .env
  • 生产环境使用环境变量或密钥管理服务

验证安装

基本验证

# 检查 LangChain 版本
import langchain
print(langchain.__version__)

快速测试

创建一个测试脚本来验证环境配置:

# test_env.py
from langchain.chat_models import init_chat_model
from langchain.schema import HumanMessage

# 初始化模型(以 OpenAI 为例)
try:
model = init_chat_model(
model="gpt-4o-mini",
model_provider="openai"
)

# 发送测试消息
response = model.invoke([HumanMessage(content="Hello, say 'OK' if you can hear me")])
print(f"响应: {response.content}")
print("环境配置成功!")

except Exception as e:
print(f"错误: {e}")
print("请检查 API Key 配置是否正确")

运行测试:

python test_env.py

如果看到 "环境配置成功!" 的消息,说明环境搭建完成。

LangSmith 配置(可选)

LangSmith 是 LangChain 官方提供的调试和监控工具,可以帮助你:

  • 可视化 Chain 的执行过程
  • 调试 Agent 行为
  • 评估输出质量

开启 LangSmith

# 设置环境变量
export LANGSMITH_TRACING=true
export LANGSMITH_API_KEY="ls-..."

或在代码中:

import os
os.environ["LANGSMITH_TRACING"] = "true"
os.environ["LANGSMITH_API_KEY"] = "ls-..."

访问 LangSmith

  1. 访问 LangSmith
  2. 注册账号
  3. 创建项目
  4. 查看 traces

常见问题

1. 导入错误

ModuleNotFoundError: No module named 'langchain'

解决:确保虚拟环境已激活,然后重新安装:

pip install langchain

2. API 密钥错误

AuthenticationError: Invalid API Key

解决

  • 检查 API Key 是否正确
  • 检查环境变量是否设置正确
  • 确认 API Key 有足够的余额

3. 网络问题

在中国大陆使用 OpenAI API 可能需要配置代理:

import os
os.environ["OPENAI_PROXY"] = "http://127.0.0.1:7890"

4. 版本兼容问题

如果你使用的代码是基于旧版本 LangChain v0.x 编写的,可能会出现 API 不兼容的问题:

# 查看当前版本
pip show langchain

# 安装特定版本
pip install langchain==0.3.0

项目结构建议

一个典型的 LangChain 项目结构:

my-langchain-app/
├── .env # 环境变量
├── .gitignore # 忽略敏感文件
├── requirements.txt # 依赖列表
├── app.py # 主应用
├── chains/ # Chain 定义
│ └── qa_chain.py
├── agents/ # Agent 定义
│ └── assistant.py
├── tools/ # 工具定义
│ └── custom_tools.py
├── memory/ # 记忆组件
│ └── conversation.py
└── tests/ # 测试
└── test_app.py

requirements.txt 示例

langchain>=0.3.0
langchain-openai>=0.2.0
langchain-community>=0.3.0
langchain-text-splitters>=0.3.0
python-dotenv>=1.0.0

下一步

环境搭建完成后,接下来学习: