Google Gemma
Run Google's Gemma model with vision capabilities via OpenRouter.
Ask a question to Google's Gemma model with vision capabilities.
You can specify arbitrary text prompts or predefined ones, the block supports the following types of prompt:
Open Prompt (
unconstrained) - Use any prompt to generate a raw responseText Recognition (OCR) (
ocr) - Model recognizes text in the imageVisual Question Answering (
visual-question-answering) - Model answers the question you submit in the promptCaptioning (short) (
caption) - Model provides a short description of the imageCaptioning (
detailed-caption) - Model provides a long description of the imageSingle-Label Classification (
classification) - Model classifies the image content as one of the provided classesMulti-Label Classification (
multi-label-classification) - Model classifies the image content as one or more of the provided classesUnprompted Object Detection (
object-detection) - Model detects and returns the bounding boxes for prominent objects in the imageStructured Output Generation (
structured-answering) - Model returns a JSON response with the specified fields
🛠️ API providers and model variants
Gemma is exposed via OpenRouter. By default this block uses the Roboflow-managed OpenRouter key and bills your Roboflow credits - no extra setup needed. To bypass Roboflow billing, paste your own sk-or-... key into the api_key field.
The privacy_level field controls which OpenRouter providers may serve the request:
No data collection (default) – providers may not train on your inputs.
Allow data collection – broader provider pool, including providers that train on inputs.
Zero data retention – strictest, restricts to providers that retain nothing.
💡 Further reading and Acceptable Use Policy
Model license
Check the Gemma Terms of Use before use.
Type identifier
Use the following identifier in step "type" field: roboflow_core/google_gemma@v2 to add the block as a step in your workflow.
Properties
Name
Type
Description
Refs
name
str
Enter a unique identifier for this step..
❌
api_key
str
OpenRouter API key. Defaults to Roboflow's managed key, billed in credits via Roboflow. Provide your own sk-or-... key to call OpenRouter directly without Roboflow billing..
✅
privacy_level
str
Provider privacy filter. Stricter levels reduce the pool of providers and may increase per-call cost on the managed key..
❌
max_tokens
int
Maximum number of tokens the model can generate in its response..
❌
temperature
float
Temperature to sample from the model - value in range 0.0-2.0, the higher - the more random / "creative" the generations are..
✅
max_concurrent_requests
int
Number of concurrent requests for batches of images. If not given - block defaults to value configured globally in Workflows Execution Engine. Restrict if you hit rate limits..
❌
task_type
str
Task type to be performed by model. Value determines required parameters and output response..
❌
prompt
str
Text prompt to the Gemma model.
✅
output_structure
Dict[str, str]
Dictionary with structure of expected JSON response.
❌
classes
List[str]
List of classes to be used.
✅
model_version
str
Model to be used.
✅
The Refs column marks possibility to parametrise the property with dynamic values available in workflow runtime. See Bindings for more info.
Runtime compatibility
requires_internet - air-gapped / offline deployments : This block depends on a service that is not reachable from fully offline / air-gapped deployments.
Input and Output Bindings
The available connections depend on its binding kinds. Check what binding kinds Google Gemma in version v2 has.
Input and output bindings
input
api_key(Union[ROBOFLOW_MANAGED_KEY,secret,string]): OpenRouter API key. Defaults to Roboflow's managed key, billed in credits via Roboflow. Provide your ownsk-or-...key to call OpenRouter directly without Roboflow billing..temperature(float): Temperature to sample from the model - value in range 0.0-2.0, the higher - the more random / "creative" the generations are..images(image): The image to infer on..prompt(string): Text prompt to the Gemma model.classes(list_of_values): List of classes to be used.model_version(string): Model to be used.
output
output(Union[string,language_model_output]): String value ifstringor LLM / VLM output iflanguage_model_output.classes(list_of_values): List of values of any type.
Last updated
Was this helpful?