|---|
| *Click your Gemini API provider to view provider-specific content and code on this page.* <button value="dev" default="">Gemini Developer API</button> <button value="vertex">Agent Platform Gemini API</button> |

<br />

<br />

When you make a request to a generative model, you send along a *prompt* with
your request. By carefully crafting these prompts, you can influence the model
to generate output specific to your needs.

## Prompting for Gemini models

Prompts for Gemini models can contain questions,
instructions, contextual information, few-shot examples, and partial input for
the model to complete or continue.

Learn about prompt design in the Gemini Developer API documentation:

- [Prompt design strategies](https://ai.google.dev/gemini-api/docs/prompting-strategies)

- [Prompt samples](https://ai.google.dev/gemini-api/prompts)

> [!TIP]
> **Tip:** You can experiment with prompts and model configurations and rapidly iterate using [Google AI Studio](https://aistudio.google.com).

## Other options to control content generation

- Configure [model parameters](https://firebase.google.com/docs/ai-logic/model-parameters.md.txt) to control how the model generates a response, like max output tokens, the probability of repeated output tokens, etc.
- Use [safety settings](https://firebase.google.com/docs/ai-logic/safety-settings.md.txt) to adjust the likelihood of getting responses that may be considered harmful, including hate speech and sexually explicit content.
- Set [system instructions](https://firebase.google.com/docs/ai-logic/system-instructions.md.txt) to steer the behavior of the model. This feature is like a preamble that you add before the model gets exposed to any further instructions from the end user.
- Pass a [*response schema*](https://firebase.google.com/docs/ai-logic/generate-structured-output.md.txt) along with the prompt to specify a specific output schema. This feature is most commonly used when [generating JSON output](https://firebase.google.com/docs/ai-logic/generate-structured-output.md.txt#generate-json-basic), but it can also be used for [classification tasks](https://firebase.google.com/docs/ai-logic/generate-structured-output.md.txt#generate-enum-basic) (like when you want the model to use specific labels or tags).