feat: 发布3.0版本,新增文档处理能力和演示模式

- 升级langchain4j版本至1.13.0
- 新增docx/pdf/xlsx文档处理技能模块
- 添加演示模式配置和切面拦截
- 优化聊天服务和可观测性监听器

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
wangle
2026-04-13 18:02:27 +08:00
parent bf7b5eac72
commit c1fc02894b
100 changed files with 27576 additions and 189 deletions

View File

@@ -0,0 +1,26 @@
package org.ruoyi.common.chat.domain.dto.request;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;
/**
* Agent 对话请求对象(简化版)
*
* @author ageerle@163.com
* @date 2025/04/10
*/
@Data
public class AgentChatRequest {
/**
* 对话消息
*/
@NotEmpty(message = "对话消息不能为空")
private String content;
/**
* 会话id可选不传则不保存历史
*/
private Long sessionId;
}

View File

@@ -3,8 +3,13 @@ package org.ruoyi.common.chat.domain.dto.request;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import dev.langchain4j.data.message.ChatMessage;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;
import org.ruoyi.common.chat.domain.vo.chat.ChatModelVo;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
import java.util.List;
/**
@@ -62,7 +67,6 @@ public class ChatRequest {
*/
private String appId;
/**
* 对话id(每个聊天窗口都不一样)
*/
@@ -76,8 +80,28 @@ public class ChatRequest {
private Boolean enableThinking = false;
/**
* 是否支持联网
* 对话模型详情
*/
private Boolean enableInternet;
private ChatModelVo chatModelVo;
/**
* 对话事件
*/
private SseEmitter emitter;
/**
* 当前登录用户id
*/
private Long userId;
/**
* 当前登录用户TOKEN
*/
private String tokenValue;
/**
* 完整的上下文
*/
private List<ChatMessage> contextMessages;
}