feat: register Eleven Labs as transcription provider
This commit is contained in:
@@ -57,6 +57,12 @@ func NewTranscriber(config Config) (Transcriber, error) {
|
||||
}
|
||||
adapter = NewMistralAdapter(config)
|
||||
|
||||
case "elevenlabs":
|
||||
if config.APIKey == "" {
|
||||
return nil, fmt.Errorf("ElevenLabs API key required")
|
||||
}
|
||||
adapter = NewElevenLabsAdapter(config)
|
||||
|
||||
default:
|
||||
return nil, fmt.Errorf("unsupported provider: %s", config.Provider)
|
||||
}
|
||||
|
||||
@@ -95,6 +95,36 @@ func TestNewTranscriber(t *testing.T) {
|
||||
},
|
||||
wantErr: true,
|
||||
},
|
||||
{
|
||||
name: "valid elevenlabs config with scribe_v1",
|
||||
config: Config{
|
||||
Provider: "elevenlabs",
|
||||
APIKey: "test-key",
|
||||
Language: "en",
|
||||
Model: "scribe_v1",
|
||||
},
|
||||
wantErr: false,
|
||||
},
|
||||
{
|
||||
name: "valid elevenlabs config with scribe_v2",
|
||||
config: Config{
|
||||
Provider: "elevenlabs",
|
||||
APIKey: "test-key",
|
||||
Language: "pt",
|
||||
Model: "scribe_v2",
|
||||
},
|
||||
wantErr: false,
|
||||
},
|
||||
{
|
||||
name: "elevenlabs config without api key",
|
||||
config: Config{
|
||||
Provider: "elevenlabs",
|
||||
APIKey: "",
|
||||
Language: "en",
|
||||
Model: "scribe_v1",
|
||||
},
|
||||
wantErr: true,
|
||||
},
|
||||
{
|
||||
name: "unsupported provider",
|
||||
config: Config{
|
||||
|
||||
Reference in New Issue
Block a user