LangChain4j 项目概览


📋 项目简介

LangChain4j 是一个专为 Java 开发者设计的大语言模型 (LLM) 集成框架,旨在简化 Java 应用程序与各种 LLM 提供商的集成过程。该项目受到 Python 的 LangChain、Haystack、LlamaIndex 等框架的启发,为 Java 生态系统提供了强大而统一的 LLM 工具链。

🎯 核心目标

  1. 统一 API 接口 🔄 – 为不同的 LLM 提供商和向量存储提供统一的接口
  2. 丰富的工具箱 🧰 – 提供从底层到高层的各种抽象和实现
  3. 大量示例 📚 – 通过丰富的示例帮助开发者快速上手

🏗️ 项目架构图

📦 功能模块详解

🧠 核心模块 (Core Modules)

模块功能描述状态
langchain4j-core🧠 提供所有核心接口、抽象类和基础功能✅ 稳定
langchain4j📦 主要的用户接口和高级功能实现✅ 稳定
langchain4j-test🧪 测试工具和模拟实现✅ 稳定
langchain4j-kotlin🔧 Kotlin 语言的专用扩展✅ 稳定

🤖 LLM 提供商集成 (Model Providers)

🌟 主流提供商

  • OpenAI 🤖
  • langchain4j-open-ai – 社区版本
  • langchain4j-open-ai-official – 官方 SDK 版本
  • Microsoft Azure ☁️
  • langchain4j-azure-open-ai – Azure OpenAI 服务
  • Google 🔍
  • langchain4j-vertex-ai – Vertex AI 平台
  • langchain4j-vertex-ai-gemini – Gemini 模型专用
  • langchain4j-google-ai-gemini – Google AI Gemini
  • Amazon 🏔️
  • langchain4j-bedrock – AWS Bedrock 服务

🚀 新兴提供商

  • Anthropic 🎭 – Claude 系列模型
  • Mistral AI 🌪️ – 开源和商用模型
  • Cohere 🤝 – 企业级 NLP 服务
  • Ollama 🦙 – 本地模型运行
  • Hugging Face 🤗 – 开源模型生态

🌐 其他集成

  • GitHub Models 🐙 – GitHub 提供的模型服务
  • Workers AI ⚡ – Cloudflare Workers AI
  • Local AI 🏠 – 本地 AI 服务
  • OVH AI 🇫🇷 – OVH 云服务
  • Jina AI 🔍 – 专业搜索和嵌入服务

📊 向量存储集成 (Embedding Stores)

🏢 企业级解决方案

  • Pinecone 🌲 – 托管向量数据库
  • Milvus 🗄️ – 开源向量数据库
  • Weaviate 🕸️ – 图形向量数据库
  • Qdrant ⚡ – 高性能向量搜索引擎

☁️ 云服务集成

  • Azure AI Search 🔍 – Microsoft 认知搜索
  • Azure Cosmos DB 🌌 – MongoDB vCore 和 NoSQL 版本
  • MongoDB Atlas 🍃 – 托管 MongoDB 向量搜索

🗄️ 传统数据库扩展

  • PostgreSQL (pgvector) 🐘 – 关系型数据库向量扩展
  • Elasticsearch 🔍 – 全文搜索引擎向量功能
  • OpenSearch 📖 – 开源搜索和分析引擎
  • Oracle Database 🏛️ – 企业级数据库
  • MariaDB 🐬 – MySQL 兼容数据库

📱 其他存储方案

  • Cassandra 💎 – 分布式 NoSQL 数据库
  • Couchbase 🏺 – 文档数据库
  • Infinispan ♾️ – 内存数据网格
  • Coherence 🔗 – Oracle 数据网格
  • Vespa 🛵 – 大规模数据服务引擎
  • Tablestore 📋 – 阿里云表格存储

📄 文档处理管道 (Document Processing)

🌐 扩展功能模块

🔍 网络搜索引擎

  • Google Custom Search 🔍 – 自定义搜索 API
  • Tavily 🏄 – AI 优化的搜索服务
  • SearchAPI 🔎 – 统一搜索接口

⚙️ 代码执行引擎

  • GraalVM Polyglot 🌐 – 多语言运行时
  • Judge0 ⚖️ – 在线代码执行服务

🎯 高级功能

  • Easy RAG 📚 – 简化的检索增强生成
  • MCP (Model Context Protocol) 🔗 – 模型上下文协议
  • SQL Integration 🗃️ – 实验性 SQL 集成

🔄 模块依赖关系

🚀 快速开始

Maven 依赖配置

<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j</artifactId>
    <version>1.2.0-beta8-SNAPSHOT</version>
</dependency>

<!-- 选择一个 LLM 提供商 -->
<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j-open-ai</artifactId>
    <version>1.2.0-beta8-SNAPSHOT</version>
</dependency>

<!-- 选择一个向量存储 -->
<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j-pinecone</artifactId>
    <version>1.2.0-beta8-SNAPSHOT</version>
</dependency>

使用 BOM 管理版本

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>dev.langchain4j</groupId>
            <artifactId>langchain4j-bom</artifactId>
            <version>1.2.0-beta8-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

📚 主要特性

🎯 核心功能

  • 统一的 LLM 接口 – 支持 15+ 主流 LLM 提供商
  • 向量存储集成 – 支持 15+ 向量数据库和搜索引擎
  • RAG 支持 – 完整的检索增强生成管道
  • 工具调用 – Function calling 和 Agent 模式
  • 内存管理 – 对话历史和上下文管理
  • 流式响应 – 实时流式输出支持

🔧 开发体验

  • 🌟 Spring Boot 集成 – 官方 Spring Boot Starter
  • 🌟 Quarkus 集成 – 原生支持 Quarkus 框架
  • 🌟 丰富示例 – 详细的使用示例和最佳实践
  • 🌟 类型安全 – 完整的 Java 类型支持
  • 🌟 异步支持 – CompletableFuture 和响应式编程

🛣️ 发展路线

当前状态 (v1.2.0-beta8)

  • ✅ 核心功能稳定
  • ✅ 主要 LLM 提供商支持
  • ✅ 完整的向量存储生态
  • ✅ 文档处理管道

未来计划

  • 🔄 更多 LLM 提供商集成
  • 🔄 增强的 Agent 能力
  • 🔄 改进的性能和监控
  • 🔄 更好的多模态支持