Firebase SDK-তে Vertex AI ব্যবহার করে Gemini API দিয়ে শুরু করুন, Firebase SDK-তে Vertex AI ব্যবহার করে Gemini API দিয়ে শুরু করুন

আপনার নির্বাচিত প্ল্যাটফর্মের জন্য Firebase SDK-তে Vertex AI ব্যবহার করে সরাসরি আপনার অ্যাপ থেকে Vertex AI- তে Gemini API- তে কীভাবে কল করা শুরু করবেন তা এই নির্দেশিকা আপনাকে দেখায়।

মনে রাখবেন যে Firebase SDK-তে Vertex AI ব্যবহার করে Imagen মডেল অ্যাক্সেস করা শুরু করতে আপনি এই গাইডটি ব্যবহার করতে পারেন।

পূর্বশর্ত

সুইফট

এই নির্দেশিকাটি অনুমান করে যে আপনি অ্যাপল প্ল্যাটফর্মের (যেমন iOS) জন্য অ্যাপ বিকাশ করতে Xcode ব্যবহার করার সাথে পরিচিত।

  • নিশ্চিত করুন যে আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট এবং অ্যাপল প্ল্যাটফর্ম অ্যাপ এই প্রয়োজনীয়তাগুলি পূরণ করে:

    • Xcode 16.2 বা উচ্চতর
    • আপনার অ্যাপটি লক্ষ্য করে iOS 15 বা উচ্চতর, অথবা macOS 12 বা উচ্চতর
  • (ঐচ্ছিক) নমুনা অ্যাপটি দেখুন।

    কুইকস্টার্ট অ্যাপটি ডাউনলোড করুন

    আপনি দ্রুত SDK ব্যবহার করে দেখতে পারেন, বিভিন্ন ব্যবহারের ক্ষেত্রে সম্পূর্ণ বাস্তবায়ন দেখতে পারেন, অথবা আপনার নিজস্ব Apple প্ল্যাটফর্ম অ্যাপ না থাকলে নমুনা অ্যাপটি ব্যবহার করতে পারেন। নমুনা অ্যাপটি ব্যবহার করতে, আপনাকে এটি একটি Firebase প্রকল্পের সাথে সংযুক্ত করতে হবে।

Kotlin

এই নির্দেশিকাটি অনুমান করে যে আপনি Android এর জন্য অ্যাপ তৈরি করতে Android Studio ব্যবহার করার সাথে পরিচিত।

  • নিশ্চিত করুন যে আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট এবং অ্যান্ড্রয়েড অ্যাপ এই প্রয়োজনীয়তাগুলি পূরণ করে:

    • অ্যান্ড্রয়েড স্টুডিও (সর্বশেষ সংস্করণ)
    • আপনার অ্যাপ এপিআই লেভেল 21 বা তার বেশি লক্ষ্য করে
  • (ঐচ্ছিক) নমুনা অ্যাপটি দেখুন।

    নমুনা অ্যাপ্লিকেশন ডাউনলোড করুন

    আপনি দ্রুত SDK ব্যবহার করে দেখতে পারেন, বিভিন্ন ব্যবহারের ক্ষেত্রে সম্পূর্ণ বাস্তবায়ন দেখতে পারেন, অথবা আপনার নিজের Android অ্যাপ না থাকলে নমুনা অ্যাপটি ব্যবহার করতে পারেন। নমুনা অ্যাপটি ব্যবহার করতে, আপনাকে এটি একটি Firebase প্রকল্পের সাথে সংযুক্ত করতে হবে।

Java

এই নির্দেশিকাটি অনুমান করে যে আপনি Android এর জন্য অ্যাপ তৈরি করতে Android Studio ব্যবহার করার সাথে পরিচিত।

  • নিশ্চিত করুন যে আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট এবং অ্যান্ড্রয়েড অ্যাপ এই প্রয়োজনীয়তাগুলি পূরণ করে:

    • অ্যান্ড্রয়েড স্টুডিও (সর্বশেষ সংস্করণ)
    • আপনার অ্যাপ এপিআই লেভেল 21 বা তার বেশি লক্ষ্য করে
  • (ঐচ্ছিক) নমুনা অ্যাপটি দেখুন।

    নমুনা অ্যাপ্লিকেশন ডাউনলোড করুন

    আপনি দ্রুত SDK ব্যবহার করে দেখতে পারেন, বিভিন্ন ব্যবহারের ক্ষেত্রে সম্পূর্ণ বাস্তবায়ন দেখতে পারেন, অথবা আপনার নিজের Android অ্যাপ না থাকলে নমুনা অ্যাপটি ব্যবহার করতে পারেন। নমুনা অ্যাপটি ব্যবহার করতে, আপনাকে এটি একটি Firebase প্রকল্পের সাথে সংযুক্ত করতে হবে।

