|
@@ -3,39 +3,47 @@ package dto
|
|
|
import "encoding/json"
|
|
import "encoding/json"
|
|
|
|
|
|
|
|
type ResponseFormat struct {
|
|
type ResponseFormat struct {
|
|
|
- Type string `json:"type,omitempty"`
|
|
|
|
|
|
|
+ Type string `json:"type,omitempty"`
|
|
|
|
|
+ JsonSchema *FormatJsonSchema `json:"json_schema,omitempty"`
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+type FormatJsonSchema struct {
|
|
|
|
|
+ Description string `json:"description,omitempty"`
|
|
|
|
|
+ Name string `json:"name"`
|
|
|
|
|
+ Schema any `json:"schema,omitempty"`
|
|
|
|
|
+ Strict any `json:"strict,omitempty"`
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
type GeneralOpenAIRequest struct {
|
|
type GeneralOpenAIRequest struct {
|
|
|
- Model string `json:"model,omitempty"`
|
|
|
|
|
- Messages []Message `json:"messages,omitempty"`
|
|
|
|
|
- Prompt any `json:"prompt,omitempty"`
|
|
|
|
|
- Stream bool `json:"stream,omitempty"`
|
|
|
|
|
- StreamOptions *StreamOptions `json:"stream_options,omitempty"`
|
|
|
|
|
- MaxTokens uint `json:"max_tokens,omitempty"`
|
|
|
|
|
- MaxCompletionTokens uint `json:"max_completion_tokens,omitempty"`
|
|
|
|
|
- Temperature float64 `json:"temperature,omitempty"`
|
|
|
|
|
- TopP float64 `json:"top_p,omitempty"`
|
|
|
|
|
- TopK int `json:"top_k,omitempty"`
|
|
|
|
|
- Stop any `json:"stop,omitempty"`
|
|
|
|
|
- N int `json:"n,omitempty"`
|
|
|
|
|
- Input any `json:"input,omitempty"`
|
|
|
|
|
- Instruction string `json:"instruction,omitempty"`
|
|
|
|
|
- Size string `json:"size,omitempty"`
|
|
|
|
|
- Functions any `json:"functions,omitempty"`
|
|
|
|
|
- FrequencyPenalty float64 `json:"frequency_penalty,omitempty"`
|
|
|
|
|
- PresencePenalty float64 `json:"presence_penalty,omitempty"`
|
|
|
|
|
- ResponseFormat any `json:"response_format,omitempty"`
|
|
|
|
|
- EncodingFormat any `json:"encoding_format,omitempty"`
|
|
|
|
|
- Seed float64 `json:"seed,omitempty"`
|
|
|
|
|
- Tools []ToolCall `json:"tools,omitempty"`
|
|
|
|
|
- ToolChoice any `json:"tool_choice,omitempty"`
|
|
|
|
|
- User string `json:"user,omitempty"`
|
|
|
|
|
- LogProbs bool `json:"logprobs,omitempty"`
|
|
|
|
|
- TopLogProbs int `json:"top_logprobs,omitempty"`
|
|
|
|
|
- Dimensions int `json:"dimensions,omitempty"`
|
|
|
|
|
- Modalities any `json:"modalities,omitempty"`
|
|
|
|
|
- Audio any `json:"audio,omitempty"`
|
|
|
|
|
|
|
+ Model string `json:"model,omitempty"`
|
|
|
|
|
+ Messages []Message `json:"messages,omitempty"`
|
|
|
|
|
+ Prompt any `json:"prompt,omitempty"`
|
|
|
|
|
+ Stream bool `json:"stream,omitempty"`
|
|
|
|
|
+ StreamOptions *StreamOptions `json:"stream_options,omitempty"`
|
|
|
|
|
+ MaxTokens uint `json:"max_tokens,omitempty"`
|
|
|
|
|
+ MaxCompletionTokens uint `json:"max_completion_tokens,omitempty"`
|
|
|
|
|
+ Temperature float64 `json:"temperature,omitempty"`
|
|
|
|
|
+ TopP float64 `json:"top_p,omitempty"`
|
|
|
|
|
+ TopK int `json:"top_k,omitempty"`
|
|
|
|
|
+ Stop any `json:"stop,omitempty"`
|
|
|
|
|
+ N int `json:"n,omitempty"`
|
|
|
|
|
+ Input any `json:"input,omitempty"`
|
|
|
|
|
+ Instruction string `json:"instruction,omitempty"`
|
|
|
|
|
+ Size string `json:"size,omitempty"`
|
|
|
|
|
+ Functions any `json:"functions,omitempty"`
|
|
|
|
|
+ FrequencyPenalty float64 `json:"frequency_penalty,omitempty"`
|
|
|
|
|
+ PresencePenalty float64 `json:"presence_penalty,omitempty"`
|
|
|
|
|
+ ResponseFormat *ResponseFormat `json:"response_format,omitempty"`
|
|
|
|
|
+ EncodingFormat any `json:"encoding_format,omitempty"`
|
|
|
|
|
+ Seed float64 `json:"seed,omitempty"`
|
|
|
|
|
+ Tools []ToolCall `json:"tools,omitempty"`
|
|
|
|
|
+ ToolChoice any `json:"tool_choice,omitempty"`
|
|
|
|
|
+ User string `json:"user,omitempty"`
|
|
|
|
|
+ LogProbs bool `json:"logprobs,omitempty"`
|
|
|
|
|
+ TopLogProbs int `json:"top_logprobs,omitempty"`
|
|
|
|
|
+ Dimensions int `json:"dimensions,omitempty"`
|
|
|
|
|
+ Modalities any `json:"modalities,omitempty"`
|
|
|
|
|
+ Audio any `json:"audio,omitempty"`
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
type OpenAITools struct {
|
|
type OpenAITools struct {
|