1 package com.netease.nimlib.sdk.ai.params;
3 import android.text.TextUtils;
7 import java.io.Serializable;
12 private static final String TAG =
"NIMProxyAIModelCallParams";
17 private final String accountId;
22 private final String requestId;
32 private List<NIMAIModelCallMessage> messages;
37 private String promptVariables;
52 private boolean aiStream =
false;
55 this(null, null, null);
66 this.accountId = accountId;
67 this.requestId = requestId;
68 this.content = content;
117 this.messages = messages;
126 return promptVariables;
135 this.promptVariables = promptVariables;
144 return modelConfigParams;
153 this.modelConfigParams = modelConfigParams;
162 return antispamConfig;
171 this.antispamConfig = antispamConfig;
187 this.aiStream = aiStream;
195 if(TextUtils.isEmpty(accountId)){
196 NimLog.e(TAG,
"accountId is empty");
200 if(TextUtils.isEmpty(requestId)){
201 NimLog.e(TAG,
"requestId is empty");
205 if(content == null || !content.
isValid()){
206 NimLog.e(TAG,
"content is invalid");
210 if(messages != null && !messages.isEmpty()){
212 if(!message.isValid()){
213 NimLog.e(TAG,
"message is invalid");
219 if(promptVariables != null && !StringUtil.isJson(promptVariables)){
220 NimLog.e(TAG,
"promptVariables is invalid");
230 public static class Builder {
231 private String accountId;
232 private String requestId;
234 private List<NIMAIModelCallMessage> messages;
235 private String promptVariables;
242 private boolean aiStream =
false;
249 public Builder accountId(String accountId) {
250 this.accountId = accountId;
259 public Builder requestId(String requestId) {
260 this.requestId = requestId;
270 this.content = content;
279 public Builder messages(List<NIMAIModelCallMessage> messages) {
280 this.messages = messages;
289 public Builder promptVariables(String promptVariables) {
290 this.promptVariables = promptVariables;
300 this.modelConfigParams = modelConfigParams;
305 this.antispamConfig = antispamConfig;
309 public Builder aiStream(
boolean aiStream) {
310 this.aiStream = aiStream;
320 params.messages = messages;
321 params.promptVariables = promptVariables;
322 params.modelConfigParams = modelConfigParams;
323 params.antispamConfig = antispamConfig;
324 params.aiStream = aiStream;
void setPromptVariables(String promptVariables)
设置提示词变量占位符替换
void setAntispamConfig(NIMProxyAICallAntispamConfig antispamConfig)
设置反垃圾配置
String getAccountId()
获取机器人账号ID
void setModelConfigParams(NIMAIModelConfigParams modelConfigParams)
设置请求接口模型相关参数配置
NIMProxyAIModelCallParams(String accountId, String requestId, NIMAIModelCallContent content)
构造函数
String getRequestId()
获取请求id
String getPromptVariables()
获取提示词变量占位符替换
boolean isAIStream()
获取是否流式响应
void setAIStream(boolean aiStream)
设置是否流式响应
NIMAIModelCallContent getContent()
获取请求大模型的内容
void setMessages(List< NIMAIModelCallMessage > messages)
设置上下文内容
NIMProxyAICallAntispamConfig getAntispamConfig()
获取反垃圾配置
List< NIMAIModelCallMessage > getMessages()
获取上下文内容
NIMAIModelConfigParams getModelConfigParams()
获取请求接口模型相关参数配置