عند طلب Gemini API من تطبيقك باستخدام حزمة تطوير برامج (SDK) Vertex AI in Firebase، يمكنك توجيه نموذج Gemini لإنشاء نص استنادًا إلى إدخال نصي فقط.
قبل البدء
إذا لم يسبق لك ذلك، أكمِل قراءة
دليل البدء الذي يوضّح كيفية
إعداد مشروعك على Firebase وربط تطبيقك بـ Firebase وإضافة حزمة تطوير البرامج (SDK)
وبدء خدمة Vertex AI وإنشاء مثيل GenerativeModel
.
إنشاء نص من إدخال نصي فقط
يمكنك الاتصال بـ Gemini API باستخدام إدخال يتضمّن نصًا فقط. بالنسبة إلى هذه المكالمات، عليك استخدام نموذج يتيح الطلبات النصية فقط (مثل Gemini 2.0 Flash).
اختَر ما إذا كنت تريد بث الردّ (generateContentStream
) أو الانتظار
لتلقّي الردّ إلى أن يتم إنشاء النتيجة بالكامل (generateContent
).
البث
يمكنك تحقيق تفاعلات أسرع من خلال عدم انتظار النتيجة الكاملة من إنشاء النموذج، واستخدام البث بدلاً من ذلك للتعامل مع النتائج الجزئية.
يوضّح هذا المثال كيفية استخدام
generateContentStream
لبث النص الذي تم إنشاؤه من طلب طلب يتضمّن نصًا فقط:
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To stream generated text output, call generateContentStream with the text input
let contentStream = try model.generateContentStream(prompt)
for try await chunk in contentStream {
if let text = chunk.text {
print(text)
}
}
بدون بث
بدلاً من ذلك، يمكنك الانتظار إلى أن تظهر النتيجة بالكامل بدلاً من بثها، ولا يتم عرض النتيجة إلا بعد أن يُكمل النموذج عملية الإنشاء بالكامل.
يوضّح هذا المثال كيفية استخدام
generateContent
لإنشاء نص من طلب طلب يتضمّن نصًا فقط:
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")
تعرَّف على كيفية اختيار نموذج وموقع جغرافي اختياريًا مناسبَين لحالة الاستخدام والتطبيق.
ما هي الإجراءات الأخرى التي يمكنك اتّخاذها؟
- تعرَّف على كيفية احتساب الرموز المميّزة قبل إرسال طلبات طويلة إلى النموذج.
- ابدأ التفكير في التحضير للإصدار العلني، بما في ذلك إعداد Firebase App Check لحماية Gemini API من إساءة استخدام العملاء غير المصرّح لهم. يُرجى أيضًا مراجعة قائمة التحقّق من الإنتاج.
تجربة إمكانات أخرى
- إنشاء محادثات متعددة المقاطع (محادثة)
- إنشاء نص من طلبات متعددة الوسائط (بما في ذلك النصوص والصور وملفات PDF والفيديوهات والمحتوى الصوتي)
- إنشاء إخراج منظَّم (مثل تنسيق JSON) من كلّ من الطلبات النصية والطلبات المتعدّدة الوسائط
- إنشاء صور من طلبات نصية
- استخدِم استدعاء الدوال لربط النماذج التوليدية بالأنظمة والمعلومات الخارجية.
التعرّف على كيفية التحكّم في إنشاء المحتوى
- التعرّف على تصميم الطلبات، بما في ذلك أفضل الممارسات والاستراتيجيات وأمثلة الطلبات
- ضبط مَعلمات النموذج، مثل درجة الحرارة والحد الأقصى لرموز الإخراج (لميزة Gemini) أو نسبة العرض إلى الارتفاع وإنشاء الأشخاص (لميزة Imagen)
- استخدام إعدادات الأمان لضبط احتمالية تلقّي ردود قد تُعتبر ضارة
مزيد من المعلومات عن الطُرز المتوافقة
اطّلِع على مزيد من المعلومات عن النماذج المتاحة لحالات الاستخدام المختلفة واطلاعك على الحصص و الأسعار.تقديم ملاحظات حول تجربتك مع Vertex AI in Firebase