# Groq Ultra-fast LLM inference with custom hardware (LPU). OpenAI-compatible with Groq-specific options. ## Configuration ```bash GROQ_API_KEY=gsk_... ``` ## Model Specs For the full model-spec workflow, see [Model Specs](model-specs.md). Use exact Groq model IDs from [LLMDB.xyz](https://llmdb.xyz) when possible. If you need to use a model ID before it lands in the registry, use `ReqLLM.model!/1`. ## Provider Options Passed via `:provider_options` keyword: ### `service_tier` - **Type**: `"auto"` | `"on_demand"` | `"flex"` | `"performance"` - **Default**: `"auto"` - **Purpose**: Control performance tier for requests - **Example**: `provider_options: [service_tier: "performance"]` ### `reasoning_effort` - **Type**: `"none"` | `"default"` | `"low"` | `"medium"` | `"high"` - **Purpose**: Control reasoning level for compatible models - **Compatible**: DeepSeek R1 distill models - **Example**: `provider_options: [reasoning_effort: "high"]` ### `reasoning_format` - **Type**: String - **Purpose**: Specify format for reasoning output - **Example**: `provider_options: [reasoning_format: "detailed"]` ### `search_settings` - **Type**: Map - **Purpose**: Enable web search capabilities - **Keys**: - `include_domains`: List of domains to include - `exclude_domains`: List of domains to exclude - **Example**: ```elixir provider_options: [ search_settings: %{ include_domains: ["techcrunch.com", "arstechnica.com"], exclude_domains: ["spam.com"] } ] ``` ### `compound_custom` - **Type**: Map - **Purpose**: Custom configuration for Compound systems - **Example**: `provider_options: [compound_custom: %{...}]` ## Performance Notes - **Streaming**: Groq's LPU hardware excels at streaming - tokens appear instantly - **Model Selection**: Use `8b-instant` for speed, `70b` for quality - **Service Tier**: Use `"performance"` for lowest latency - **Concurrency**: Handles concurrent requests efficiently ## Resources - [Groq Documentation](https://console.groq.com/docs) - [Model Playground](https://console.groq.com/playground)