Each model entry inDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/phpaisdk/google/llms.txt
Use this file to discover all available pages before exploring further.
resources/models.json declares a list of capability strings that the SDK uses for two purposes: validating that a request feature is supported before sending it to the API, and answering runtime queries via ->supports(Capability::X) or ->capability(Capability::X). The capability constants live in the core AiSdk\Capability enum and are resolved against each model’s catalog entry.
Capability Reference
| Capability string | Constant | Description |
|---|---|---|
text_generation | Capability::TextGeneration | The model can produce text output. All Gemini models in the catalog carry this capability. |
streaming | Capability::Streaming | Supports Server-Sent Events (SSE) streaming via the ?alt=sse endpoint. |
tool_calling | Capability::ToolCalling | Supports function calling — the model can invoke tools you register with a request. |
structured_output | Capability::StructuredOutput | Returns JSON validated against a response_schema you provide. |
reasoning | Capability::Reasoning | Extended thinking / thinking tokens. Currently limited to gemini-3* and gemini-2.5*. |
text_input | Capability::TextInput | Accepts plain text in message content parts. |
image_input | Capability::ImageInput | Accepts image content parts (inline base64 or file references). |
audio_input | Capability::AudioInput | Accepts audio content parts. |
file_input | Capability::FileInput | Accepts document and file content parts uploaded via the Files API. |
image_generation | Capability::ImageGeneration | Can generate image output — exclusive to the dedicated image models. |
Checking Capabilities at Runtime
BothGoogleTextModel and GoogleImageModel implement ->supports(Capability) and ->capability(Capability). Use supports() for a quick boolean check, or capability() when you need the full CapabilitySupport object (which also carries a source label).
Unknown Model Fallback
If you pass a model ID that does not match any wildcard or exact entry in the catalog,GoogleTextModel::capability() applies a safe fallback specifically for TextGeneration. Rather than returning “not supported”, the SDK returns CapabilitySupport::supported($capability, 'unknown-model-fallback'), keeping your application functional while signalling that the model was not found in the catalog.
This logic lives in GoogleTextModel:
GoogleImageModel does not apply this fallback — image models must be present in the catalog.
If you need capabilities for models outside the built-in catalog — for example, a private fine-tuned endpoint — you can supply a custom
ModelRegistry when constructing GoogleTextModel or GoogleImageModel directly. A registry entry overrides catalog resolution and lets you declare exactly which capabilities your custom model supports.