Documentation
¶
Index ¶
- Constants
- Variables
- type DeleteModelPresetRequest
- type DeleteModelPresetResponse
- type DeleteProviderPresetRequest
- type DeleteProviderPresetResponse
- type GetDefaultProviderRequest
- type GetDefaultProviderResponse
- type GetDefaultProviderResponseBody
- type GetModelPresetRequest
- type GetModelPresetResponse
- type GetModelPresetResponseBody
- type ListProviderPresetsRequest
- type ListProviderPresetsResponse
- type ListProviderPresetsResponseBody
- type ModelDisplayName
- type ModelName
- type ModelPreset
- type ModelPresetID
- type ModelPresetPatch
- type ModelPresetRef
- type ModelSlug
- type PatchDefaultProviderRequest
- type PatchDefaultProviderRequestBody
- type PatchDefaultProviderResponse
- type PatchModelPresetRequest
- type PatchModelPresetRequestBody
- type PatchModelPresetResponse
- type PatchProviderPresetRequest
- type PatchProviderPresetRequestBody
- type PatchProviderPresetResponse
- type PostModelPresetRequest
- type PostModelPresetRequestBody
- type PostModelPresetResponse
- type PostProviderPresetRequest
- type PostProviderPresetRequestBody
- type PostProviderPresetResponse
- type PresetsSchema
- type ProviderDisplayName
- type ProviderPageToken
- type ProviderPreset
Constants ¶
View Source
const ( ModelPresetsFile = "modelpresets.json" // Single JSON file. ModelPresetsBuiltInOverlayDBFileName = "modelpresetsbuiltin.overlay.sqlite" )
View Source
const ( SchemaVersion = "2025-07-01" MaxPageSize = 256 // Max allowed page size. DefaultPageSize = 256 // Default page size. BuiltInSnapshotMaxAge = time.Hour )
View Source
const ( DefaultAuthorizationHeaderKey = "Authorization" DefaultAPITimeout = 300 * time.Second DefaultAnthropicOrigin = "https://api.anthropic.com" DefaultAnthropicChatCompletionPrefix = "/v1/messages" DefaultAnthropicAuthorizationHeaderKey = "x-api-key" DefaultOpenAIOrigin = "https://api.openai.com" DefaultOpenAIChatCompletionsPrefix = "/v1/chat/completions" )
Variables ¶
View Source
var ( ErrInvalidDir = errors.New("invalid directory") ErrProviderNotFound = errors.New("provider not found") ErrProviderPresetAlreadyExists = errors.New("provider preset already exists") ErrBuiltInProviderAbsent = errors.New("provider not found in built-in data") ErrNilProvider = errors.New("provider preset is nil") ErrModelPresetNotFound = errors.New("model preset not found") ErrModelPresetAlreadyExists = errors.New("model preset already exists") ErrNilModelPreset = errors.New("model preset is nil") ErrNoModelPresets = errors.New("provider has no model presets") ErrInvalidTimestamp = errors.New("zero timestamp") ErrBuiltInReadOnly = errors.New("built-in resource is read-only") )
View Source
var OpenAIChatCompletionsDefaultHeaders = map[string]string{"content-type": "application/json"}
Functions ¶
This section is empty.
Types ¶
type DeleteModelPresetRequest ¶
type DeleteModelPresetRequest struct {
ProviderName inferenceSpec.ProviderName `path:"providerName" required:"true"`
ModelPresetID ModelPresetID `path:"modelPresetID" required:"true"`
}
type DeleteModelPresetResponse ¶
type DeleteModelPresetResponse struct{}
type DeleteProviderPresetRequest ¶
type DeleteProviderPresetRequest struct {
ProviderName inferenceSpec.ProviderName `path:"providerName" required:"true"`
}
type DeleteProviderPresetResponse ¶
type DeleteProviderPresetResponse struct{}
type GetDefaultProviderRequest ¶
type GetDefaultProviderRequest struct{}
type GetDefaultProviderResponse ¶
type GetDefaultProviderResponse struct {
Body *GetDefaultProviderResponseBody
}
type GetDefaultProviderResponseBody ¶
type GetDefaultProviderResponseBody struct {
DefaultProvider inferenceSpec.ProviderName `json:"defaultProvider"`
}
type GetModelPresetRequest ¶ added in v0.0.81
type GetModelPresetRequest struct {
ProviderName inferenceSpec.ProviderName `path:"providerName" required:"true"`
ModelPresetID ModelPresetID `path:"modelPresetID" required:"true"`
// If false, disabled provider/model return an error.
IncludeDisabled bool `query:"includeDisabled"`
}
type GetModelPresetResponse ¶ added in v0.0.81
type GetModelPresetResponse struct {
Body *GetModelPresetResponseBody
}
type GetModelPresetResponseBody ¶ added in v0.0.81
type GetModelPresetResponseBody struct {
// Provider includes CapabilitiesOverride (provider-wide).
// ModelPresets map is intentionally omitted/empty in store response for safety/perf.
Provider ProviderPreset `json:"provider"`
// Model includes Name + CapabilitiesOverride (model-specific).
Model ModelPreset `json:"model"`
}
type ListProviderPresetsRequest ¶
type ListProviderPresetsRequest struct {
Names []inferenceSpec.ProviderName `query:"names"`
IncludeDisabled bool `query:"includeDisabled"`
PageSize int `query:"pageSize"`
PageToken string `query:"pageToken"`
}
type ListProviderPresetsResponse ¶
type ListProviderPresetsResponse struct {
Body *ListProviderPresetsResponseBody
}
type ListProviderPresetsResponseBody ¶
type ListProviderPresetsResponseBody struct {
Providers []ProviderPreset `json:"providers"`
NextPageToken *string `json:"nextPageToken,omitempty"`
}
type ModelDisplayName ¶
type ModelDisplayName string
type ModelPreset ¶
type ModelPreset struct {
ModelPresetPatch
SchemaVersion string `json:"schemaVersion" required:"true"`
ID ModelPresetID `json:"id" required:"true"`
Name ModelName `json:"name" required:"true"`
DisplayName ModelDisplayName `json:"displayName" required:"true"`
Slug ModelSlug `json:"slug" required:"true"`
IsEnabled bool `json:"isEnabled" required:"true"`
CreatedAt time.Time `json:"createdAt"`
ModifiedAt time.Time `json:"modifiedAt"`
IsBuiltIn bool `json:"isBuiltIn"`
}
ModelPreset is the entire "model + default knobs" bundle the user can save. Anything not present in the preset is considered to be taken as default from any global or inbuilt model defaults.
type ModelPresetID ¶
type ModelPresetID string
type ModelPresetPatch ¶ added in v0.0.85
type ModelPresetPatch struct {
Stream *bool `json:"stream,omitempty"`
MaxPromptLength *int `json:"maxPromptLength,omitempty"`
MaxOutputLength *int `json:"maxOutputLength,omitempty"`
Temperature *float64 `json:"temperature,omitempty"`
Reasoning *inferenceSpec.ReasoningParam `json:"reasoning,omitempty"`
SystemPrompt *string `json:"systemPrompt,omitempty"`
Timeout *int `json:"timeout,omitempty"`
CacheControl *inferenceSpec.CacheControl `json:"cacheControl,omitempty"`
OutputParam *inferenceSpec.OutputParam `json:"outputParam,omitempty"`
StopSequences *[]string `json:"stopSequences,omitempty"`
AdditionalParametersRawJSON *string `json:"additionalParametersRawJSON,omitempty"`
// CapabilitiesOverride is a stored override for runtime capability resolution.
// This is NOT the derived/effective capability profile.
CapabilitiesOverride *capabilityoverride.ModelCapabilitiesOverride `json:"capabilitiesOverride,omitempty"`
}
ModelPresetPatch is the reusable set of persisted model-preset knobs.
PATCH semantics:
- nil pointer/object fields => not provided
- StopSequences is a pointer-to-slice so PATCH can distinguish:
- nil => not provided
- non-nil empty slice => explicitly set to empty
Note: PATCH does not support generic "clear to nil" semantics.
type ModelPresetRef ¶ added in v0.0.85
type ModelPresetRef struct {
ProviderName inferenceSpec.ProviderName `json:"providerName"`
ModelPresetID ModelPresetID `json:"modelPresetID"`
}
ModelPresetRef identifies a model preset inside a provider namespace. It is intended for internal helpers and JSON payloads, not HTTP path binding.
func (ModelPresetRef) IsZero ¶ added in v0.0.85
func (r ModelPresetRef) IsZero() bool
type PatchDefaultProviderRequest ¶
type PatchDefaultProviderRequest struct {
Body *PatchDefaultProviderRequestBody
}
type PatchDefaultProviderRequestBody ¶
type PatchDefaultProviderRequestBody struct {
DefaultProvider inferenceSpec.ProviderName `json:"defaultProvider" required:"true"`
}
type PatchDefaultProviderResponse ¶
type PatchDefaultProviderResponse struct{}
type PatchModelPresetRequest ¶
type PatchModelPresetRequest struct {
ProviderName inferenceSpec.ProviderName `path:"providerName" required:"true"`
ModelPresetID ModelPresetID `path:"modelPresetID" required:"true"`
Body *PatchModelPresetRequestBody
}
type PatchModelPresetRequestBody ¶
type PatchModelPresetRequestBody struct {
ModelPresetPatch
Name *ModelName `json:"name,omitempty"`
Slug *ModelSlug `json:"slug,omitempty"`
DisplayName *ModelDisplayName `json:"displayName,omitempty"`
IsEnabled *bool `json:"isEnabled,omitempty"`
}
PatchModelPresetRequestBody patches a stored model preset.
Semantics:
- nil pointer/object fields => not provided
- StopSequences=nil => not provided
- StopSequences=&[]{} => explicitly set to empty
- at least one field/override field must be supplied
type PatchModelPresetResponse ¶
type PatchModelPresetResponse struct{}
type PatchProviderPresetRequest ¶
type PatchProviderPresetRequest struct {
ProviderName inferenceSpec.ProviderName `path:"providerName" required:"true"`
Body *PatchProviderPresetRequestBody
}
type PatchProviderPresetRequestBody ¶
type PatchProviderPresetRequestBody struct {
DisplayName *ProviderDisplayName `json:"displayName,omitempty"`
SDKType *inferenceSpec.ProviderSDKType `json:"sdkType,omitempty"`
IsEnabled *bool `json:"isEnabled,omitempty"`
Origin *string `json:"origin,omitempty"`
ChatCompletionPathPrefix *string `json:"chatCompletionPathPrefix,omitempty"`
APIKeyHeaderKey *string `json:"apiKeyHeaderKey,omitempty"`
DefaultHeaders map[string]string `json:"defaultHeaders,omitempty"`
DefaultModelPresetID *ModelPresetID `json:"defaultModelPresetID,omitempty"`
CapabilitiesOverride *capabilityoverride.ModelCapabilitiesOverride `json:"capabilitiesOverride,omitempty"`
}
PatchProviderPresetRequestBody patches an existing provider preset.
Semantics:
- nil pointer fields => not provided
- DefaultHeaders nil => not provided
- DefaultHeaders {} => replace with empty map
- only user providers can patch provider metadata/capabilities
- built-ins only support isEnabled and defaultModelPresetID
type PatchProviderPresetResponse ¶
type PatchProviderPresetResponse struct{}
type PostModelPresetRequest ¶ added in v0.0.85
type PostModelPresetRequest struct {
ProviderName inferenceSpec.ProviderName `path:"providerName" required:"true"`
ModelPresetID ModelPresetID `path:"modelPresetID" required:"true"`
Body *PostModelPresetRequestBody
}
type PostModelPresetRequestBody ¶ added in v0.0.85
type PostModelPresetRequestBody struct {
ModelPresetPatch
Name ModelName `json:"name" required:"true"`
Slug ModelSlug `json:"slug" required:"true"`
DisplayName ModelDisplayName `json:"displayName" required:"true"`
IsEnabled bool `json:"isEnabled" required:"true"`
}
type PostModelPresetResponse ¶ added in v0.0.85
type PostModelPresetResponse struct{}
type PostProviderPresetRequest ¶ added in v0.0.85
type PostProviderPresetRequest struct {
ProviderName inferenceSpec.ProviderName `path:"providerName" required:"true"`
Body *PostProviderPresetRequestBody
}
type PostProviderPresetRequestBody ¶ added in v0.0.85
type PostProviderPresetRequestBody struct {
DisplayName ProviderDisplayName `json:"displayName" required:"true"`
SDKType inferenceSpec.ProviderSDKType `json:"sdkType" required:"true"`
IsEnabled bool `json:"isEnabled" required:"true"`
Origin string `json:"origin" required:"true"`
ChatCompletionPathPrefix string `json:"chatCompletionPathPrefix" required:"true"`
APIKeyHeaderKey string `json:"apiKeyHeaderKey,omitempty"`
DefaultHeaders map[string]string `json:"defaultHeaders,omitempty"`
CapabilitiesOverride *capabilityoverride.ModelCapabilitiesOverride `json:"capabilitiesOverride,omitempty"`
}
type PostProviderPresetResponse ¶ added in v0.0.85
type PostProviderPresetResponse struct{}
type PresetsSchema ¶
type PresetsSchema struct {
SchemaVersion string `json:"schemaVersion"`
DefaultProvider inferenceSpec.ProviderName `json:"defaultProvider"`
ProviderPresets map[inferenceSpec.ProviderName]ProviderPreset `json:"providerPresets"`
}
type ProviderDisplayName ¶
type ProviderDisplayName string
type ProviderPageToken ¶
type ProviderPageToken struct {
Names []inferenceSpec.ProviderName `json:"n,omitempty"` //nolint:tagliatelle // PageToken Specific.
IncludeDisabled bool `json:"d,omitempty"` //nolint:tagliatelle // PageToken Specific.
PageSize int `json:"s,omitempty"` //nolint:tagliatelle // PageToken Specific.
CursorSlug inferenceSpec.ProviderName `json:"c,omitempty"` //nolint:tagliatelle // PageToken Specific.
}
type ProviderPreset ¶
type ProviderPreset struct {
SchemaVersion string `json:"schemaVersion" required:"true"`
Name inferenceSpec.ProviderName `json:"name" required:"true"`
DisplayName ProviderDisplayName `json:"displayName" required:"true"`
SDKType inferenceSpec.ProviderSDKType `json:"sdkType" required:"true"`
IsEnabled bool `json:"isEnabled" required:"true"`
CreatedAt time.Time `json:"createdAt"`
ModifiedAt time.Time `json:"modifiedAt"`
IsBuiltIn bool `json:"isBuiltIn"`
Origin string `json:"origin" required:"true"`
ChatCompletionPathPrefix string `json:"chatCompletionPathPrefix" required:"true"`
APIKeyHeaderKey string `json:"apiKeyHeaderKey" required:"true"`
DefaultHeaders map[string]string `json:"defaultHeaders"`
// CapabilitiesOverride is a provider-wide stored override. Model overrides take precedence.
// This is NOT the derived/effective capability profile.
CapabilitiesOverride *capabilityoverride.ModelCapabilitiesOverride `json:"capabilitiesOverride,omitempty"`
DefaultModelPresetID ModelPresetID `json:"defaultModelPresetID"`
ModelPresets map[ModelPresetID]ModelPreset `json:"modelPresets"`
}
Click to show internal directories.
Click to hide internal directories.