Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/phpaisdk/groq/llms.txt

Use this file to discover all available pages before exploring further.

The aisdk/groq package ships a curated catalog of Groq-hosted models defined in resources/models.json. Every model in the catalog is resolved by the GroqTextModel class at runtime, giving you accurate capability introspection without any manual configuration. This page lists each built-in model, its supported capabilities, context limits, and pricing, so you can choose the right model for your workload before writing a line of code.

Capability states

Each capability on a model can be in one of three states:
StateMeaning
NativeThe model supports this capability directly via the Groq API.
AdaptedThe SDK transparently adapts the request so the feature works (e.g., json_schema downgraded to json_object with an injected instruction).
Not SupportedThe capability is unavailable on this model; attempting to use it throws a CapabilityNotSupportedException.

Looking up a model

Resolve any catalog model by passing its exact ID to Groq::model():
Resolving a model handle
use AiSdk\Groq;

$model = Groq::model('llama-3.3-70b-versatile');

Checking capabilities

Once you have a model handle you can inspect its capabilities programmatically:
Inspecting capability support
use AiSdk\Capability;
use AiSdk\Groq;

$model = Groq::model('llama-3.3-70b-versatile');

// Boolean check
$model->supports(Capability::ToolCalling); // true
$model->supports(Capability::StructuredOutput); // false

// Full CapabilitySupport object — exposes ->state and ->source
$support = $model->capability(Capability::ToolCalling);
echo $support->state->name;  // "Supported"
echo $support->source;       // e.g. "catalog"

// For a model with Adapted structured output:
$model8b = Groq::model('llama-3.1-8b-instant');
$support8b = $model8b->capability(Capability::StructuredOutput);
echo $support8b->state->name;  // "Adapted"
Use the ->state property when you need to branch on Native vs Adapted — for example, to decide whether to send a json_schema response format or fall back to prose parsing.

Model catalog

The table below covers every model registered in the catalog. Model IDs that end with * are prefix-matched — any model ID starting with that prefix resolves to the same capability set (e.g., meta-llama/llama-4-scout-17b-16e-instruct matches meta-llama/llama-4-scout*).
Model IDLabCtx (tokens)Text GenStreamingTool CallingStruct. OutputText InputImage InputPricing (input / output per 1M)
llama-3.1-8b-instantMeta131 072NativeNativeNativeAdaptedNative
llama-3.3-70b-versatileMeta131 072NativeNativeNativeNative
meta-llama/llama-4-scout*MetaNativeNativeNativeNativeNative
meta-llama/llama-4-maverick*MetaNativeNativeNativeNativeNative
moonshotai/kimi*MoonshotAINativeNativeNativeNativeNative
openai/gpt-oss-20bOpenAI131 072NativeNativeNativeNativeNative0.10/0.10 / 0.50
openai/gpt-oss-120bOpenAI131 072NativeNativeNativeNativeNative0.15/0.15 / 0.75
A in the context-window column means the limit is not declared in the catalog. Groq may still enforce an undocumented limit server-side; check the Groq model documentation for the latest figures.

Model notes

Meta — llama-3.1-8b-instant & llama-3.3-70b-versatile

These two are the general-purpose workhorses on Groq. Both carry a 131 072-token context window, making them well-suited for long-context summarisation and retrieval tasks. Structured output is adapted on llama-3.1-8b-instant: the SDK automatically rewrites a json_schema response-format request to json_object and injects a system instruction telling the model to return valid JSON. llama-3.3-70b-versatile does not support structured output in any form — neither native nor adapted.

Meta — meta-llama/llama-4-scout* & meta-llama/llama-4-maverick*

Llama 4 models add image input (multimodal) alongside the full text-generation and tool-calling suite. Because these models are released iteratively under versioned suffixes (e.g., -instruct, -16e-instruct), the catalog uses a prefix match so every point release inherits the same capability set automatically. Structured output is not supported on these models.

MoonshotAI — moonshotai/kimi*

Kimi models support native structured output — the SDK passes json_schema response format directly without any downgrade or injected instruction. Use these when you need strict, validated JSON and want to avoid the overhead of the adapted fallback.

OpenAI — openai/gpt-oss-20b & openai/gpt-oss-120b

The gpt-oss family is the only Groq-hosted series with published per-token pricing. Both models also support native structured output. Choose 20b for cost-sensitive workloads and 120b for tasks that benefit from a larger parameter count.
Pricing figures shown are from resources/models.json and may not reflect the latest Groq console rates. Always verify current pricing in the Groq pricing documentation.

Build docs developers (and LLMs) love