【RuoYi-SpringBoot3-Pro】:AI 能力再再扩展,打通 RAGFlow 知识库和 Dify 应用平台

简介: 【RuoYi-SpringBoot3-Pro】AI能力再升级!无缝集成RAGFlow知识库(支持数据集/文档/块管理及流式对话)与Dify应用平台(对话、知识库、工作流),提供同步、异步、流式三种调用模式,以“外挂”方式灵活扩展企业级AI能力。

【RuoYi-SpringBoot3-Pro】:AI 能力再再扩展,打通 RAGFlow 知识库和 Dify 应用平台

一、打通 RAGFlow 知识库

RAGFlow 是一款专业的 RAG 引擎,提供数据集管理、文档处理、块管理和检索增强对话功能。
想了解更多的小伙伴可以看看【AI工具箱】RAGFlow:打造私有的专业知识库
RuoYi-SpringBoot3-Pro 通过实现 RESTful API 接口,打通 RAGFlow 访问,支持同步、异步和流式三种调用模式。适合需要精细化文档管理的企业级知识库场景。

1.1 客户端初始化

// 创建客户端
RAGFlow ragflow = new RAGFlow("http://localhost:9222", "your-api-key");

// 创建异步客户端
RAGFlowAsync asyncClient = new RAGFlowAsync(ragflow);

1.2 核心功能

数据集管理支持创建、查询、更新和删除操作。创建数据集时可指定嵌入模型、分块方法和权限设置。知识图谱构建和 RAPTOR 聚类功能可对文档进行智能处理。

// 创建数据集
ragflow.createDataset("test_dataset");

// 列出数据集
ragflow.listDatasets(1, 30, "create_time", true, null, null);

// 构建知识图谱
ragflow.constructKnowledgeGraph("dataset_id");

文档管理支持上传、解析、下载和删除文档。上传后需要调用解析接口将文档转换为可检索的文本块。文档解析是异步过程,可通过接口查询解析状态。

// 上传文档
ragflow.uploadDocuments(datasetId, List.of(file));

// 解析文档
ragflow.parseDocuments(datasetId, List.of("document_id"));

块管理允许对文档片段进行精细化控制。可手动添加块并设置关键词和相关问题,增强检索效果。支持按关键词搜索和元数据过滤。

// 添加块
ragflow.addChunk(datasetId, documentId, "这是块内容");

// 检索
ragflow.retrieveChunks("问题", List.of("dataset_id"));

对话功能通过创建聊天助手与用户交互。支持会话管理,可维护多轮对话上下文。响应可选择阻塞或流式输出。

// 创建聊天助手
ragflow.createChatAssistant("my_chat", List.of("dataset_id"), null, llm, null);

// 对话
ragflow.converseWithChatAssistant(chatId, "你好", false, sessionId);

1.3 流式响应

流式响应适合实时展示生成内容。有实时回调和结果收集两种使用方式。

// 简单监听器
StreamListener listener = RAGFlow.createSimpleListener(
    content -> System.out.print(content),
    () -> System.out.println("\n完成"),
    error -> System.err.println("错误: " + error)
);
ragflow.converseWithChatAssistantStream("chat_id", "问题", null, listener);

// 收集完整结果
StreamResult result = ragflow.converseWithChatAssistantStreamCollect("chat_id", "问题", null);

1.4 异步调用

异步客户端返回 CompletableFuture,便于并行执行多个请求和链式调用。

// 异步创建数据集
asyncClient.createDataset("async_dataset").thenCompose(response -> {
   
    return CompletableFuture.completedFuture(
        response.getJSONObject("data").getStr("id"));
}).get();

// 并行执行
CompletableFuture.allOf(listFuture, healthFuture).join();

二、Dify 集成

Dify 是一款流行的 AI 应用开发平台,提供对话型应用、文本生成和工作流编排功能。
想了解更多的小伙伴可以查看往期的文章:

Github 上已经有成熟的集成方案,所以这里我们就不自己实现,直接使用 Dify Java Client

2.1 客户端初始化

