davidmigloz/langchain_dart

Build LLM-powered Dart/Flutter applications.

What it solves

LangChain.dart 是 LangChain 框架的非官方 Dart 移植版,旨在将大型语言模型(LLM)的力量带入 Dart 与 Flutter 生态系统。它解决了这些语言中缺乏简化构建 LLM 驱动应用(如聊天机器人、带 RAG 的问答系统和自主代理)复杂性的库的问题。

How it works

项目组织为模块化的包系统,开发者可以根据需求导入:

  • Model I/O:提供统一的 API 与多种 LLM 提供商(OpenAI、Google、Mistral、Ollama 等)交互,并附带提示模板和输出解析工具。
  • Retrieval:处理用户数据的加载、拆分、嵌入和存储到向量存储,以实现 Retrieval‑Augmented Generation(RAG)。
  • Agents:允许创建使用 LLM 决定使用哪种工具(如网页搜索或计算器)完成任务的“机器人”。
  • LangChain Expression Language (LCEL):一种将这些不同组件组合成复杂链的方式。

Who it’s for

适用于使用 Dart 与 Flutter 构建应用的开发者,想要集成 LLM 并创建高级 AI 功能,而无需为每个提供商编写底层 API 调用。

Highlights

  • Modular Design:核心抽象、高层链、社区集成和特定提供商 SDK 各自分离为独立包。
  • Wide Integration Support:支持众多提供商,包括 OpenAI、Google(Gemini/Vertex AI)、Anthropic、Mistral 和 Ollama。
  • Vector Store Support:集成 Chroma、Pinecone 和 Supabase。
  • Unified API:让开发者只需最小的代码更改即可在不同 LLM 提供商之间切换。