জেমিনি API কুইকস্টার্ট

এই কুইকস্টার্ট আপনাকে দেখায় কিভাবে আপনার পছন্দের SDK ব্যবহার করে Gemini API দিয়ে শুরু করবেন।


পূর্বশর্ত

এই কুইকস্টার্ট অনুমান করে যে আপনি অ্যান্ড্রয়েড অ্যাপ্লিকেশানগুলি বিকাশ করতে অ্যান্ড্রয়েড স্টুডিও ব্যবহার করার সাথে পরিচিত৷

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

  • অ্যান্ড্রয়েড স্টুডিও (সর্বশেষ সংস্করণ)
  • আপনার অ্যান্ড্রয়েড অ্যাপকে অবশ্যই API লেভেল 21 বা উচ্চতর টার্গেট করতে হবে।

ডিভাইসে মিথুন অ্যাক্সেস করার কথা বিবেচনা করুন

এই টিউটোরিয়ালে বর্ণিত অ্যান্ড্রয়েডের জন্য ক্লায়েন্ট SDK আপনাকে মিথুন মডেলগুলি অ্যাক্সেস করতে দেয় যা Google এর সার্ভারে চলে । ব্যবহারের ক্ষেত্রে সংবেদনশীল ডেটা প্রক্রিয়াকরণ, অফলাইন উপলব্ধতা, বা প্রায়শই ব্যবহৃত ব্যবহারকারী প্রবাহের জন্য খরচ সাশ্রয়ের জন্য, আপনি ডিভাইসে চালিত জেমিনি ন্যানো অ্যাক্সেস করার কথা বিবেচনা করতে পারেন৷ আরও বিশদ বিবরণের জন্য, Android (অন-ডিভাইস) পৃষ্ঠাটি দেখুন।

Gemini API SDK ইনস্টল করুন

  1. আপনার মডিউলে (অ্যাপ-লেভেল) গ্রেডল কনফিগারেশন ফাইলে (যেমন <project>/<app-module>/build.gradle.kts ), Android এর জন্য Google AI SDK-এর নির্ভরতা যোগ করুন:

    কোটলিন

    dependencies {
    
      // add the dependency for the Google AI client SDK for Android
      implementation("com.google.ai.client.generativeai:generativeai:0.7.0")
    }
    

    জাভা

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

    dependencies {
    
        // add the dependency for the Google AI client SDK for Android
        implementation("com.google.ai.client.generativeai:generativeai:0.7.0")
    
        // 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")
    }
    
  2. Gradle ফাইলগুলির সাথে আপনার Android প্রকল্প সিঙ্ক করুন।

প্রমাণীকরণ সেট আপ করুন

Gemini API-তে প্রমাণীকরণের সবচেয়ে সহজ উপায় হল একটি API কী কনফিগার করা, যেমনটি এই বিভাগে বর্ণিত হয়েছে। আপনার যদি আরও কঠোর অ্যাক্সেস নিয়ন্ত্রণের প্রয়োজন হয়, আপনি পরিবর্তে OAuth ব্যবহার করতে পারেন।

যদি আপনার কাছে ইতিমধ্যেই একটি API কী না থাকে তবে Google AI স্টুডিওতে একটি তৈরি করুন৷

Google AI স্টুডিও থেকে একটি API কী পান

তারপর, আপনার কী কনফিগার করুন।

এটা দৃঢ়ভাবে সুপারিশ করা হয় যে আপনি আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমে একটি API কী চেক করবেন না । পরিবর্তে, আপনার এটি একটি local.properties ফাইলে সংরক্ষণ করা উচিত (যা আপনার প্রকল্পের রুট ডিরেক্টরিতে অবস্থিত, কিন্তু সংস্করণ নিয়ন্ত্রণ থেকে বাদ দেওয়া হয়েছে), এবং তারপরে একটি বিল্ড কনফিগারেশন ভেরিয়েবল হিসাবে আপনার API কী পড়তে Android এর জন্য সিক্রেটস গ্রেডল প্লাগইন ব্যবহার করুন৷

কোটলিন

// Access your API key as a Build Configuration variable
val apiKey = BuildConfig.apiKey

জাভা

// Access your API key as a Build Configuration variable
String apiKey = BuildConfig.apiKey;

আপনি যদি সিক্রেটস গ্রেডল প্লাগইনটির বাস্তবায়ন দেখতে চান, তাহলে আপনি এই SDK-এর জন্য নমুনা অ্যাপটি পর্যালোচনা করতে পারেন বা Android Studio Iguana-এর সর্বশেষ প্রিভিউ ব্যবহার করতে পারেন যার একটি Gemini API স্টার্টার টেমপ্লেট রয়েছে (যেটিতে আপনার শুরু করার জন্য local.properties ফাইল রয়েছে )

লাইব্রেরি আমদানি করুন

Google Generative AI লাইব্রেরি আমদানি করুন।

কোটলিন

// other imports...
import com.google.ai.client.generativeai.GenerativeModel

জাভা

// other imports...
import com.google.ai.client.generativeai.GenerativeModel;
import com.google.ai.client.generativeai.java.GenerativeModelFutures;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.type.GenerateContentResponse;

আপনার প্রথম অনুরোধ করুন

টেক্সট তৈরি করতে generateContent পদ্ধতি ব্যবহার করুন।

কোটলিন

generateContent() একটি সাসপেন্ড ফাংশন এবং এটি একটি Coroutine স্কোপ থেকে কল করা প্রয়োজন। আপনি যদি Coroutines এর সাথে অপরিচিত হন, তাহলে Android-এ Kotlin Coroutines পড়ুন।

    val generativeModel =
    GenerativeModel(
        // Specify a Gemini model appropriate for your use case
        modelName = "gemini-1.5-flash",
        // Access your API key as a Build Configuration variable (see "Set up your API key" above)
        apiKey = BuildConfig.apiKey)

val prompt = "Write a story about a magic backpack."
val response = generativeModel.generateContent(prompt)
print(response.text)

জাভা

generateContent() একটি ListenableFuture প্রদান করে। আপনি যদি এই API এর সাথে অপরিচিত হন তবে একটি ListenableFuture ব্যবহার করার বিষয়ে Android ডকুমেন্টেশন দেখুন।

    // Specify a Gemini model appropriate for your use case
GenerativeModel gm =
    new GenerativeModel(
        /* modelName */ "gemini-1.5-flash",
        // Access your API key as a Build Configuration variable (see "Set up your API key"
        // above)
        /* apiKey */ BuildConfig.apiKey);
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

Content content =
    new Content.Builder().addText("Write a story about a magic backpack.").build();

// For illustrative purposes only. You should use an executor that fits your needs.
Executor executor = Executors.newSingleThreadExecutor();

ListenableFuture<GenerateContentResponse> response = model.generateContent(content);
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);

এরপর কি

এখন যেহেতু আপনি Gemini API-তে অনুরোধ করার জন্য সেট আপ করেছেন, আপনি আপনার অ্যাপস এবং ওয়ার্কফ্লোগুলি তৈরি করতে Gemini API ক্ষমতার সম্পূর্ণ পরিসর ব্যবহার করতে পারেন। Gemini API ক্ষমতার সাথে শুরু করতে, নিম্নলিখিত নির্দেশিকাগুলি দেখুন:

Gemini API পদ্ধতি এবং অনুরোধের পরামিতিগুলির গভীরতার ডকুমেন্টেশনের জন্য, API রেফারেন্সে গাইডগুলি দেখুন।