mirror of
https://github.com/jahruz67/wisp-open.git
synced 2026-08-08 18:14:08 +00:00
Add Mistral AI as inference provider with Voxtral Small transcription model
- Add support for multiple API providers (Groq and Mistral) - Add collapsible API keys section in settings for both providers - Label all models with their provider (Groq/Mistral) - Add Voxtral Small (Mistral) transcription model - Add Mistral Small and Mistral Medium AI refinement models - Use user-friendly model names while maintaining correct API model values - Update transcriber to route requests to correct provider based on model - Update config to store separate API keys for each provider - Add Mistral brand colors to CSS - Style API keys dropdown section Co-authored-by: jahruz67 <jahruz67@users.noreply.github.com>
This commit is contained in:
co-authored by
jahruz67
parent
f658ab0de3
commit
9c9ad5ef87
@@ -31,7 +31,8 @@ type HistoryItem struct {
|
||||
// Config represents the complete application configuration.
|
||||
type Config struct {
|
||||
Version int `json:"version"`
|
||||
APIKey string `json:"api_key"`
|
||||
GroqAPIKey string `json:"groq_api_key"`
|
||||
MistralAPIKey string `json:"mistral_api_key"`
|
||||
Shortcut string `json:"shortcut"`
|
||||
WhisperModel string `json:"whisper_model"`
|
||||
AIModel string `json:"ai_model"`
|
||||
@@ -50,7 +51,8 @@ var saveMu sync.Mutex
|
||||
// DefaultConfig returns a new configuration with sensible default values.
|
||||
func DefaultConfig() *Config {
|
||||
return &Config{
|
||||
APIKey: "",
|
||||
GroqAPIKey: "",
|
||||
MistralAPIKey: "",
|
||||
Shortcut: DefaultShortcut,
|
||||
WhisperModel: DefaultWhisperModel,
|
||||
AIModel: DefaultAIModel,
|
||||
@@ -197,3 +199,25 @@ func (c *Config) AddHistoryItem(text, timestamp string) {
|
||||
func (c *Config) ClearHistory() {
|
||||
c.History = []HistoryItem{}
|
||||
}
|
||||
|
||||
// GetAPIKey returns the API key for a specific provider
|
||||
func (c *Config) GetAPIKey(provider string) string {
|
||||
switch provider {
|
||||
case "groq":
|
||||
return c.GroqAPIKey
|
||||
case "mistral":
|
||||
return c.MistralAPIKey
|
||||
default:
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
// SetAPIKey sets the API key for a specific provider
|
||||
func (c *Config) SetAPIKey(provider, key string) {
|
||||
switch provider {
|
||||
case "groq":
|
||||
c.GroqAPIKey = key
|
||||
case "mistral":
|
||||
c.MistralAPIKey = key
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user