Documentation
¶
Overview ¶
Package store implements the provider / model-preset storage layer. It offers CRUD operations for both providers and model-presets, integrates read-only built-in data, performs structural validation and supports paged listing with opaque tokens.
Index ¶
- func InitModelPresetStoreHandlers(api huma.API, modelPresetStoreAPI *ModelPresetStore)
- type BuiltInPresets
- func (b *BuiltInPresets) Close() error
- func (b *BuiltInPresets) GetBuiltInDefaultProviderName(ctx context.Context) (inferenceSpec.ProviderName, error)
- func (b *BuiltInPresets) GetBuiltInModelPreset(ctx context.Context, provider inferenceSpec.ProviderName, ...) (spec.ModelPreset, error)
- func (b *BuiltInPresets) GetBuiltInProvider(ctx context.Context, name inferenceSpec.ProviderName) (spec.ProviderPreset, error)
- func (b *BuiltInPresets) ListBuiltInPresets(ctx context.Context) (providerPresets map[inferenceSpec.ProviderName]spec.ProviderPreset, ...)
- func (b *BuiltInPresets) SetDefaultModelPreset(ctx context.Context, provider inferenceSpec.ProviderName, ...) (spec.ProviderPreset, error)
- func (b *BuiltInPresets) SetModelPresetEnabled(ctx context.Context, provider inferenceSpec.ProviderName, ...) (spec.ModelPreset, error)
- func (b *BuiltInPresets) SetProviderEnabled(ctx context.Context, name inferenceSpec.ProviderName, enabled bool) (spec.ProviderPreset, error)
- type ModelPresetStore
- func (s *ModelPresetStore) Close() error
- func (s *ModelPresetStore) DeleteModelPreset(ctx context.Context, req *spec.DeleteModelPresetRequest) (*spec.DeleteModelPresetResponse, error)
- func (s *ModelPresetStore) DeleteProviderPreset(ctx context.Context, req *spec.DeleteProviderPresetRequest) (*spec.DeleteProviderPresetResponse, error)
- func (s *ModelPresetStore) GetDefaultProvider(ctx context.Context, req *spec.GetDefaultProviderRequest) (*spec.GetDefaultProviderResponse, error)
- func (s *ModelPresetStore) GetModelPreset(ctx context.Context, req *spec.GetModelPresetRequest) (*spec.GetModelPresetResponse, error)
- func (s *ModelPresetStore) ListProviderPresets(ctx context.Context, req *spec.ListProviderPresetsRequest) (*spec.ListProviderPresetsResponse, error)
- func (s *ModelPresetStore) PatchDefaultProvider(ctx context.Context, req *spec.PatchDefaultProviderRequest) (*spec.PatchDefaultProviderResponse, error)
- func (s *ModelPresetStore) PatchModelPreset(ctx context.Context, req *spec.PatchModelPresetRequest) (*spec.PatchModelPresetResponse, error)
- func (s *ModelPresetStore) PatchProviderPreset(ctx context.Context, req *spec.PatchProviderPresetRequest) (*spec.PatchProviderPresetResponse, error)
- func (s *ModelPresetStore) PostModelPreset(ctx context.Context, req *spec.PostModelPresetRequest) (*spec.PostModelPresetResponse, error)
- func (s *ModelPresetStore) PostProviderPreset(ctx context.Context, req *spec.PostProviderPresetRequest) (*spec.PostProviderPresetResponse, error)
- type PresetStoreOption
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InitModelPresetStoreHandlers ¶
func InitModelPresetStoreHandlers(api huma.API, modelPresetStoreAPI *ModelPresetStore)
InitModelPresetStoreHandlers registers all endpoints related to settings.
Types ¶
type BuiltInPresets ¶
type BuiltInPresets struct {
// contains filtered or unexported fields
}
BuiltInPresets loads built-in preset assets and maintains an overlay store.
func NewBuiltInPresets ¶
func NewBuiltInPresets( ctx context.Context, overlayBaseDir string, maxSnapshotAge time.Duration, opts ...PresetStoreOption, ) (bi *BuiltInPresets, err error)
NewBuiltInPresets prepares the presets store and loads a first snapshot.
func (*BuiltInPresets) Close ¶ added in v0.0.79
func (b *BuiltInPresets) Close() error
func (*BuiltInPresets) GetBuiltInDefaultProviderName ¶
func (b *BuiltInPresets) GetBuiltInDefaultProviderName( ctx context.Context, ) (inferenceSpec.ProviderName, error)
GetBuiltInDefaultProviderName fetches the default provider name in builtin.
func (*BuiltInPresets) GetBuiltInModelPreset ¶
func (b *BuiltInPresets) GetBuiltInModelPreset( ctx context.Context, provider inferenceSpec.ProviderName, modelID spec.ModelPresetID, ) (spec.ModelPreset, error)
GetBuiltInModelPreset fetches a model preset.
func (*BuiltInPresets) GetBuiltInProvider ¶
func (b *BuiltInPresets) GetBuiltInProvider( ctx context.Context, name inferenceSpec.ProviderName, ) (spec.ProviderPreset, error)
GetBuiltInProvider fetches a provider from the snapshot.
func (*BuiltInPresets) ListBuiltInPresets ¶
func (b *BuiltInPresets) ListBuiltInPresets(ctx context.Context) ( providerPresets map[inferenceSpec.ProviderName]spec.ProviderPreset, modelPresets map[inferenceSpec.ProviderName]map[spec.ModelPresetID]spec.ModelPreset, err error, )
ListBuiltInPresets returns deep-copied snapshots.
func (*BuiltInPresets) SetDefaultModelPreset ¶
func (b *BuiltInPresets) SetDefaultModelPreset( ctx context.Context, provider inferenceSpec.ProviderName, modelID spec.ModelPresetID, ) (spec.ProviderPreset, error)
func (*BuiltInPresets) SetModelPresetEnabled ¶
func (b *BuiltInPresets) SetModelPresetEnabled( ctx context.Context, provider inferenceSpec.ProviderName, modelID spec.ModelPresetID, enabled bool, ) (spec.ModelPreset, error)
SetModelPresetEnabled toggles a model preset.
func (*BuiltInPresets) SetProviderEnabled ¶
func (b *BuiltInPresets) SetProviderEnabled( ctx context.Context, name inferenceSpec.ProviderName, enabled bool, ) (spec.ProviderPreset, error)
SetProviderEnabled toggles a provider.
type ModelPresetStore ¶
type ModelPresetStore struct {
// contains filtered or unexported fields
}
ModelPresetStore is the main storage façade for provider / model-preset data.
func NewModelPresetStore ¶
func NewModelPresetStore(baseDir string) (*ModelPresetStore, error)
NewModelPresetStore initialises the storage in baseDir. Built-in data are automatically loaded and overlaid.
func (*ModelPresetStore) Close ¶ added in v0.0.79
func (s *ModelPresetStore) Close() error
func (*ModelPresetStore) DeleteModelPreset ¶
func (s *ModelPresetStore) DeleteModelPreset( ctx context.Context, req *spec.DeleteModelPresetRequest, ) (*spec.DeleteModelPresetResponse, error)
DeleteModelPreset removes a model preset.
func (*ModelPresetStore) DeleteProviderPreset ¶
func (s *ModelPresetStore) DeleteProviderPreset( ctx context.Context, req *spec.DeleteProviderPresetRequest, ) (*spec.DeleteProviderPresetResponse, error)
DeleteProviderPreset removes a provider if it has no model presets.
func (*ModelPresetStore) GetDefaultProvider ¶
func (s *ModelPresetStore) GetDefaultProvider( ctx context.Context, req *spec.GetDefaultProviderRequest, ) (*spec.GetDefaultProviderResponse, error)
func (*ModelPresetStore) GetModelPreset ¶ added in v0.0.81
func (s *ModelPresetStore) GetModelPreset( ctx context.Context, req *spec.GetModelPresetRequest, ) (*spec.GetModelPresetResponse, error)
func (*ModelPresetStore) ListProviderPresets ¶
func (s *ModelPresetStore) ListProviderPresets( ctx context.Context, req *spec.ListProviderPresetsRequest, ) (*spec.ListProviderPresetsResponse, error)
ListProviderPresets lists provider presets with optional filters and paging.
func (*ModelPresetStore) PatchDefaultProvider ¶
func (s *ModelPresetStore) PatchDefaultProvider( ctx context.Context, req *spec.PatchDefaultProviderRequest, ) (*spec.PatchDefaultProviderResponse, error)
func (*ModelPresetStore) PatchModelPreset ¶
func (s *ModelPresetStore) PatchModelPreset( ctx context.Context, req *spec.PatchModelPresetRequest, ) (*spec.PatchModelPresetResponse, error)
PatchModelPreset updates a model preset.
func (*ModelPresetStore) PatchProviderPreset ¶
func (s *ModelPresetStore) PatchProviderPreset( ctx context.Context, req *spec.PatchProviderPresetRequest, ) (*spec.PatchProviderPresetResponse, error)
PatchProviderPreset updates a provider preset.
User providers support partial updates to metadata, default model, and capabilities override.
Built-in providers only support overlaying:
- isEnabled
- defaultModelPresetID
func (*ModelPresetStore) PostModelPreset ¶ added in v0.0.85
func (s *ModelPresetStore) PostModelPreset( ctx context.Context, req *spec.PostModelPresetRequest, ) (*spec.PostModelPresetResponse, error)
PostModelPreset creates a new model preset on a user provider.
func (*ModelPresetStore) PostProviderPreset ¶ added in v0.0.85
func (s *ModelPresetStore) PostProviderPreset( ctx context.Context, req *spec.PostProviderPresetRequest, ) (*spec.PostProviderPresetResponse, error)
PostProviderPreset creates a new provider preset.
type PresetStoreOption ¶
type PresetStoreOption func(*BuiltInPresets)