allow openai to be used to name named compatible providers

This commit is contained in:
Michael Neale
2025-11-10 16:12:33 +11:00
parent 7bb36618d8
commit 81cd956c20
4 changed files with 61 additions and 2 deletions

View File

@@ -14,6 +14,9 @@ pub struct Config {
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ProvidersConfig {
pub openai: Option<OpenAIConfig>,
/// Multiple named OpenAI-compatible providers (e.g., openrouter, groq, etc.)
#[serde(default)]
pub openai_compatible: std::collections::HashMap<String, OpenAIConfig>,
pub anthropic: Option<AnthropicConfig>,
pub databricks: Option<DatabricksConfig>,
pub embedded: Option<EmbeddedConfig>,
@@ -121,6 +124,7 @@ impl Default for Config {
Self {
providers: ProvidersConfig {
openai: None,
openai_compatible: std::collections::HashMap::new(),
anthropic: None,
databricks: Some(DatabricksConfig {
host: "https://your-workspace.cloud.databricks.com".to_string(),
@@ -239,6 +243,7 @@ impl Config {
Self {
providers: ProvidersConfig {
openai: None,
openai_compatible: std::collections::HashMap::new(),
anthropic: None,
databricks: None,
embedded: Some(EmbeddedConfig {