Changeset 0.22.1 (#95)
This commit is contained in:
@@ -110,13 +110,14 @@ type FunctionDef struct {
|
||||
|
||||
// CompletionRequest is the normalized request sent to any provider.
|
||||
type CompletionRequest struct {
|
||||
Model string `json:"model"`
|
||||
Messages []Message `json:"messages"`
|
||||
MaxTokens int `json:"max_tokens,omitempty"`
|
||||
Temperature *float64 `json:"temperature,omitempty"`
|
||||
TopP *float64 `json:"top_p,omitempty"`
|
||||
Stream bool `json:"stream,omitempty"`
|
||||
Tools []ToolDef `json:"tools,omitempty"` // available tools for function calling
|
||||
Model string `json:"model"`
|
||||
Messages []Message `json:"messages"`
|
||||
MaxTokens int `json:"max_tokens,omitempty"`
|
||||
Temperature *float64 `json:"temperature,omitempty"`
|
||||
TopP *float64 `json:"top_p,omitempty"`
|
||||
Stream bool `json:"stream,omitempty"`
|
||||
Tools []ToolDef `json:"tools,omitempty"` // available tools for function calling
|
||||
ExtraBody map[string]interface{} `json:"-"` // provider-specific wire fields (v0.22.1)
|
||||
}
|
||||
|
||||
// CompletionResponse is the normalized non-streaming response.
|
||||
@@ -170,3 +171,17 @@ type Model struct {
|
||||
Capabilities models.ModelCapabilities `json:"capabilities"`
|
||||
Pricing *models.ModelPricing `json:"pricing,omitempty"`
|
||||
}
|
||||
|
||||
// mergeExtraBody merges arbitrary key-value pairs into a marshalled JSON object.
|
||||
// Used by provider doRequest methods to inject hook-supplied fields (e.g.
|
||||
// venice_parameters, thinking config) into the wire-format request body.
|
||||
func mergeExtraBody(body []byte, extra map[string]interface{}) ([]byte, error) {
|
||||
var base map[string]interface{}
|
||||
if err := json.Unmarshal(body, &base); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
for k, v := range extra {
|
||||
base[k] = v
|
||||
}
|
||||
return json.Marshal(base)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user