老铁们,今天我们来聊聊LangChain的仓库结构。如果你打算为LangChain贡献代码或文档,那理解仓库的高层次结构会非常有帮助。LangChain被组织成一个monorepo,里面包含了多个软件包。你可以查看安装指南了解更多关于它们如何协同工作。
仓库结构
让我们通过树状结构来可视化展示:
.
├── cookbook # 教程和示例
├── docs # 包含文档内容,参见: https://python.langchain.com/
├── libs
│ ├── langchain
│ │ ├── langchain
│ │ ├── tests/unit_tests # 单元测试(各个包中都有,简化展示)
│ │ ├── tests/integration_tests # 集成测试(各个包中都有,简化展示)
│ ├── community # 第三方集成
│ │ ├── langchain-community
│ ├── core # 核心接口和关键抽象
│ │ ├── langchain-core
│ ├── experimental # 实验性组件和链
│ │ ├── langchain-experimental
| ├── cli # 命令行界面
│ │ ├── langchain-cli
│ ├── text-splitters
│ │ ├── langchain-text-splitters
│ ├── standard-tests
│ │ ├── langchain-standard-tests
│ ├── partners
│ ├── langchain-partner-1
│ ├── langchain-partner-2
│ ├── ...
│
├── templates # 易于部署的参考架构集合,用于多种任务。
根目录文件
根目录还包含以下文件:
pyproject.toml
: 构建文档和文档格式化的依赖。Makefile
: 包含构建、格式化和文档的快捷方式。
其他文件在根目录级别存在,但自不必细说,欢迎自由浏览!
文档部分
/docs
目录中包含展示在 LangChain 文档网站上的内容,以及相关的 API 参考。查看文档贡献指南了解如何为文档做贡献。
代码部分
/libs
目录中包含LangChain软件包的代码。想要了解更多如何为代码做贡献,请查看以下指南:
- 代码: 学习如何在LangChain代码库中进行开发。
- 集成: 学习如何为
langchain-community
第三方集成贡献内容或启动一个新的合作伙伴包。 - 测试: 学习如何为这些包编写测试。
今天的技术分享就到这里,希望对大家有帮助。开发过程中遇到问题也可以在评论区交流~
—END—