001package com.box.sdkgen.schemas.aistudioagentbasictexttoolresponse; 002 003import com.box.sdkgen.schemas.aillmendpointparams.AiLlmEndpointParams; 004import com.box.sdkgen.schemas.aillmendpointparamsaws.AiLlmEndpointParamsAws; 005import com.box.sdkgen.schemas.aillmendpointparamsgoogle.AiLlmEndpointParamsGoogle; 006import com.box.sdkgen.schemas.aillmendpointparamsibm.AiLlmEndpointParamsIbm; 007import com.box.sdkgen.schemas.aillmendpointparamsopenai.AiLlmEndpointParamsOpenAi; 008import com.box.sdkgen.schemas.aistudioagentbasictexttool.AiStudioAgentBasicTextTool; 009import com.fasterxml.jackson.annotation.JsonFilter; 010import java.util.List; 011import java.util.Objects; 012 013/** AI agent processor used to handle basic text. */ 014@JsonFilter("nullablePropertyFilter") 015public class AiStudioAgentBasicTextToolResponse extends AiStudioAgentBasicTextTool { 016 017 /** Warnings concerning tool. */ 018 protected List<String> warnings; 019 020 public AiStudioAgentBasicTextToolResponse() { 021 super(); 022 } 023 024 protected AiStudioAgentBasicTextToolResponse(Builder builder) { 025 super(builder); 026 this.warnings = builder.warnings; 027 markNullableFieldsAsSet(builder.getExplicitlySetNullableFields()); 028 } 029 030 public List<String> getWarnings() { 031 return warnings; 032 } 033 034 @Override 035 public boolean equals(Object o) { 036 if (this == o) { 037 return true; 038 } 039 if (o == null || getClass() != o.getClass()) { 040 return false; 041 } 042 AiStudioAgentBasicTextToolResponse casted = (AiStudioAgentBasicTextToolResponse) o; 043 return Objects.equals(model, casted.model) 044 && Objects.equals(numTokensForCompletion, casted.numTokensForCompletion) 045 && Objects.equals(llmEndpointParams, casted.llmEndpointParams) 046 && Objects.equals(systemMessage, casted.systemMessage) 047 && Objects.equals(promptTemplate, casted.promptTemplate) 048 && Objects.equals(isCustomInstructionsIncluded, casted.isCustomInstructionsIncluded) 049 && Objects.equals(warnings, casted.warnings); 050 } 051 052 @Override 053 public int hashCode() { 054 return Objects.hash( 055 model, 056 numTokensForCompletion, 057 llmEndpointParams, 058 systemMessage, 059 promptTemplate, 060 isCustomInstructionsIncluded, 061 warnings); 062 } 063 064 @Override 065 public String toString() { 066 return "AiStudioAgentBasicTextToolResponse{" 067 + "model='" 068 + model 069 + '\'' 070 + ", " 071 + "numTokensForCompletion='" 072 + numTokensForCompletion 073 + '\'' 074 + ", " 075 + "llmEndpointParams='" 076 + llmEndpointParams 077 + '\'' 078 + ", " 079 + "systemMessage='" 080 + systemMessage 081 + '\'' 082 + ", " 083 + "promptTemplate='" 084 + promptTemplate 085 + '\'' 086 + ", " 087 + "isCustomInstructionsIncluded='" 088 + isCustomInstructionsIncluded 089 + '\'' 090 + ", " 091 + "warnings='" 092 + warnings 093 + '\'' 094 + "}"; 095 } 096 097 public static class Builder extends AiStudioAgentBasicTextTool.Builder { 098 099 protected List<String> warnings; 100 101 public Builder warnings(List<String> warnings) { 102 this.warnings = warnings; 103 return this; 104 } 105 106 @Override 107 public Builder model(String model) { 108 this.model = model; 109 return this; 110 } 111 112 @Override 113 public Builder numTokensForCompletion(Long numTokensForCompletion) { 114 this.numTokensForCompletion = numTokensForCompletion; 115 return this; 116 } 117 118 @Override 119 public Builder llmEndpointParams(AiLlmEndpointParamsOpenAi llmEndpointParams) { 120 this.llmEndpointParams = new AiLlmEndpointParams(llmEndpointParams); 121 return this; 122 } 123 124 @Override 125 public Builder llmEndpointParams(AiLlmEndpointParamsGoogle llmEndpointParams) { 126 this.llmEndpointParams = new AiLlmEndpointParams(llmEndpointParams); 127 return this; 128 } 129 130 @Override 131 public Builder llmEndpointParams(AiLlmEndpointParamsAws llmEndpointParams) { 132 this.llmEndpointParams = new AiLlmEndpointParams(llmEndpointParams); 133 return this; 134 } 135 136 @Override 137 public Builder llmEndpointParams(AiLlmEndpointParamsIbm llmEndpointParams) { 138 this.llmEndpointParams = new AiLlmEndpointParams(llmEndpointParams); 139 return this; 140 } 141 142 @Override 143 public Builder llmEndpointParams(AiLlmEndpointParams llmEndpointParams) { 144 this.llmEndpointParams = llmEndpointParams; 145 return this; 146 } 147 148 @Override 149 public Builder systemMessage(String systemMessage) { 150 this.systemMessage = systemMessage; 151 return this; 152 } 153 154 @Override 155 public Builder promptTemplate(String promptTemplate) { 156 this.promptTemplate = promptTemplate; 157 return this; 158 } 159 160 @Override 161 public Builder isCustomInstructionsIncluded(Boolean isCustomInstructionsIncluded) { 162 this.isCustomInstructionsIncluded = isCustomInstructionsIncluded; 163 return this; 164 } 165 166 public AiStudioAgentBasicTextToolResponse build() { 167 return new AiStudioAgentBasicTextToolResponse(this); 168 } 169 } 170}