Opções de configuração ao acessar a API Gemini pelo framework Foundation Models da Apple

Firebase AI LogicGemini API


Os exemplos nesta página pressupõem que você concluiu a seção Começar: acesse o Gemini API usando a estrutura de modelos de fundação da Apple.


Em cada solicitação a um modelo, é possível enviar algumas configurações para controlar como o modelo gera uma resposta. Cada modelo Gemini oferece opções de configuração diferentes.

Dependendo da configuração, ela é mantida durante todo o ciclo de vida do geminiLanguageModel ou do LanguageModelSession. Se você quiser usar uma configuração diferente, crie um novo modelo ou sessão com essa configuração.

A página descreve as seguintes opções de configuração:

Especificar instruções do sistema

As instruções do sistema são como um "preâmbulo" que você adiciona antes que o modelo seja exposto a outras instruções do usuário final. Ele permite que você oriente o comportamento do modelo com base nas suas necessidades e casos de uso específicos.

Especifique as instruções do sistema no LanguageModelSession:

// ...

// Make sure you initialize your chosen Gemini API backend service
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")

// Specify the system instructions as part of creating the session
let session = LanguageModelSession(
    model: model,
    instructions: "You are a cat. Your name is Neko."
)

// ...



Configurar o pensamento (também conhecido como "raciocínio")

É possível configurar a quantidade de pensamento (também chamado de raciocínio) que um modelo Gemini pode fazer para gerar uma resposta. Para detalhes, práticas recomendadas e casos de uso de pensamento, consulte o guia geral Pensamento.

Em vez de nível de pensamento, a Apple usa nível de raciocínio. Você define o reasoningLevel em ContextOptions em cada solicitação usando um LanguageModelSession:

// ...

// Make sure you initialize your chosen Gemini API backend service
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")

let session = LanguageModelSession(model: model)

// Specify the reasoning level when generating a response
// Possible reasoningLevels: .light, .moderate, .deep, .custom("minimal")
let response = try await session.respond(
  to: "Write a story about a magic backpack.",
  contextOptions: ContextOptions(reasoningLevel: .REASONING_LEVEL)
)

// ...

Valores de nível de pensamento aceitos

Observações:

  • Os modelos Gemini 3.x sempre usam o recurso de pensamento. Não é possível desativar ou desligar o recurso para esses modelos.
  • Os modelos Gemini 3.x sempre usam o raciocínio dinâmico. O modelo decide quando e quanto pensar até o valor configurado.

A tabela a seguir lista os níveis de pensamento (reasoningLevel) que você pode definir para cada modelo Gemini. Se você usar um valor Gemini (MINIMAL, LOW, MEDIUM, HIGH), ele será mapeado automaticamente para a versão da Apple.

Apple: .custom("minimal")
Gemini: MINIMAL
Apple: .light
Gemini: LOW
Apple: .moderate
Gemini: MEDIUM
Apple: .deep
Gemini: HIGH

O modelo usa o menor número possível de tokens, quase sem raciocínio.

Tarefas de baixa complexidade

O modelo usa menos tokens, minimiza a latência e o custo

Tarefas simples e de alta taxa de transferência

O modelo usa uma abordagem equilibrada

Tarefas de complexidade moderada

O modelo usa tokens até o nível máximo

Comandos complexos que exigem raciocínio profundo

gemini-3.1-pro-preview (padrão)
gemini-3.5-flash (padrão)
gemini-3.1-flash-lite (padrão)
gemini-3-pro-image-preview ("Nano Banana Pro") (padrão)
gemini-3.1-flash-image-preview ("Nano Banana 2") (padrão)



Configurar a saída de imagem



Configuração geral


Envie feedback sobre o acesso ao Gemini API pelo framework Foundation Models da Apple