Web

এই গাইডটি অনুমান করে যে আপনি ওয়েব অ্যাপস ডেভেলপ করার জন্য জাভাস্ক্রিপ্ট ব্যবহার করার সাথে পরিচিত। এই গাইড ফ্রেমওয়ার্ক-স্বাধীন।

  • নিশ্চিত করুন যে আপনার বিকাশের পরিবেশ এবং ওয়েব অ্যাপ এই প্রয়োজনীয়তাগুলি পূরণ করে:

    • (ঐচ্ছিক) Node.js
    • আধুনিক ওয়েব ব্রাউজার
  • (ঐচ্ছিক) নমুনা অ্যাপটি দেখুন।

    নমুনা অ্যাপ্লিকেশন ডাউনলোড করুন

    আপনি দ্রুত SDK ব্যবহার করে দেখতে পারেন, বিভিন্ন ব্যবহারের ক্ষেত্রে সম্পূর্ণ বাস্তবায়ন দেখতে পারেন, অথবা আপনার নিজস্ব ওয়েব অ্যাপ না থাকলে নমুনা অ্যাপটি ব্যবহার করতে পারেন। নমুনা অ্যাপটি ব্যবহার করতে, আপনাকে এটি একটি Firebase প্রকল্পের সাথে সংযুক্ত করতে হবে।

Dart

এই নির্দেশিকাটি অনুমান করে যে আপনি Flutter-এর সাহায্যে অ্যাপ তৈরি করার সাথে পরিচিত।

  • আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট এবং ফ্লাটার অ্যাপ এই প্রয়োজনীয়তাগুলি পূরণ করে তা নিশ্চিত করুন:

    • ডার্ট 3.2.0+
  • (ঐচ্ছিক) নমুনা অ্যাপটি দেখুন।

    নমুনা অ্যাপ্লিকেশন ডাউনলোড করুন

    আপনি দ্রুত SDK ব্যবহার করে দেখতে পারেন, বিভিন্ন ব্যবহারের ক্ষেত্রে সম্পূর্ণ বাস্তবায়ন দেখতে পারেন, অথবা আপনার নিজের ফ্লাটার অ্যাপ না থাকলে নমুনা অ্যাপটি ব্যবহার করতে পারেন। নমুনা অ্যাপটি ব্যবহার করতে, আপনাকে এটি একটি Firebase প্রকল্পের সাথে সংযুক্ত করতে হবে।

ধাপ 1 : একটি Firebase প্রকল্প সেট আপ করুন এবং আপনার অ্যাপটিকে Firebase-এর সাথে সংযুক্ত করুন

আপনার যদি ইতিমধ্যেই একটি Firebase প্রকল্প এবং Firebase এর সাথে সংযুক্ত একটি অ্যাপ থাকে

  1. Firebase কনসোলে, Vertex AI পৃষ্ঠায় যান।

  2. একটি ওয়ার্কফ্লো চালু করতে Firebase কার্ডে Vertex AI-তে ক্লিক করুন যা আপনাকে নিম্নলিখিত কাজগুলি সম্পূর্ণ করতে সাহায্য করে:

  3. আপনার অ্যাপে SDK যোগ করতে এই গাইডের পরবর্তী ধাপে যান।

যদি আপনার কাছে ইতিমধ্যে একটি Firebase প্রকল্প এবং Firebase এর সাথে সংযুক্ত একটি অ্যাপ না থাকে


ধাপ 2 : SDK যোগ করুন

আপনার Firebase প্রকল্প সেট আপ এবং আপনার অ্যাপ Firebase-এর সাথে সংযুক্ত (আগের ধাপ দেখুন), আপনি এখন আপনার অ্যাপে Firebase SDK-তে Vertex AI যোগ করতে পারেন।

সুইফট

ফায়ারবেস নির্ভরতা ইনস্টল এবং পরিচালনা করতে সুইফট প্যাকেজ ম্যানেজার ব্যবহার করুন।

