Fournir des outils au modèle lorsque vous accédez à l'API Gemini via le framework Foundation Models d'Apple


Les exemples de cette page partent du principe que vous avez suivi la procédure Premiers pas : accéder à l'API Gemini via le framework Foundation Models d'Apple.Gemini API


Vous pouvez fournir des outils intégrés Gemini aux modèles Gemini lorsque vous accédez à l'API Gemini API via le framework Foundation Models d'Apple pour connecter le modèle à des sources de données externes.

Cette page vous explique comment utiliser les outils intégrés suivants pour les Gemini modèles :

L'ancrage avec Google Search connecte un Gemini modèle à du contenu Web accessible au public en temps réel. Cela permet au modèle de fournir des réponses plus précises et à jour, et de citer des sources vérifiables.

Pour en savoir plus, découvrir les bonnes pratiques et consulter des cas d'utilisation, consultez le guide général Ancrage avec Google Search.

Modèles compatibles

  • gemini-3.1-pro-preview
  • gemini-3.5-flash
  • gemini-3.1-flash-lite
  • gemini-3-pro-image-preview (également appelé "Nano Banana Pro")
  • gemini-3.1-flash-image-preview (également appelé "Nano Banana 2")

Fournissez l'outil googleSearch lors de la création de geminiLanguageModel :

import FoundationModels
import FirebaseCore
import FirebaseAILogic

// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a `geminiLanguageModel` with a Gemini model that supports your use case.
let model = ai.geminiLanguageModel(
  name: "GEMINI_MODEL_NAME",
  // Provide Google Search as a tool that the model can use to generate its response.
  serverTools: [GeminiTool.googleSearch()]
)

let session = LanguageModelSession(model: model)
let response = try await session.respond(to: "What is the weather in Toronto today?")
for entry in response.transcriptEntries {
  if case let .response(responseEntry) = entry {
    if let groundingMetadata = responseEntry
        .metadata["groundingMetadata"] as? GroundingMetadata {
      for chunk in groundingMetadata.groundingChunks {
        let webChunk = chunk.web
        // use the webChunk
      }
    }
  }
}

// Make sure to comply with the "Grounding with Google Search" usage requirements,
// which includes how you use and display the grounded result

Ancrage avec Google Maps

L'ancrage avec Google Maps connecte un modèle Gemini à des données géospatiales de Google Maps afin que vous puissiez intégrer des fonctionnalités de localisation dans vos applications.

Pour en savoir plus, découvrir les bonnes pratiques et consulter des cas d'utilisation, consultez le guide général Ancrage avec Google Maps.

Modèles compatibles

  • gemini-3.1-pro-preview
  • gemini-3.5-flash
  • gemini-3.1-flash-lite

Activer l'outil Google Maps

Fournissez l'outil googleMaps lors de la création de geminiLanguageModel. Vous pouvez également fournir des coordonnées dans la configuration de l'outil.

import FoundationModels
import FirebaseCore
import FirebaseAILogic

// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a `geminiLanguageModel` with a Gemini model that supports your use case.
let model = ai.geminiLanguageModel(
  name: "GEMINI_MODEL_NAME",
  // Provide Google Maps as a tool that the model can use to generate its response.
  serverTools: [GeminiTool.googleMaps()]
)

let session = LanguageModelSession(model: model)

let response = try await session
      respond(to: "Where is a good place to grab a coffee near Alameda, CA?")

for entry in response.transcriptEntries {
  if case let .response(responseEntry) = entry {
    if let groundingMetadata = responseEntry
        .metadata["groundingMetadata"] as? GroundingMetadata {
      for chunk in groundingMetadata.groundingChunks {
        let mapsChunk = chunk.maps
        // use the mapsChunk
      }
    }
  }
}

// Make sure to comply with the "Grounding with Google Maps" usage requirements,
// which includes how you meet service usage requirements


Envoyez des commentaires sur l'accès à la Gemini API via le framework Foundation Models d'Apple.