Abraxas-365/langchain-rust

🦜️🔗LangChain for Rust, the easiest way to write LLM-based programs in Rust

解决的问题

LangChain Rust 提供了一种使用 Rust 编程语言构建由大型语言模型(LLMs)驱动的复杂应用程序的方法。它将原始 LangChain 框架的可组合性和编排模式带到了高性能、类型安全的环境中。

工作原理

该库实现了一组可模块化组合的组件,这些组件可以“串联”起来创建复杂的 AI 工作流。它提供了以下标准化接口:

  • LLMs 和嵌入:与 OpenAI、Azure OpenAI、Ollama、Anthropic Claude、MistralAI 等提供商集成。
  • 向量存储:支持 OpenSearch、Postgres、Qdrant、Sqlite 和 SurrealDB 等数据库,实现嵌入的高效检索。
  • :预构建的 LLM 链、对话链、问答和基于 SQL 的交互逻辑。
  • 代理:可与 Google Search(Serpapi)、DuckDuckGo 和命令行等外部服务交互的工具型代理。
  • 文档加载器:用于从 PDF、HTML、CSV、Git 提交和源代码中摄取数据的工具。

适用人群

希望利用 Rust 的性能、安全性与并发优势,而非使用 Python 或 JavaScript 来构建 LLM 驱动应用的开发者。

主要亮点

  • 广泛的提供商支持:支持多种 LLM 和嵌入提供商,包括 Ollama 和 FastEmbed 等本地选项。
  • 可扩展的工具集:内置用于网络搜索、数学计算(Wolfram)和文本转语音的工具。
  • 语义路由:支持静态和动态路由,可根据语义方向查询。
  • 多样化的数据摄取:内置多种文件格式和源代码仓库的加载器。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目