توفير أدوات للنموذج عند الوصول إلى Gemini API من خلال إطار عمل Foundation Models من Apple


تفترض الأمثلة الواردة في هذه الصفحة أنّك أكملت الخطوات الواردة في مقالة البدء: الوصول إلى Gemini API من خلال إطار عمل Foundation Models من Apple.


يمكنك توفير أدوات مدمجة في "Gemini" لنماذج "Gemini" عند الوصول إلى "Gemini API" من خلال إطار عمل Foundation Models من Apple لربط النموذج بمصادر بيانات خارجية.

توضّح لك الصفحة كيفية استخدام الأدوات المضمّنة التالية لنماذج Gemini:

تتيح ميزة "تحديد المصدر باستخدام Google Search" ربط نموذج Gemini بمحتوى على الويب متاح للجميع في الوقت الفعلي. يتيح ذلك للنموذج تقديم إجابات أكثر دقة وحداثة والإشارة إلى مصادر يمكن التحقّق منها.

للاطّلاع على التفاصيل وأفضل الممارسات وحالات الاستخدام، يُرجى مراجعة الدليل العام حول التحقّق من المصادر باستخدام Google Search.

النماذج المتوافقة

  • gemini-4-argon
  • gemini-3.8-flash
  • ‫gemini-3.5-flash-lite (والإصدار الأقدم gemini-3.1-flash-lite)
  • gemini-nano-banana-2.1 (Nano Banana 2.1)
  • gemini-3.1-flash-image (Nano Banana 2)
  • gemini-3-pro-image (Nano Banana Pro)

تتيح نماذج Gemini 3.x Flash القديمة ذات الاستخدام العام هذه الإمكانية، ولكن لا يُنصح باستخدامها بعد الآن بسبب تواريخ الإيقاف القادمة و/أو التوجيه التلقائي إلى النماذج الأحدث.

يجب توفير أداة 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

تتيح ميزة "التحقّق من المصادر باستخدام Google Maps" ربط نموذج Gemini بالبيانات الجغرافية المكانية من Google Maps لكي تتمكّن من إنشاء وظائف تراعي الموقع الجغرافي في تطبيقاتك.

للاطّلاع على التفاصيل وأفضل الممارسات وحالات الاستخدام، يُرجى مراجعة الدليل العام حول التحقّق من المصادر باستخدام Google Maps.

النماذج المتوافقة

  • gemini-4-argon
  • gemini-3.8-flash
  • ‫gemini-3.5-flash-lite (والإصدار الأقدم gemini-3.1-flash-lite)

تتيح نماذج Gemini 3.x Flash القديمة ذات الاستخدام العام هذه الإمكانية، ولكن لا يُنصح باستخدامها بعد الآن بسبب تواريخ الإيقاف القادمة و/أو التوجيه التلقائي إلى النماذج الأحدث.

تفعيل أداة "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


تقديم ملاحظات حول الوصول إلى "Gemini API" من خلال إطار عمل Foundation Models من Apple