Firebase লাইব্রেরিতে Vertex AI জেমিনি এবং ইমেজেন মডেলের সাথে ইন্টারঅ্যাক্ট করার জন্য API-তে অ্যাক্সেস প্রদান করে। অ্যাপল প্ল্যাটফর্মের জন্য Firebase SDK-এর অংশ হিসেবে লাইব্রেরি অন্তর্ভুক্ত করা হয়েছে ( firebase-ios-sdk )।

  1. Xcode-এ, আপনার অ্যাপ প্রকল্প খোলার সাথে, ফাইল > প্যাকেজ যোগ করুন -এ নেভিগেট করুন।

  2. অনুরোধ করা হলে, Firebase Apple প্ল্যাটফর্ম SDK সংগ্রহস্থল যোগ করুন:

    https://github.com/firebase/firebase-ios-sdk
    
  3. সর্বশেষ SDK সংস্করণ নির্বাচন করুন৷

  4. FirebaseVertexAI লাইব্রেরি নির্বাচন করুন।

শেষ হয়ে গেলে, Xcode স্বয়ংক্রিয়ভাবে পটভূমিতে আপনার নির্ভরতাগুলি সমাধান এবং ডাউনলোড করা শুরু করবে।

Kotlin

Android এর জন্য Firebase SDK-তে Vertex AI ( firebase-vertexai ) জেমিনি এবং ইমেজেন মডেলগুলির সাথে ইন্টারঅ্যাক্ট করার জন্য APIগুলিতে অ্যাক্সেস প্রদান করে৷

আপনার মডিউলে (অ্যাপ-লেভেল) গ্রেডল ফাইলে (যেমন <project>/<app-module>/build.gradle.kts ), Android এর জন্য Firebase লাইব্রেরিতে Vertex AI- এর নির্ভরতা যোগ করুন। আমরা লাইব্রেরি সংস্করণ নিয়ন্ত্রণ করতে Firebase Android BoM ব্যবহার করার পরামর্শ দিই।

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.13.0"))

  // Add the dependency for the Vertex AI in Firebase library
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-vertexai")
}

Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

Java

Android এর জন্য Firebase SDK-তে Vertex AI ( firebase-vertexai ) জেমিনি এবং ইমেজেন মডেলগুলির সাথে ইন্টারঅ্যাক্ট করার জন্য APIগুলিতে অ্যাক্সেস প্রদান করে৷

আপনার মডিউলে (অ্যাপ-লেভেল) গ্রেডল ফাইলে (যেমন <project>/<app-module>/build.gradle.kts ), Android এর জন্য Firebase লাইব্রেরিতে Vertex AI- এর নির্ভরতা যোগ করুন। আমরা লাইব্রেরি সংস্করণ নিয়ন্ত্রণ করতে Firebase Android BoM ব্যবহার করার পরামর্শ দিই।

জাভার জন্য, আপনাকে দুটি অতিরিক্ত লাইব্রেরি যোগ করতে হবে।

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.13.0"))

  // Add the dependency for the Vertex AI in Firebase library
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-vertexai")

  // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Reactive Streams)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।

Web

Firebase লাইব্রেরিতে Vertex AI জেমিনি এবং ইমেজেন মডেলের সাথে ইন্টারঅ্যাক্ট করার জন্য API-তে অ্যাক্সেস প্রদান করে। লাইব্রেরিটি ওয়েবের জন্য Firebase JavaScript SDK-এর অংশ হিসেবে অন্তর্ভুক্ত করা হয়েছে।

  1. npm ব্যবহার করে ওয়েবের জন্য Firebase JS SDK ইনস্টল করুন:

    npm install firebase
    
  2. আপনার অ্যাপে Firebase শুরু করুন:

    import { initializeApp } from "firebase/app";
    
    // TODO(developer) Replace the following with your app's Firebase configuration
    // See: https://firebase.google.com/docs/web/learn-more#config-object
    const firebaseConfig = {
      // ...
    };
    
    // Initialize FirebaseApp
    const firebaseApp = initializeApp(firebaseConfig);
    

Dart

