From 6a1b544545ba2a005a1d6263f3b42aaeeef78bcd Mon Sep 17 00:00:00 2001 From: ageerle <ageerle@163.com> Date: 星期二, 11 三月 2025 17:32:47 +0800 Subject: [PATCH] feat: 支持插件功能 --- ruoyi-common/ruoyi-common-chat/src/main/java/org/ruoyi/common/chat/entity/chat/Message.java | 63 +++++++++++++------------------ 1 files changed, 27 insertions(+), 36 deletions(-) diff --git a/ruoyi-common/ruoyi-common-chat/src/main/java/org/ruoyi/common/chat/entity/chat/Message.java b/ruoyi-common/ruoyi-common-chat/src/main/java/org/ruoyi/common/chat/entity/chat/Message.java index 9637569..86faa47 100644 --- a/ruoyi-common/ruoyi-common-chat/src/main/java/org/ruoyi/common/chat/entity/chat/Message.java +++ b/ruoyi-common/ruoyi-common-chat/src/main/java/org/ruoyi/common/chat/entity/chat/Message.java @@ -2,12 +2,11 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.AllArgsConstructor; import lombok.Data; -import lombok.Getter; +import org.ruoyi.common.chat.entity.chat.tool.ToolCalls; import java.io.Serializable; +import java.util.List; /** * 鎻忚堪锛� @@ -18,20 +17,9 @@ @Data @JsonInclude(JsonInclude.Include.NON_NULL) @JsonIgnoreProperties(ignoreUnknown = true) -public class Message implements Serializable { - - /** - * 鐩墠鏀寔鍥涗釜涓鑹插弬鑰冨畼缃戯紝杩涜鎯呮櫙杈撳叆锛� - * https://platform.openai.com/docs/guides/chat/introduction - */ - private String role; +public class Message extends BaseMessage implements Serializable { private Object content; - - private String name; - - @JsonProperty("function_call") - private FunctionCall functionCall; public static Builder builder() { return new Builder(); @@ -41,44 +29,37 @@ * 鏋勯�犲嚱鏁� * * @param role 瑙掕壊 - * @param content 鎻忚堪涓婚淇℃伅 * @param name name + * @param content content * @param functionCall functionCall */ - public Message(String role, String content, String name, FunctionCall functionCall) { - this.role = role; + public Message(String role, String name, String content, List<ToolCalls> toolCalls, String toolCallId, FunctionCall functionCall) { this.content = content; - this.name = name; - this.functionCall = functionCall; + super.setRole(role); + super.setName(name); + super.setToolCalls(toolCalls); + super.setToolCallId(toolCallId); + super.setFunctionCall(functionCall); } public Message() { } private Message(Builder builder) { - setRole(builder.role); setContent(builder.content); - setName(builder.name); - setFunctionCall(builder.functionCall); - } - - - @Getter - @AllArgsConstructor - public enum Role { - - SYSTEM("system"), - USER("user"), - ASSISTANT("assistant"), - FUNCTION("function"), - ; - private String name; + super.setRole(builder.role); + super.setName(builder.name); + super.setFunctionCall(builder.functionCall); + super.setToolCalls(builder.toolCalls); + super.setToolCallId(builder.toolCallId); } public static final class Builder { private String role; private String content; private String name; + private String toolCallId; + private List<ToolCalls> toolCalls; private FunctionCall functionCall; public Builder() { @@ -109,6 +90,16 @@ return this; } + public Builder toolCalls(List<ToolCalls> toolCalls) { + this.toolCalls = toolCalls; + return this; + } + + public Builder toolCallId(String toolCallId) { + this.toolCallId = toolCallId; + return this; + } + public Message build() { return new Message(this); } -- Gitblit v1.9.3