use serde::{Deserialize, Serialize};
#[derive(Clone, Serialize, Deserialize)]
pub struct AzureAIConfig {
pub endpoint: String,
#[serde(skip_serializing, default)]
pub api_key: String,
pub model: String,
}
impl std::fmt::Debug for AzureAIConfig {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.debug_struct("AzureAIConfig")
.field("endpoint", &self.endpoint)
.field("api_key", &"[REDACTED]")
.field("model", &self.model)
.finish()
}
}
impl AzureAIConfig {
pub fn new(
endpoint: impl Into<String>,
api_key: impl Into<String>,
model: impl Into<String>,
) -> Self {
Self { endpoint: endpoint.into(), api_key: api_key.into(), model: model.into() }
}
}