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) PutModelPreset(ctx context.Context, req *spec.PutModelPresetRequest) (*spec.PutModelPresetResponse, error)
- func (s *ModelPresetStore) PutProviderPreset(ctx context.Context, req *spec.PutProviderPresetRequest) (*spec.PutProviderPresetResponse, 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 enables or disables a model preset.
func (*ModelPresetStore) PatchProviderPreset ¶
func (s *ModelPresetStore) PatchProviderPreset( ctx context.Context, req *spec.PatchProviderPresetRequest, ) (*spec.PatchProviderPresetResponse, error)
PatchProviderPreset updates a provider preset. It can (independently or simultaneously)
- enable / disable the provider (body.isEnabled)
- change the provider-level default model-preset (body.defaultModelPresetID).
At least one of the two fields must be supplied.
func (*ModelPresetStore) PutModelPreset ¶
func (s *ModelPresetStore) PutModelPreset( ctx context.Context, req *spec.PutModelPresetRequest, ) (*spec.PutModelPresetResponse, error)
PutModelPreset creates or replaces a model preset on a user provider.
func (*ModelPresetStore) PutProviderPreset ¶
func (s *ModelPresetStore) PutProviderPreset( ctx context.Context, req *spec.PutProviderPresetRequest, ) (*spec.PutProviderPresetResponse, error)
PutProviderPreset creates or replaces a provider preset.
type PresetStoreOption ¶
type PresetStoreOption func(*BuiltInPresets)
func WithModelPresetsFS ¶
func WithModelPresetsFS(fsys fs.FS, root string) PresetStoreOption
WithModelPresetsFS sets a custom FS + root for tests.