Flutter ( firebase_vertexai ) এর জন্য Firebase প্লাগইন-এ Vertex AI জেমিনি এবং ইমেজেন মডেলের সাথে ইন্টারঅ্যাক্ট করার জন্য API-তে অ্যাক্সেস প্রদান করে।

  1. আপনার ফ্লাটার প্রজেক্ট ডিরেক্টরি থেকে, ফায়ারবেস প্লাগইনে কোর প্লাগইন এবং ভার্টেক্স এআই ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:

    flutter pub add firebase_core && flutter pub add firebase_vertexai
    
  2. আপনার lib/main.dart ফাইলে, Firebase কোর প্লাগইন, Firebase প্লাগইনে Vertex AI , এবং আপনি আগে তৈরি করা কনফিগারেশন ফাইল আমদানি করুন:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_vertexai/firebase_vertexai.dart';
    import 'firebase_options.dart';
    
  3. এছাড়াও আপনার lib/main.dart ফাইলে, কনফিগারেশন ফাইল দ্বারা এক্সপোর্ট করা DefaultFirebaseOptions অবজেক্ট ব্যবহার করে Firebase শুরু করুন:

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. আপনার ফ্লটার অ্যাপ্লিকেশন পুনর্নির্মাণ করুন:

    flutter run
    

ধাপ 3 : Vertex AI পরিষেবা শুরু করুন এবং একটি GenerativeModel উদাহরণ তৈরি করুন

আপনি যেকোন API কল করতে এবং একটি জেমিনি মডেলে একটি প্রম্পট পাঠাতে পারার আগে, আপনাকে Vertex AI পরিষেবা শুরু করতে হবে এবং একটি GenerativeModel উদাহরণ তৈরি করতে হবে।

সুইফট

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")

Kotlin

কোটলিনের জন্য, এই SDK-এর পদ্ধতিগুলি হল সাসপেন্ড ফাংশন এবং একটি Coroutine স্কোপ থেকে কল করা প্রয়োজন৷
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

Java

জাভার জন্য, এই SDK-এর স্ট্রিমিং পদ্ধতিগুলি প্রতিক্রিয়াশীল স্ট্রীমস লাইব্রেরি থেকে একটি Publisher টাইপ ফেরত দেয়।
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-flash" });

Dart

import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

আপনি এই শুরু করার নির্দেশিকাটি শেষ করার পরে, কীভাবে একটি মডেল এবং (ঐচ্ছিকভাবে) আপনার ব্যবহারের ক্ষেত্রে এবং অ্যাপের জন্য উপযুক্ত একটি অবস্থান চয়ন করবেন তা শিখুন।

ধাপ 4 : একটি মডেলকে একটি প্রম্পট অনুরোধ পাঠান

এখন যেহেতু আপনি আপনার অ্যাপটিকে Firebase-এর সাথে সংযুক্ত করেছেন, SDK যোগ করেছেন এবং Vertex AI পরিষেবা এবং জেনারেটিভ মডেল শুরু করেছেন, আপনি একটি জেমিনি মডেলের কাছে একটি প্রম্পট অনুরোধ পাঠাতে প্রস্তুত৷

আপনি 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.")

Kotlin

কোটলিনের জন্য, এই SDK-এর পদ্ধতিগুলি হল সাসপেন্ড ফাংশন এবং একটি Coroutine স্কোপ থেকে কল করা প্রয়োজন৷
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")

// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)

Java

জাভার জন্য, এই SDK-এর পদ্ধতিগুলি একটি ListenableFuture প্রদান করে।
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("gemini-2.0-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// Provide a prompt that contains text
Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        System.out.println(resultText);
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

Web

import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Vertex AI service
const vertexAI = getVertexAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(vertexAI, { model: "gemini-2.0-flash" });

// Wrap in an async function so you can use await
async function run() {
  // Provide a prompt that contains text
  const prompt = "Write a story about a magic backpack."

  // To generate text output, call generateContent with the text input
  const result = await model.generateContent(prompt);

  const response = result.response;
  const text = response.text();
  console.log(text);
}

run();

Dart

import 'package:firebase_vertexai/firebase_vertexai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
final model =
      FirebaseVertexAI.instance.generativeModel(model: 'gemini-2.0-flash');

// 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);

আপনি আর কি করতে পারেন?

সমর্থিত মডেল সম্পর্কে আরও জানুন

বিভিন্ন ব্যবহারের ক্ষেত্রে উপলব্ধ মডেল এবং তাদের কোটা এবং মূল্য সম্পর্কে জানুন।

অন্যান্য ক্ষমতা ব্যবহার করে দেখুন

বিষয়বস্তু তৈরি নিয়ন্ত্রণ কিভাবে শিখুন

আপনি Vertex AI Studio ব্যবহার করে প্রম্পট এবং মডেল কনফিগারেশন নিয়ে পরীক্ষা করতে পারেন।


Firebase-এ Vertex AI-এর সাথে আপনার অভিজ্ঞতা সম্পর্কে মতামত দিন