//! OpenAI-compatible provider adapter.
//!
//! Supports chat completions (with streaming), tool calling, embeddings,
//! and structured output. Works with OpenAI, Azure OpenAI, and any
//! OpenAI-compatible API endpoint.
//!
//! # Examples
//!
//! ```no_run
//! use behest::adapt::openai::{OpenAiChatAdapter, OpenAiEmbeddingAdapter};
//! use behest::provider::ProviderHttpConfig;
//! use behest::provider::ProviderId;
//! use secrecy::SecretString;
//!
//! let config = ProviderHttpConfig::new(
//! ProviderId::new("openai"),
//! "https://api.openai.com/v1",
//! )
//! .with_api_key(SecretString::new("sk-...".into()));
//!
//! let chat = OpenAiChatAdapter::new(config.clone());
//! let embeddings = OpenAiEmbeddingAdapter::new(config);
//! ```
pub use OpenAiChatAdapter;
pub use OpenAiEmbeddingAdapter;
/// Default OpenAI API base URL.
pub const DEFAULT_BASE_URL: &str = "https://api.openai.com/v1";