@@ -0,0 +1,14 @@
|
||||
package provider
|
||||
|
||||
// LlamaSwapProvider represents LlamaSwap's authenticated OpenAI-compatible
|
||||
// proxy. The concrete model IDs are supplied in config because LlamaSwap can
|
||||
// route to any model configured by its operator.
|
||||
type LlamaSwapProvider struct{}
|
||||
|
||||
func (p *LlamaSwapProvider) Name() string { return ProviderLlamaSwap }
|
||||
func (p *LlamaSwapProvider) RequiresAPIKey() bool { return true }
|
||||
func (p *LlamaSwapProvider) ValidateAPIKey(key string) bool { return key != "" }
|
||||
func (p *LlamaSwapProvider) APIKeyURL() string { return "" }
|
||||
func (p *LlamaSwapProvider) IsLocal() bool { return false }
|
||||
func (p *LlamaSwapProvider) Models() []Model { return nil }
|
||||
func (p *LlamaSwapProvider) DefaultModel(ModelType) string { return "" }
|
||||
@@ -8,6 +8,7 @@ const (
|
||||
ProviderElevenLabs = "elevenlabs"
|
||||
ProviderDeepgram = "deepgram"
|
||||
ProviderWhisperCpp = "whisper-cpp"
|
||||
ProviderLlamaSwap = "llama-swap"
|
||||
)
|
||||
|
||||
// Config provider names (used in config file transcription.provider)
|
||||
@@ -27,6 +28,7 @@ const (
|
||||
EnvMistralKey = "MISTRAL_API_KEY"
|
||||
EnvElevenLabsKey = "ELEVENLABS_API_KEY"
|
||||
EnvDeepgramKey = "DEEPGRAM_API_KEY"
|
||||
EnvLlamaSwapKey = "LLAMA_SWAP_API_KEY"
|
||||
)
|
||||
|
||||
// Adapter type constants for transcription backends
|
||||
@@ -66,6 +68,8 @@ func EnvVarForProvider(provider string) string {
|
||||
return EnvElevenLabsKey
|
||||
case ProviderDeepgram:
|
||||
return EnvDeepgramKey
|
||||
case ProviderLlamaSwap:
|
||||
return EnvLlamaSwapKey
|
||||
default:
|
||||
return ""
|
||||
}
|
||||
|
||||
@@ -31,6 +31,7 @@ func init() {
|
||||
Register(&ElevenLabsProvider{})
|
||||
Register(&WhisperCppProvider{})
|
||||
Register(&DeepgramProvider{})
|
||||
Register(&LlamaSwapProvider{})
|
||||
}
|
||||
|
||||
// Register adds a provider to the registry
|
||||
|
||||
Reference in New Issue
Block a user