DifyConfig config = DifyConfig.builder()
    .baseUrl("https://api.dify.ai/v1")
    .apiKey("your-api-key")
    .connectTimeout(5000)
    .readTimeout(60000)
    .build();

DifyClient client = DifyClientFactory.createClient(config);

2.2 核心功能

对话应用支持会话创建、消息发送和历史查询。消息反馈机制可收集用户评价用于优化。可获取建议问题引导用户深入对话。

// 发送消息
DifyChatClient chatClient = client.createChatClient();
ChatMessageResponse response = chatClient.chat(appId, "你好");

知识库管理支持创建知识库、文档上传和语义检索。文档分段规则可灵活配置,实现智能分块处理。

// 创建知识库
client.createDatasets("my_knowledge_base");

// 检索
RetrieveResult result = client.retrieve("问题", datasetId, 5, 0.7);

流式响应

chatClient.chatStream(appId, "问题", new ChunkListener() {
   
    @Override
    public void onChunk(String content) {
   
        System.out.print(content);
    }
});

RuoYi-SpringBoot3-Pro 采用外挂的方式,将各种 AI 能力集于一身,感兴趣的小伙伴可以查看往期的 AI 集成功能:

往期教程合集

RuoYi-SpringBoot3-Pro

目录
相关文章
|
7天前
|
人工智能 JSON 机器人
让龙虾成为你的“公众号分身” | 阿里云服务器玩Openclaw
本文带你零成本玩转OpenClaw:学生认证白嫖6个月阿里云服务器,手把手配置飞书机器人、接入免费/高性价比AI模型(NVIDIA/通义),并打造微信公众号“全自动分身”——实时抓热榜、AI选题拆解、一键发布草稿,5分钟完成热点→文章全流程!
10936 83
让龙虾成为你的“公众号分身” | 阿里云服务器玩Openclaw
|
7天前
|
人工智能 IDE API
2026年国内 Codex 安装教程和使用教程:GPT-5.4 完整指南
Codex已进化为AI编程智能体,不仅能补全代码,更能理解项目、自动重构、执行任务。本文详解国内安装、GPT-5.4接入、cc-switch中转配置及实战开发流程,助你从零掌握“描述需求→AI实现”的新一代工程范式。(239字)
4169 129
|
2天前
|
人工智能 Kubernetes 供应链
深度解析:LiteLLM 供应链投毒事件——TeamPCP 三阶段后门全链路分析
阿里云云安全中心和云防火墙已在第一时间上线相关检测与拦截策略!
1397 5
|
3天前
|
人工智能 自然语言处理 供应链
【最新】阿里云ClawHub Skill扫描:3万个AI Agent技能中的安全度量
阿里云扫描3万+AI Skill,发现AI检测引擎可识别80%+威胁,远高于传统引擎。
1293 3
|
13天前
|
人工智能 JavaScript API
解放双手!OpenClaw Agent Browser全攻略(阿里云+本地部署+免费API+网页自动化场景落地)
“让AI聊聊天、写代码不难,难的是让它自己打开网页、填表单、查数据”——2026年,无数OpenClaw用户被这个痛点困扰。参考文章直击核心:当AI只能“纸上谈兵”,无法实际操控浏览器,就永远成不了真正的“数字员工”。而Agent Browser技能的出现,彻底打破了这一壁垒——它给OpenClaw装上“上网的手和眼睛”,让AI能像真人一样打开网页、点击按钮、填写表单、提取数据,24小时不间断完成网页自动化任务。
2739 6
|
6天前
|
人工智能 机器人 API
从零搭建OpenClaw多智能体系统:部署、API配置+飞书多机器人管理手册
在团队协作场景中,单一AI智能体往往难以满足多部门、多场景的差异化需求——研发团队需要代码专家,运营团队需要内容策划助手,客服团队需要高效问答机器人,若所有需求都由同一个智能体承接,不仅会导致响应质量下降,还可能出现记忆混乱、权限失控等问题。2026年,OpenClaw(曾用名Clawdbot)的多Agent架构完美解决了这一痛点,通过“多飞书机器人账号+多独立Agent+路由绑定”的配置,可实现不同机器人对应专属AI大脑,各司其职、精准响应。
1401 1