LangChain4j 的目标是简化 Java 应用程序集成LLMs。
LangChain4j 就是一个通过
抽象统一API
、提供便捷可用的工具箱
来简化 Java 应用程序集成LLMs的框架。示例代码:langchain4j-examples chat
LangChain4j 源代码:https://github.com/langchain4j
集成能力
集成 15+个 语言大模型:https://docs.langchain4j.dev/integrations/language-models
集成 15+个 向量数据库:https://docs.langchain4j.dev/integrations/embedding-stores
集成 10+个 嵌入模型:https://docs.langchain4j.dev/category/embedding-models
集成 4个 图片大模型:https://docs.langchain4j.dev/category/image-models
集成 2个 评分重排名模型:https://docs.langchain4j.dev/category/scoring-reranking-models
集成 2个 代码执行引擎,支持动态函数调用(Function Calling)。
集成 1个 OpenAI 审核模型,实现输入/输出有害信息审核。

LangChain4j采用模块化设计,包括:
langchain4j-core
模块,用于定义核心抽象,如ChatLanguageModel
和EmbeddingStore
及其 API。langchain4j
模块,包含有用的工具,如ChatMemory
、OutputParser
以及高级功能,如AiServices
。langchain4j-{integration}
模块,每个模块都提供与各种LLM提供商的集成,以及嵌入存储集成到LangChain4j中。langchain4j-spring-{integration}-spring-boot-starter
模块,与Spring boot项目集成,开箱即用。
入门示例
引入依赖:
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-ollama-spring-boot-starter</artifactId>
<version>${langchain4j.version}</version>
</dependency>
langchain4j:
ollama:
chat-model:
base-url: http://localhost:11434
model-name: qwen:7b
import dev.langchain4j.model.chat.ChatLanguageModel;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/ll/")
@RestController
public class ChatController {
private final ChatLanguageModel chatLanguageModel;
public ChatController(ChatLanguageModel chatLanguageModel) {
this.chatLanguageModel = chatLanguageModel;
}
@GetMapping("chat")
public String chat(String prompt) {
return chatLanguageModel.generate(prompt);
}
}