LangChain4j快速入门

1️⃣ 安装与依赖

LangChain4j 基于 Java,通常用 Maven 或 Gradle 管理依赖。

Maven

在 pom.xml 中加入:

复制代码
<dependency>
    <groupId>io.langchain4j</groupId>
    <artifactId>langchain4j-core</artifactId>
    <version>0.2.7</version> <!-- 请确认最新版本 -->
</dependency>

如果要使用 OpenAI 或其他 LLM,需要额外依赖:

复制代码
<dependency>
    <groupId>io.langchain4j</groupId>
    <artifactId>langchain4j-openai</artifactId>
    <version>0.2.7</version>
</dependency>

Gradle

复制代码
implementation 'io.langchain4j:langchain4j-core:0.2.7'
implementation 'io.langchain4j:langchain4j-openai:0.2.7'

2️⃣ 初始化 LLM

假设你使用 OpenAI GPT-4:

复制代码
import io.langchain4j.LangChain;
import io.langchain4j.agent.chat.ChatMessage;
import io.langchain4j.agent.chat.ChatResponse;
import io.langchain4j.model.openai.OpenAi;

public class LangChain4jQuickStart {

    public static void main(String[] args) {

        // 初始化 OpenAI LLM
        OpenAi llm = OpenAi.builder()
                .apiKey(System.getenv("OPENAI_API_KEY")) // 环境变量存储 API Key
                .build();

        // 构建 LangChain
        LangChain langChain = new LangChain(llm);

        // 调用 LLM
        ChatResponse response = langChain.chat("请用中文介绍 LangChain4j 的功能。");

        System.out.println(response.text());
    }
}

3️⃣ 常用模块

LangChain4j 的核心功能大致可分为:

模块 功能
LLM 调用 GPT、Claude 等大语言模型
PromptTemplate 构建可重用的提示模板
Chains 链式调用 LLM,处理复杂任务
Agents 可以动态选择工具或步骤执行
Memory 保存对话状态或上下文信息

示例:使用 PromptTemplate 构建链:

复制代码
import io.langchain4j.prompt.templates.PromptTemplate;

PromptTemplate template = PromptTemplate.fromTemplate("给我写一首关于{{topic}}的诗");
String prompt = template.format(Map.of("topic", "春天"));

然后可以传给 langChain.chat(prompt) 使用。


4️⃣ 简单示例:QA 链

复制代码
import io.langchain4j.chains.SimpleChain;
import io.langchain4j.document.Document;

Document doc = Document.fromText("LangChain4j 是一个用于 Java 的开源 LLM 框架。");

SimpleChain chain = SimpleChain.fromDocument(doc, llm);

String answer = chain.run("LangChain4j 是什么?");

System.out.println(answer);

5️⃣ 推荐学习路径

  1. 理解 LLM 调用:先学会用 OpenAI/GPT API。
  2. 掌握 PromptTemplate:复用提示,构建灵活任务。
  3. Chains 与 Agents:将简单调用组合成复杂流程。
  4. Memory 与 State:做长期对话或上下文任务。
  5. 工具链集成:接入数据库、搜索、计算器等工具。
相关推荐
aifannihao20 分钟前
AI 学习第 14 课:CNN 训 6 轮卡在 0.5352,数据没打乱
pytorch·python·深度学习·cnn·学习路线
AI_Gump23 分钟前
Harness篇|DeepSeek Harness 上手机:五条安卓移植路线与 App 内 Linux 拆解
android·linux·人工智能·智能手机·deepseek
yuyuxun11 小时前
协同过滤的校园二手物品智能推荐系统的设计与实现 毕业设计-附源码40082
javascript·vue.js·spring boot·python·数据分析·django·课程设计
萝卜小白1 小时前
深度学习基础面经
人工智能·深度学习
如夏倾城1 小时前
百度文心(容易被忽略的好用AI)使用方式
人工智能·python·百度·语言模型·dubbo
用户019027581611 小时前
quotes 实时价和 klines 最新收盘价为什么对不上?
python
泯泷1 小时前
为什么 RL 比 SFT 更会"举一反三"?
人工智能·llm·agent
上海潭龙东海科技有限公司2 小时前
客运站管控之动态孪生技术方案(新增一屏管控模块
数据仓库·人工智能·算法·重构·动态规划
少司府2 小时前
嵌入式入门篇(二):初识STM32F103ZET6
linux·python·stm32·单片机·嵌入式硬件·mcu·嵌入式软件
民乐团扒谱机2 小时前
Agent-Skills 新手入门与实战部署指南
人工智能·ai·agent·skill