Architecture

Architecture #

https://python.langchain.com/docs/concepts/#architecture

LangChain作为一个框架由多个包组成。

langchain-core #

此包包含不同组件的基本抽象和组合方式。核心组件(如LLMs、向量存储vector stores、检索器retrieval等)的接口在此定义,没有第三方集成。依赖项保持极轻量级。

langchain #

主langchain包包含构成应用认知架构的链chains、代理agents和检索策略retrieval strategies。这些不是第三方集成。这里的所有链、代理和检索策略都不是针对特定集成的,而是通用的。

langchain-community #

此包包含由LangChain社区维护的第三方集成。关键合作伙伴包被分开(见下文)。此包包含各种组件(LLMs、向量存储、检索器)的所有集成。该包中的所有依赖项都是可选的,以保持包尽可能轻量。

Partner packages(合作伙伴包) #

虽然大多数集成在langchain-community中,我们将流行的集成分成自己的包(例如langchain-openailangchain-anthropic等)。这样做是为了提高对这些重要集成的支持。

langgraph #

langgraph是langchain的扩展,旨在通过将步骤建模为图中的边和节点,构建强大且有状态的多参与者应用程序。

LangGraph提供用于创建常见类型代理的高级接口,以及用于组合自定义流程的低级API。

langserve #

一个将LangChain链部署为REST API的包。使得生产就绪的API快速启动变得简单。

LangSmith #

一个开发者平台,允许你调试、测试、评估和监控LLM应用。

langchain-stack.png

© 2024 青蛙小白