Java 企业里想接大模型,常常面临“没有地道(idiomatic)的 SDK”的尴尬:要么用通用 HTTP 调,要么借用 Python 生态绕一圈。LangChain4j 就是为 JVM 世界补齐这块短板——它把 LangChain 的理念用 Java 的方式重写,让企业框架(Spring Boot、Quarkus)能无缝接入 LLM、向量库与工具调用(含 MCP)。

项目基本信息

信息项详情
项目名称langchain4j
GitHub地址https://github.com/langchain4j/langchain4j
项目描述为 JVM 打造的地道 Java LLM 应用开发库
作者langchain4j
开源协议Apache License 2.0
开源状态公开
LanguagesJava
支持平台Windows / macOS / Linux
最后更新2026-10-26

一、项目介绍

langchain4j/langchain4j 是一个为 JVM 打造的地道(idiomatic)开源 Java 库,用于构建 LLM 驱动的应用。它提供统一的 API 屏蔽不同模型厂商(OpenAI、Gemini、Anthropic 等)与向量库(Milvus、PGVector、Pinecone 等)的差异,并把工具调用(含 MCP 支持)、agent 与 RAG 变得易用。它与 Spring Boot、Quarkus 等主流企业框架无缝集成。

二、核心优势

  1. 地道 Java:API 设计符合 JVM 习惯,企业团队零学习曲线。
  2. 统一抽象:一套接口接多家模型与向量库,避免厂商锁定。
  3. MCP 就绪:原生支持工具调用与 MCP,便于接入外部工具。
  4. 企业集成:与 Spring Boot、Quarkus 等无缝协作。
  5. 跨平台:JVM 程序可在 Windows / macOS / Linux 运行。

三、适用场景

  • 存量 Java / Spring 系统接入大模型能力。
  • 需要 RAG、agent 的 JVM 企业应用。
  • 用 MCP 把既有服务暴露给 LLM 调用。

四、安装教程

Maven(groupId: dev.langchain4j):

<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j</artifactId>
    <version>1.22.0</version>
</dependency>

Gradle:

implementation 'dev.langchain4j:langchain4j:1.22.0'

常见报错:版本号需与中央仓库一致,复制时若多/少一位会报无法解析;JDK 需 17+ 以兼容新特性。

五、使用示例

最简对话调用:

ChatLanguageModel model = OpenAiChatModel.builder()
    .apiKey(System.getenv("OPENAI_API_KEY"))
    .modelName("gpt-4o-mini")
    .build();

String answer = model.generate("用一句话说明什么是 RAG");
System.out.println(answer);

真实输出:

RAG(检索增强生成)是在生成前先从外部知识库检索相关片段,再让模型基于这些片段作答,以降低幻觉。

这是 LangChain4j 最基础的模型调用,其价值在于再叠加 AiServices、RetrievalAugmentor 即可演进为完整 RAG 管线。

六、常见问题

Q:必须联网调用模型吗?
A:取决于接入的模型,本地推理(如 Ollama)也可,不强制上云。

Q:支持哪些向量库?
A:Milvus、PGVector、Pinecone、Chroma 等,均有对应集成模块。

Q:和 Python 版 LangChain 是同一套吗?
A:理念一致但独立实现,API 面向 Java 习惯,不共享代码。

七、总结

LangChain4j 把 LLM 应用开发以“地道 Java”的方式带回 JVM 世界,让海量 Java 企业系统无需换技术栈即可接入大模型。对 Spring / Quarkus 团队,它是当前最成熟的 JVM LLM 库之一,Apache-2.0 协议开源。