LangChain 学习笔记 · Day 1 环境搭建

LangChain 开发环境搭建指南,包括 Python 环境配置、依赖安装和 Hello World 示例
8 分钟阅读
LangChainPython环境搭建Kimi大语言模型

🎯 学习目标

  1. 在 macOS 上搭建 Python 开发环境
  2. 创建虚拟环境(venv),并安装 LangChain 所需依赖
  3. 成功运行第一个 Hello World Demo(调用国产大模型 Kimi K2)

🛠️ 环境搭建

1. 安装 / 升级 Python

macOS 版本

  • macOS 自带 Python 3.9.6(过旧,会遇到 urllib3 / SSL 警告)
  • 通过 Homebrew 安装 Python 3.11:
    brew install python@3.11
    
  • 将 Homebrew Python 添加到 PATH:
    export PATH="/opt/homebrew/opt/python@3.11/libexec/bin:/opt/homebrew/opt/python@3.11/bin:$PATH"
    
  • 验证版本:
    python3 --version   # 期望输出 Python 3.11.x
    

Windows 版本

  • Python 官网 下载 Python 3.11+ 安装包
  • 安装时勾选 "Add Python to PATH" 选项
  • 或者手动添加 Python 到系统环境变量
  • 验证版本:
    python --version   # 期望输出 Python 3.11.x
    

2. 创建虚拟环境

macOS/Linux 版本

python3 -m venv .venv
source .venv/bin/activate

Windows 版本

python -m venv .venv
.venv\Scripts\activate

3. 安装依赖

macOS/Linux 版本

pip install -U pip
pip install langchain langchain-openai langchain-community chromadb tiktoken

Windows 版本

python -m pip install -U pip
python -m pip install langchain langchain-openai langchain-community chromadb tiktoken

📦 依赖说明

  • langchain:核心框架
  • langchain-openai:对接 OpenAI 协议(国产模型兼容接口也能用)
  • langchain-community:社区维护的加载器 & 工具
  • chromadb:轻量级向量数据库(后续做 RAG 用)
  • tiktoken:OpenAI 分词器,用于计算 token 数

✅ Hello World Demo

代码示例(Kimi K2)

from langchain.prompts import PromptTemplate
from langchain_openai import ChatOpenAI
from langchain_core.output_parsers import StrOutputParser

# 初始化 LLM(Kimi API)
llm = ChatOpenAI(
    model="kimi-k2-0711-preview",
    temperature=0.7,
    api_key="你的_KIMI_API_KEY",
    base_url="https://api.moonshot.cn/v1"
)

prompt = PromptTemplate(
    input_variables=["topic"],
    template="请用一句话总结:{topic}"
)

chain = prompt | llm | StrOutputParser()
print(chain.invoke({"topic": "LangChain 是什么?"}))

输出结果示例

LangChain 是一个开源框架,用于快速构建、链接和部署由语言模型驱动的端到端智能应用。

⚠️ 踩坑记录

  1. ModuleNotFoundError: No module named 'langchain_openai' → 解决:pip install langchain-openai
  2. NotOpenSSLWarning (LibreSSL 2.8.3) → 原因:macOS 自带 Python 使用 LibreSSL,不兼容 urllib3 v2 → 解决:升级到 Homebrew 的 Python 3.11(推荐)或降级 urllib3 (pip install urllib3<2)
  3. LangChainDeprecationWarning: LLMChain.run 已弃用 → 解决:改用 LCEL(prompt | llm | parser) + .invoke() 方式

📌 总结

  • 已完成 Day 1 环境准备 & Hello World
  • 掌握了虚拟环境的作用:隔离依赖、避免污染系统 Python
  • 学会了如何用 LangChain 对接国产大模型(Kimi K2)
  • 踩坑并解决了 Python 版本 / OpenSSL / LangChain API 变更的问题

⏭️ Day 2 展望

  • 深入学习 PromptTemplate 的更多用法
  • 编写一个简单的应用:邮件生成器 / 摘要器
  • 探索如何通过参数化模板提高 Prompt 的复用性