Firebase-এর জন্য Vertex AI SDK ব্যবহার করে কীভাবে সরাসরি আপনার অ্যাপ থেকে Gemini API-তে কল করা শুরু করবেন তা এই নির্দেশিকা আপনাকে দেখায়।
পূর্বশর্ত
এই নির্দেশিকাটি অনুমান করে যে আপনি Flutter-এর সাহায্যে অ্যাপ তৈরি করার সাথে পরিচিত।
নিশ্চিত করুন যে আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট এবং ওয়েব অ্যাপ নিম্নলিখিত প্রয়োজনীয়তাগুলি পূরণ করে:
- ডার্ট 3.2.0+
(ঐচ্ছিক) নমুনা অ্যাপটি দেখুন।
নমুনা অ্যাপ্লিকেশন ডাউনলোড করুন
আপনি দ্রুত SDK ব্যবহার করে দেখতে পারেন, বিভিন্ন ব্যবহারের ক্ষেত্রে সম্পূর্ণ বাস্তবায়ন দেখতে পারেন, অথবা আপনার নিজস্ব ওয়েব অ্যাপ না থাকলে নমুনা অ্যাপটি ব্যবহার করতে পারেন। নমুনা অ্যাপটি ব্যবহার করতে, আপনাকে এটি একটি Firebase প্রকল্পের সাথে সংযুক্ত করতে হবে।
ধাপ 1 : একটি Firebase প্রকল্প সেট আপ করুন এবং আপনার অ্যাপটিকে Firebase-এর সাথে সংযুক্ত করুন
আপনার যদি ইতিমধ্যেই একটি Firebase প্রকল্প এবং Firebase এর সাথে সংযুক্ত একটি অ্যাপ থাকে
Firebase কনসোলে, Bild with Gemini পৃষ্ঠাতে যান এবং তারপরে একটি ওয়ার্কফ্লো চালু করতে দ্বিতীয় কার্ডে ক্লিক করুন যা আপনাকে নিম্নলিখিত কাজগুলি করতে সাহায্য করে। আপনি যদি একটি কার্ড লেআউট দেখতে না পান তবে এই কাজগুলি সম্পূর্ণ হয়েছে৷
ব্লেজ পে-অ্যাজ-ইউ-গো প্রাইসিং প্ল্যান ব্যবহার করতে আপনার প্রোজেক্ট আপগ্রেড করুন।
আপনার প্রকল্পের জন্য নিম্নলিখিত দুটি API সক্রিয় করুন:
aiplatform.googleapis.com
এবংfirebaseml.googleapis.com
।
আপনার অ্যাপে SDK যোগ করতে এই গাইডের পরবর্তী ধাপে যান।
যদি আপনার কাছে ইতিমধ্যে একটি Firebase প্রকল্প এবং Firebase এর সাথে সংযুক্ত একটি অ্যাপ না থাকে
Firebase কনসোলে সাইন ইন করুন।
প্রকল্প তৈরি করুন ক্লিক করুন, এবং তারপরে নিম্নলিখিত বিকল্পগুলির মধ্যে একটি ব্যবহার করুন:
বিকল্প 1 : একটি সম্পূর্ণ নতুন ফায়ারবেস প্রকল্প তৈরি করুন (এবং এর অন্তর্নিহিত Google ক্লাউড প্রকল্প স্বয়ংক্রিয়ভাবে) "প্রকল্প তৈরি করুন" কর্মপ্রবাহের প্রথম ধাপে একটি নতুন প্রকল্পের নাম প্রবেশ করান৷
বিকল্প 2 : "প্রকল্প তৈরি করুন" কর্মপ্রবাহের প্রথম ধাপে ড্রপ-ডাউন মেনু থেকে আপনার Google ক্লাউড প্রকল্পের নাম নির্বাচন করে একটি বিদ্যমান Google ক্লাউড প্রকল্পে "Firebase যোগ করুন"।
মনে রাখবেন যে যখন অনুরোধ করা হয়, আপনাকে Firebase-এর জন্য Vertex AI SDK ব্যবহার করার জন্য Google Analytics সেট-আপ করতে হবে না ।
Firebase কনসোলে, Bild with Gemini পৃষ্ঠাতে যান এবং তারপরে একটি ওয়ার্কফ্লো চালু করতে দ্বিতীয় কার্ডে ক্লিক করুন যা আপনাকে নিম্নলিখিত কাজগুলি করতে সাহায্য করে। আপনি যদি একটি কার্ড লেআউট দেখতে না পান তবে এই কাজগুলি সম্পূর্ণ হয়েছে৷
ব্লেজ পে-অ্যাজ-ইউ-গো প্রাইসিং প্ল্যান ব্যবহার করতে আপনার প্রোজেক্ট আপগ্রেড করুন।
আপনার প্রকল্পের জন্য নিম্নলিখিত দুটি API সক্রিয় করুন:
aiplatform.googleapis.com
এবংfirebaseml.googleapis.com
।
প্রয়োজনীয় কমান্ড লাইন টুল ইনস্টল করুন:
আপনি যদি ইতিমধ্যেই না করে থাকেন তাহলে Firebase CLI ইনস্টল করুন ।
নিম্নলিখিত কমান্ডটি চালিয়ে আপনার Google অ্যাকাউন্ট ব্যবহার করে Firebase এ লগ ইন করুন:
firebase login
যেকোনো ডিরেক্টরি থেকে নিম্নলিখিত কমান্ডটি চালিয়ে FlutterFire CLI ইনস্টল করুন:
dart pub global activate flutterfire_cli
Firebase ব্যবহার করতে আপনার অ্যাপগুলি কনফিগার করুন:
Firebase এর সাথে সংযোগ করতে আপনার Flutter অ্যাপগুলি কনফিগার করতে FlutterFire CLI ব্যবহার করুন৷
আপনার ফ্লটার প্রজেক্ট ডিরেক্টরি থেকে, অ্যাপ কনফিগারেশন ওয়ার্কফ্লো শুরু করতে নিম্নলিখিত কমান্ডটি চালান:
flutterfire configure
flutterfire configure
ওয়ার্কফ্লো নিম্নলিখিত কাজ করে:আপনার Flutter অ্যাপে সমর্থিত প্ল্যাটফর্মগুলি (iOS, Android, Web) নির্বাচন করতে বলে৷ প্রতিটি নির্বাচিত প্ল্যাটফর্মের জন্য, FlutterFire CLI আপনার Firebase প্রকল্পে একটি নতুন Firebase অ্যাপ তৈরি করে।
আপনি একটি বিদ্যমান Firebase প্রকল্প ব্যবহার করতে বা একটি নতুন Firebase প্রকল্প তৈরি করতে নির্বাচন করতে পারেন। যদি আপনার কাছে ইতিমধ্যেই একটি বিদ্যমান ফায়ারবেস প্রজেক্টে নিবন্ধিত অ্যাপ থাকে, তাহলে FlutterFire CLI আপনার বর্তমান Flutter প্রোজেক্ট কনফিগারেশনের উপর ভিত্তি করে সেগুলিকে মেলানোর চেষ্টা করবে।
একটি ফায়ারবেস কনফিগারেশন ফাইল তৈরি করে (
firebase_options.dart
) এবং এটিকে আপনার Flutter অ্যাপেরlib/
ডিরেক্টরিতে যোগ করে।
এই গাইডের পরবর্তী ধাপে, আপনি আপনার অ্যাপে Firebase-এর জন্য Vertex AI SDK যোগ করবেন এবং SDK এবং Gemini API ব্যবহার করার জন্য নির্দিষ্ট প্রয়োজনীয় আরম্ভ সম্পূর্ণ করবেন।
ধাপ 2 : SDK যোগ করুন
আপনার Firebase প্রকল্প সেট আপ এবং আপনার অ্যাপ Firebase-এর সাথে সংযুক্ত (আগের ধাপ দেখুন), আপনি এখন আপনার অ্যাপে Firebase-এর জন্য Vertex AI SDK যোগ করতে পারেন।
ফ্লটারের জন্য Vertex AI SDK ( firebase_vertexai
) Gemini API-এ অ্যাক্সেস প্রদান করে।
vertex_ai
শাখা থেকেflutterfire
সংগ্রহস্থল ডাউনলোড করুন যাতে আপনি SDK-এর পূর্বরূপ সংস্করণ ব্যবহার করছেন।SDK এই ডিরেক্টরিতে অবস্থিত হবে:
<your local folder>/flutterfire/packages/firebase_vertexai/firebase_vertexai
আপনার
pubspec.yaml
ফাইলে, আপনারdependencies
তালিকায়firebase_vertexai
এবংfirebase_core
প্লাগইন যোগ করুন।dependencies: flutter: sdk: flutter ... firebase_vertexai: any firebase_core: ^2.27.0
ধাপ 3 : ভার্টেক্স এআই পরিষেবা এবং জেনারেটিভ মডেল শুরু করুন
আপনি যেকোনো API কল করার আগে, আপনাকে Vertex AI পরিষেবা এবং জেনারেটিভ মডেল শুরু করতে হবে।
আপনার
pubspec.yaml
ফাইলে,firebase_vertexai
এর প্যাকেজ পাথ ওভাররাইড করুন যেখানে আপনি SDK ডাউনলোড করেছেন:// For private preview only dependency_overrides: firebase_vertexai: path: PATH/TO/YOUR/LOCAL/FIREBASE_VERTEXAI_PACKAGE
আপনার ডার্ট কোড লজিকে, দুটি ফায়ারবেস প্লাগইন আমদানি করুন:
import 'package:firebase_vertexai/firebase_vertexai.dart'; import 'package:firebase_core/firebase_core.dart';
ভার্টেক্স এআই পরিষেবা এবং জেনারেটিভ মডেল শুরু করুন:
import 'package:firebase_vertexai/firebase_vertexai.dart'; import 'package:firebase_core/firebase_core.dart'; // Initialize FirebaseApp await Firebase.initializeApp(); // Initialize the Vertex AI service and the generative model // Specify a model that supports your use case // Gemini 1.5 Pro is versatile and can accept both text-only and multimodal prompt inputs final model = FirebaseVertexAI.instance.generativeModel(modelName: 'gemini-1.5-pro-preview-0409');
আপনি যখন শুরু করার নির্দেশিকাটি শেষ করেছেন, তখন আপনার ব্যবহারের ক্ষেত্রে উপযুক্ত একটি মিথুন মডেল কীভাবে চয়ন করবেন তা শিখুন।
ধাপ 4 : Gemini API কল করুন
এখন যেহেতু আপনি আপনার অ্যাপটিকে Firebase-এ সংযুক্ত করেছেন, SDK যোগ করেছেন এবং Vertex AI পরিষেবা এবং জেনারেটিভ মডেল শুরু করেছেন, আপনি Gemini API কল করতে প্রস্তুত৷
আপনি প্রতিক্রিয়াটি স্ট্রিম করতে চান কিনা তা চয়ন করুন ( generateContentStream
) বা সম্পূর্ণ ফলাফল তৈরি না হওয়া পর্যন্ত প্রতিক্রিয়াটির জন্য অপেক্ষা করুন ( generateContent
)৷
স্ট্রিমিং
ডিফল্টরূপে, মডেল পুরো প্রজন্মের প্রক্রিয়া শেষ করার পরে একটি প্রতিক্রিয়া প্রদান করে। যাইহোক, আপনি সম্পূর্ণ ফলাফলের জন্য অপেক্ষা না করে দ্রুত মিথস্ক্রিয়া অর্জন করতে পারেন, এবং পরিবর্তে আংশিক ফলাফল পরিচালনা করতে স্ট্রিমিং ব্যবহার করতে পারেন।
আপনি generateContentStream()
ব্যবহার করতে পারেন একটি প্রম্পট অনুরোধ থেকে জেনারেট করা টেক্সট স্ট্রিম করতে যাতে শুধুমাত্র টেক্সট থাকে:
import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
await Firebase.initializeApp();
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 Pro is versatile and can accept both text-only and multimodal prompt inputs
final model =
FirebaseVertexAI.instance.generativeModel(modelName: 'gemini-1.5-pro-preview-0409');
// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];
// To stream generated text output, call generateContentStream with the text input
final response = model.generateContentStream(prompt);
await for (final chunk in response) {
print(chunk.text);
}
স্ট্রিমিং ছাড়াই
বিকল্পভাবে, আপনি স্ট্রিমিংয়ের পরিবর্তে সম্পূর্ণ ফলাফলের জন্য অপেক্ষা করতে পারেন; মডেলটি পুরো প্রজন্মের প্রক্রিয়াটি সম্পূর্ণ করার পরেই ফলাফলটি ফিরে আসে।
আপনি একটি প্রম্পট অনুরোধ থেকে পাঠ্য তৈরি করতে generateContent()
ব্যবহার করতে পারেন যাতে শুধুমাত্র পাঠ্য অন্তর্ভুক্ত থাকে:
import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
await Firebase.initializeApp();
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 Pro is versatile and can accept both text-only and multimodal prompt inputs
final model =
FirebaseVertexAI.instance.generativeModel(modelName: 'gemini-1.5-pro-preview-0409');
// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];
// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);
তুমি আর কি করতে পারো?
মিথুন মডেল সম্পর্কে আরও জানুন
বিভিন্ন ব্যবহারের ক্ষেত্রে উপলব্ধ মডেল এবং তাদের কোটা এবং মূল্য সম্পর্কে জানুন।
Gemini API-এর অন্যান্য ক্ষমতা ব্যবহার করে দেখুন
- শুধুমাত্র পাঠ্য প্রম্পট পাঠানো সম্পর্কে আরও জানুন।
- টেক্সট-এবং-মিডিয়া প্রম্পট (ছবি, পিডিএফ, ভিডিও এবং অডিও সহ) সহ মাল্টিমোডাল প্রম্পট অনুরোধ পাঠান।
- মাল্টি-টার্ন কথোপকথন তৈরি করুন (চ্যাট) ।
কন্টেন্ট জেনারেশন কিভাবে নিয়ন্ত্রণ করতে হয় তা জানুন
- সর্বোত্তম অনুশীলন, কৌশল এবং উদাহরণ প্রম্পট সহ প্রম্পট ডিজাইন বুঝুন ।
- তাপমাত্রা এবং সর্বোচ্চ আউটপুট টোকেনের মত মডেল প্যারামিটার কনফিগার করুন ।
- ক্ষতিকারক বলে বিবেচিত প্রতিক্রিয়া পাওয়ার সম্ভাবনা সামঞ্জস্য করতে নিরাপত্তা সেটিংস ব্যবহার করুন ।
আপনি Vertex AI Studio ব্যবহার করে প্রম্পট এবং মডেল কনফিগারেশন নিয়ে পরীক্ষা করতে পারেন।
Firebase-এর জন্য Vertex AI SDK-এর সাথে আপনার অভিজ্ঞতা সম্পর্কে মতামত দিন