LangChain4j 快速上手:Java 开发者的 AI 入门第一步

前言

这篇文章带你用 LangChain4j 在 Java 项目里跑起第一个 AI 对话,从零到能用只需要 20 分钟。

很多 Java 开发者想接 AI 能力,但 Python 的 LangChain 上手门槛高、又不想切语言。LangChain4j 就是为这个场景设计的——Java 原生,API 风格熟悉,直接 Maven 引入就能用。


一、LangChain4j 是什么

一句话:Java 版的 AI 应用开发框架,封装了 LLM 调用、RAG、工具调用、MCP 等常用能力。

你的 Java 代码
     ↓
LangChain4j(统一接口)
     ↓
Claude / GPT / Gemini / 本地模型

不用关心每个模型的 API 差异,换模型只改配置。


二、5分钟跑起第一个对话

第一步:加依赖

<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j-anthropic</artifactId>
    <version>1.0.0</version>
</dependency>

第二步:写代码

import dev.langchain4j.model.anthropic.AnthropicChatModel;
import dev.langchain4j.model.chat.ChatLanguageModel;

public class HelloAI {
    public static void main(String[] args) {
        ChatLanguageModel model = AnthropicChatModel.builder()
                .apiKey(System.getenv("ANTHROPIC_API_KEY"))
                .modelName("claude-sonnet-4-6")
                .build();

        String answer = model.generate("用一句话解释什么是 Spring Boot");
        System.out.println(answer);
    }
}

第三步:设置 API Key

export ANTHROPIC_API_KEY=sk-ant-xxxxxxxx

运行,完事。


三、让 AI 有"记忆"——对话历史

默认每次调用都是无状态的,AI 不记得上一句说了什么。加上 ChatMemory 就能有上下文:

import dev.langchain4j.memory.chat.MessageWindowChatMemory;
import dev.langchain4j.service.AiServices;

interface Assistant {
    String chat(String message);
}

public class MemoryDemo {
    public static void main(String[] args) {
        ChatLanguageModel model = AnthropicChatModel.builder()
                .apiKey(System.getenv("ANTHROPIC_API_KEY"))
                .modelName("claude-sonnet-4-6")
                .build();

        Assistant assistant = AiServices.builder(Assistant.class)
                .chatLanguageModel(model)
                .chatMemory(MessageWindowChatMemory.withMaxMessages(10))
                .build();

        System.out.println(assistant.chat("我叫小明"));
        System.out.println(assistant.chat("我叫什么名字?")); // 能答出"小明"
    }
}

AiServices 是 LangChain4j 的核心设计:用 Java 接口定义 AI 能力,框架帮你生成实现。


四、让 AI 调用你的方法——Tool Use

这才是 LangChain4j 的精华。你写一个 Java 方法,AI 能决定什么时候调用它:

import dev.langchain4j.agent.tool.Tool;

class WeatherTool {
    @Tool("查询某个城市的天气")
    public String getWeather(String city) {
        // 这里接真实天气 API
        return city + "今天晴,25°C";
    }
}

// 注册给 AI
Assistant assistant = AiServices.builder(Assistant.class)
        .chatLanguageModel(model)
        .tools(new WeatherTool())
        .build();

System.out.println(assistant.chat("北京今天天气怎么样?"));
// AI 会自动调用 getWeather("北京"),然后回答

用户问天气,AI 自动调你的方法,再把结果整合成回答。全自动。


五、跟 Spring Boot 集成

加一个 starter 依赖,自动配置全搞定:

<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j-spring-boot-starter</artifactId>
    <version>1.0.0</version>
</dependency>

application.yml 配置:

langchain4j:
  anthropic:
    chat-model:
      api-key: ${ANTHROPIC_API_KEY}
      model-name: claude-sonnet-4-6

然后直接 @Autowired ChatLanguageModel model 注入使用,跟普通 Bean 一样。


总结

功能用到的类
基础对话AnthropicChatModel
对话记忆MessageWindowChatMemory
接口化 AIAiServices
工具调用@Tool 注解
Spring 集成starter 自动配置

LangChain4j 对 Java 开发者很友好,学习曲线比 Python 那套平很多。从这篇入门,下一步可以看 RAG(让 AI 读你的文档)和 MCP(接外部工具)。

下一篇:LangChain4j + MCP——让 Java AI Agent 操作本地文件系统

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值