|
10 | 10 |
|
11 | 11 | use anyhow::Result; |
12 | 12 | use braintrust_llm_router::{ |
13 | | - serde_json::json, AnthropicConfig, AnthropicProvider, AuthConfig, ClientHeaders, ModelCatalog, |
14 | | - OpenAIConfig, OpenAIProvider, ProviderFormat, Router, |
| 13 | + api_key_auth, serde_json::json, AnthropicConfig, AnthropicProvider, AuthConfig, ClientHeaders, |
| 14 | + ModelCatalog, OpenAIConfig, OpenAIProvider, ProviderFormat, Router, |
15 | 15 | }; |
16 | 16 | use bytes::Bytes; |
17 | 17 | use serde_json::Value; |
@@ -40,25 +40,28 @@ async fn main() -> Result<()> { |
40 | 40 | // Add OpenAI provider if key is available |
41 | 41 | if let Some(key) = &openai_key { |
42 | 42 | let openai_provider = OpenAIProvider::new(OpenAIConfig::default())?; |
43 | | - builder = builder |
44 | | - .add_provider("openai", openai_provider) |
45 | | - .add_api_key("openai", key.clone()); |
| 43 | + builder = builder.add_provider( |
| 44 | + "openai", |
| 45 | + openai_provider, |
| 46 | + api_key_auth(key), |
| 47 | + vec![ProviderFormat::ChatCompletions], |
| 48 | + ); |
46 | 49 | println!("✅ OpenAI provider configured"); |
47 | 50 | } |
48 | 51 |
|
49 | 52 | // Add Anthropic provider if key is available |
50 | 53 | if let Some(key) = &anthropic_key { |
51 | 54 | let anthropic_provider = AnthropicProvider::new(AnthropicConfig::default())?; |
52 | | - builder = builder |
53 | | - .add_provider("anthropic", anthropic_provider) |
54 | | - .add_auth( |
55 | | - "anthropic", |
56 | | - AuthConfig::ApiKey { |
57 | | - key: key.clone(), |
58 | | - header: Some("x-api-key".into()), |
59 | | - prefix: None, |
60 | | - }, |
61 | | - ); |
| 55 | + builder = builder.add_provider( |
| 56 | + "anthropic", |
| 57 | + anthropic_provider, |
| 58 | + AuthConfig::ApiKey { |
| 59 | + key: key.clone(), |
| 60 | + header: Some("x-api-key".into()), |
| 61 | + prefix: None, |
| 62 | + }, |
| 63 | + vec![ProviderFormat::ChatCompletions], |
| 64 | + ); |
62 | 65 | println!("✅ Anthropic provider configured"); |
63 | 66 | } |
64 | 67 |
|
|
0 commit comments