LangChain4j 项目概览

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


📋 项目简介

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

🎯 核心目标

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

🏗️ 项目架构图

LangChain4j 架构图 - 完整的模块依赖和功能分层

📦 功能模块详解

🧠 核心模块 (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 能力
  • 🔄 改进的性能和监控
  • 🔄 更好的多模态支持
目录
相关文章
|
9天前
|
监控 前端开发 JavaScript
HarmonyOSNext 崩溃急救指南:全局监听+同步退出 = 优雅保命!
本文介绍了HarmonyOS Next中Ark Ts的错误管理技巧,通过全局监听和同步退出机制实现应用崩溃保护。涵盖单线程、Promise及主线程卡死监控方案,并提供实战代码与避坑指南,帮助开发者优雅处理异常,保障用户体验。
119 65
|
17天前
|
人工智能 前端开发 搜索推荐
《网页滚动的“隐形指挥官”:overscroll - behavior属性全解析》
`overscroll-behavior` 属性是现代网页设计中的关键元素,可精细控制滚动行为,优化用户体验。它包含 `auto`、`contain` 和 `none` 三个核心值,分别实现默认滚动、限制事件传播和完全禁用边界行为的功能。通过解决多层滚动干扰、移动端弹性效果等问题,该属性提升了交互流畅性与沉浸感,同时减少性能开销。在复杂页面中,合理运用此属性能让滚动操作更加智能、独立,为用户带来高效且愉悦的体验,成为打造高品质网页不可或缺的工具。
66 31
|
24天前
|
IDE Java 数据挖掘
Java 基础类从入门到精通实操指南
这份指南专注于**Java 17+**的新特性和基础类库的现代化用法,涵盖开发环境配置、数据类型增强(如文本块)、字符串与集合处理进阶、异常改进(如密封类)、IO操作及实战案例。通过具体代码示例,如CSV数据分析工具,帮助开发者掌握高效编程技巧。同时提供性能优化建议和常用第三方库推荐,适合从入门到精通的Java学习者。资源链接:[点此下载](https://pan.quark.cn/s/14fcf913bae6)。
101 34
|
17天前
|
安全 druid Nacos
0 代码改造实现应用运行时数据库密码无损轮转
本文探讨了敏感数据的安全风险及降低账密泄漏风险的策略。国家颁布的《网络安全二级等保2.0标准》强调了企业数据安全的重要性。文章介绍了Nacos作为配置中心在提升数据库访问安全性方面的应用,并结合阿里云KMS、Druid连接池和Spring Cloud Alibaba社区推出的数据源动态轮转方案。该方案实现了加密配置统一托管、帐密全托管、双层权限管控等功能,将帐密切换时间从数小时优化到一秒,显著提升了安全性和效率。未来,MSE Nacos和KMS将扩展至更多组件如NoSQL、MQ等,提供一站式安全服务,助力AI时代的应用安全。
119 14
|
17天前
|
NoSQL IDE MongoDB
Studio 3T 2025.11 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
Studio 3T 2025.11 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
67 3
|
24天前
|
前端开发 JavaScript Java
Java 学习路线规划及项目案例中的技术栈应用解析
内容包括:**Java 17核心特性**(如sealed class、record)与模块化开发;Spring Boot 3 + Spring Cloud微服务架构,涉及响应式编程(WebFlux)、多数据库持久化(JPA、R2DBC、MongoDB);云原生技术**如Docker、Kubernetes及CI/CD流程;性能优化(GraalVM Native Image、JVM调优);以及前后端分离开发(Vue 3、Spring Boot集成)。通过全栈电商平台项目实战,掌握从后端服务(用户、商品、订单)到前端应用(Vue 3、React Native)的全流程开发。
58 9
|
24天前
|
消息中间件 Java 微服务
2025 版 Java 学习路线实战指南从入门到精通
《Java学习路线实战指南(2025版)》是一份全面的Java开发学习手册,涵盖基础环境搭建、核心语法与新特性、数据结构与算法、微服务架构、云原生技术栈、AI融合及项目实战。内容包括JDK安装配置、IntelliJ IDEA设置、Records类与模式匹配增强、LeetCode题解、Spring Cloud微服务开发、Kubernetes部署、OpenAI API调用等。结合在线商城系统案例,采用Vue 3、Spring Boot 3.5、MySQL、Elasticsearch等技术,提供从理论到实践的完整路径,助力开发者掌握2025年最新趋势与最佳实践。
125 4
|
9天前
|
人工智能 安全 Java
AI 播客 + AI 博客,Nacos3.0 首个线下沙龙回顾总结
本文介绍了如何利用 AI 工具高效总结线下活动内容,涵盖两种回顾形式:7 分钟音频总结与多视角文字总结,并探讨了如何通过大模型提取视频内容,助力活动复盘。
64 29