work-10.01/src/main/java/com/bwie/common/request/RequestDTO.java

94 lines
2.4 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.bwie.common.request;
/**
* @author 冯凯
* @version 1.0
* @description: TODO
* @date 2023/9/29 13:56
*/
import com.alibaba.fastjson.annotation.JSONField;
import com.bwie.common.MsgDTO;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* 请求参数
* 对应生成的 JSON 结构参考 resources/demo-json/request.json
*/
@NoArgsConstructor
@Data
public class RequestDTO {
@JsonProperty("header")
private HeaderDTO header;
@JsonProperty("parameter")
private ParameterDTO parameter;
@JsonProperty("payload")
private PayloadDTO payload;
@NoArgsConstructor
@Data
@AllArgsConstructor
public static class HeaderDTO {
/**
* 应用appid从开放平台控制台创建的应用中获取
*/
@JSONField(name = "app_id")
private String appId;
/**
* 每个用户的id用于区分不同用户最大长度32
*/
@JSONField(name = "uid")
private String uid;
}
@NoArgsConstructor
@Data
@AllArgsConstructor
public static class ParameterDTO {
private ChatDTO chat;
@NoArgsConstructor
@Data
@AllArgsConstructor
public static class ChatDTO {
/**
* 指定访问的领域,general指向V1.5版本 generalv2指向V2版本。注意不同的取值对应的url也不一样
*/
@JsonProperty("domain")
private String domain;
/**
* 核采样阈值。用于决定结果随机性,取值越高随机性越强即相同的问题得到的不同答案的可能性越高
*/
@JsonProperty("temperature")
private Float temperature;
/**
* 模型回答的tokens的最大长度
*/
@JSONField(name = "max_tokens")
private Integer maxTokens;
}
}
@NoArgsConstructor
@Data
@AllArgsConstructor
public static class PayloadDTO {
@JsonProperty("message")
private MessageDTO message;
@NoArgsConstructor
@Data
@AllArgsConstructor
public static class MessageDTO {
@JsonProperty("text")
private List<MsgDTO> text;
}
}
}