Documentation
¶
Overview ¶
Package registry provides a provider registry for managing multiple AI model providers (chat, embedding, image, speech, transcription) through a single, unified interface.
This is the Go equivalent of the AI SDK's createProviderRegistry function.
Usage:
reg := registry.New()
reg.RegisterChat("openai", openaiProvider)
reg.RegisterEmbed("openai", openaiEmbedProvider)
chatClient := reg.Chat("openai")
embedClient := reg.Embed("openai")
Index ¶
- Variables
- type Registry
- func (r *Registry) Chat(name string) (*chat.Client, error)
- func (r *Registry) Embed(name string) (*embed.Client, error)
- func (r *Registry) Image(name string) (*image.Client, error)
- func (r *Registry) Object(name string) (*object.Client, error)
- func (r *Registry) RegisterChat(name string, p chat.Provider)
- func (r *Registry) RegisterEmbed(name string, p embed.Provider)
- func (r *Registry) RegisterImage(name string, p image.Provider)
- func (r *Registry) RegisterObject(name string, p object.Provider)
- func (r *Registry) RegisterRerank(name string, p rerank.Provider)
- func (r *Registry) RegisterSpeech(name string, p speech.Provider)
- func (r *Registry) RegisterTranscribe(name string, p transcribe.Provider)
- func (r *Registry) RegisterVideo(name string, p video.Provider)
- func (r *Registry) Rerank(name string) (*rerank.Client, error)
- func (r *Registry) Speech(name string) (*speech.Client, error)
- func (r *Registry) Transcribe(name string) (*transcribe.Client, error)
- func (r *Registry) Video(name string) (*video.Client, error)
Constants ¶
This section is empty.
Variables ¶
var ErrProviderNotFound = errors.New("registry: provider not found")
ProviderNotFound is returned when a requested provider is not registered.
Functions ¶
This section is empty.
Types ¶
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
Registry manages provider registration and retrieval across all model domains (chat, embed, image, rerank, speech, transcription).
func (*Registry) Chat ¶
Chat returns a chat.Client backed by the named provider, or an error if not registered.
func (*Registry) Embed ¶
Embed returns an embed.Client backed by the named provider, or an error if not registered.
func (*Registry) Image ¶
Image returns an image.Client backed by the named provider, or an error if not registered.
func (*Registry) Object ¶
Object returns an object.Client backed by the named provider, or an error if not registered.
func (*Registry) RegisterChat ¶
RegisterChat registers a chat provider under the given name.
func (*Registry) RegisterEmbed ¶
RegisterEmbed registers an embedding provider under the given name.
func (*Registry) RegisterImage ¶
RegisterImage registers an image provider under the given name.
func (*Registry) RegisterObject ¶
RegisterObject registers an object generation provider under the given name.
func (*Registry) RegisterRerank ¶
RegisterRerank registers a reranking provider under the given name.
func (*Registry) RegisterSpeech ¶
RegisterSpeech registers a speech provider under the given name.
func (*Registry) RegisterTranscribe ¶
func (r *Registry) RegisterTranscribe(name string, p transcribe.Provider)
RegisterTranscribe registers a transcription provider under the given name.
func (*Registry) RegisterVideo ¶
RegisterVideo registers a video generation provider under the given name.
func (*Registry) Rerank ¶
Rerank returns a rerank.Client backed by the named provider, or an error if not registered.
func (*Registry) Speech ¶
Speech returns a speech.Client backed by the named provider, or an error if not registered.
func (*Registry) Transcribe ¶
func (r *Registry) Transcribe(name string) (*transcribe.Client, error)
Transcribe returns a transcribe.Client backed by the named provider, or an error if not registered.