Предоставьте модели инструменты при доступе к API Gemini через фреймворк Foundation Models от Apple.


Примеры на этой странице предполагают, что вы выполнили задание «Начало работы: доступ к API Gemini через фреймворк Foundation Models от Apple» .


При доступе к API Gemini через платформу Apple Foundation Models вы можете предоставлять встроенные инструменты Gemini моделям Gemini для подключения модели к внешним источникам данных.

На этой странице показано, как использовать следующие встроенные инструменты для моделей Gemini :

Использование Google Search позволяет модели типа «Близнецы» в режиме реального времени получать доступ к общедоступному веб-контенту. Это дает модели возможность давать более точные и актуальные ответы, а также ссылаться на проверенные источники.

Подробную информацию, рекомендации и примеры использования см. в общем руководстве «Использование Google Search .

Поддерживаемые модели

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

Укажите инструмент googleSearch при создании 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

Определить местоположение с помощью Google Maps

Функция Grounding with Google Maps подключает модель Gemini к геопространственным данным из Google Maps , позволяя интегрировать в приложения функции, учитывающие местоположение.

Подробную информацию, рекомендации и примеры использования см. в общем руководстве по работе с Google Maps .

Поддерживаемые модели

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

Включите инструмент Google Maps

Укажите инструмент googleMaps при создании 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 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


Оставьте отзыв о доступе к API Gemini через фреймворк Foundation Models от Apple.