store

package
v0.0.79 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2026 License: MPL-2.0 Imports: 24 Imported by: 0

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

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,
) (inferencegoSpec.ProviderName, error)

GetBuiltInDefaultProviderName fetches the default provider name in builtin.

func (*BuiltInPresets) GetBuiltInModelPreset

func (b *BuiltInPresets) GetBuiltInModelPreset(
	ctx context.Context,
	provider inferencegoSpec.ProviderName,
	modelID spec.ModelPresetID,
) (spec.ModelPreset, error)

GetBuiltInModelPreset fetches a model preset.

func (*BuiltInPresets) GetBuiltInProvider

func (b *BuiltInPresets) GetBuiltInProvider(
	ctx context.Context,
	name inferencegoSpec.ProviderName,
) (spec.ProviderPreset, error)

GetBuiltInProvider fetches a provider from the snapshot.

func (*BuiltInPresets) ListBuiltInPresets

func (b *BuiltInPresets) ListBuiltInPresets(ctx context.Context) (
	providerPresets map[inferencegoSpec.ProviderName]spec.ProviderPreset,
	modelPresets map[inferencegoSpec.ProviderName]map[spec.ModelPresetID]spec.ModelPreset,
	err error,
)

ListBuiltInPresets returns deep-copied snapshots.

func (*BuiltInPresets) SetDefaultModelPreset

func (b *BuiltInPresets) SetDefaultModelPreset(
	ctx context.Context,
	provider inferencegoSpec.ProviderName,
	modelID spec.ModelPresetID,
) (spec.ProviderPreset, error)

func (*BuiltInPresets) SetModelPresetEnabled

func (b *BuiltInPresets) SetModelPresetEnabled(
	ctx context.Context,
	provider inferencegoSpec.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 inferencegoSpec.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

DeleteModelPreset removes a model preset.

func (*ModelPresetStore) DeleteProviderPreset

DeleteProviderPreset removes a provider if it has no model presets.

func (*ModelPresetStore) GetDefaultProvider

func (*ModelPresetStore) ListProviderPresets

ListProviderPresets lists provider presets with optional filters and paging.

func (*ModelPresetStore) PatchDefaultProvider

func (*ModelPresetStore) PatchModelPreset

PatchModelPreset enables or disables a model preset.

func (*ModelPresetStore) PatchProviderPreset

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

PutModelPreset creates or replaces a model preset on a user provider.

func (*ModelPresetStore) PutProviderPreset

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL