//! This module provides integration with `Groq`'s API, enabling the use of language models within
//! the Swiftide project. It includes the `Groq` struct for managing API clients and default options
//! for prompt models. The module is conditionally compiled based on the "groq" feature flag.
use crateopenai;
use GroqConfig;
/// The `Groq` struct encapsulates a `Groq` client that implements [`swiftide_core::SimplePrompt`]
///
/// There is also a builder available.
///
/// By default it will look for a `GROQ_API_KEY` environment variable. Note that a model
/// always needs to be set, either with [`Groq::with_default_prompt_model`] or via the builder.
/// You can find available models in the Groq documentation.
///
/// Under the hood it uses [`async_openai`], with the Groq openai mapping. This means
/// some features might not work as expected. See the Groq documentation for details.
pub type Groq = GenericOpenAI;
pub type GroqBuilder = GenericOpenAIBuilder;
pub type GroqBuilderError = GenericOpenAIBuilderError;
pub use ;