94 lines
2.4 KiB
Java
94 lines
2.4 KiB
Java
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;
|
||
}
|
||
}
|
||
}
|