PalM API: شروع سریع چت با جاوا

این شروع سریع شما را در استفاده از سرویس چت در PaLM API از طریق کتابخانه سرویس گیرنده جاوا شروع می کند.

یک کلید API دریافت کنید

برای شروع، باید یک کلید API دریافت کنید .

نصب API Client

این دستورالعمل‌ها باعث می‌شود PaLM Java SDK در مخزن محلی Maven شما نصب شود تا بتوانید آن را به عنوان یک وابستگی به پروژه Gradle خود اضافه کنید.

  1. فایل google-cloud-ai-generativelanguage-v1-java.tar.gz را دانلود کنید.
  2. فایل ها را اکسترکت کرده و در mavenLocal نصب کنید:

    # Extract the files
    tar -xzvf google-cloud-ai-generativelanguage-v1-java.tar.gz
    cd google-cloud-ai-generativelanguage-v1-java
    
    # Install to mavenLocal
    ./gradlew publishToMavenLocal
    

افزودن SDK به پروژه شما

  1. فایل پیکربندی Gradle خود را باز کنید و مطمئن شوید که mavenLocal() در زیر repositories فهرست شده است:

    repositories {
        mavenCentral()
        // ...
    
        // Add the Maven Local repository
        mavenLocal()
    }
    
  2. همچنین در فایل پیکربندی Gradle، کتابخانه های لازم را به بلوک dependencies اضافه کنید:

    dependencies {
        // ...
    
        // Add these dependencies to use Generative AI
        implementation("com.google.cloud:gapic-google-cloud-ai-generativelanguage-v1-java:0.0.0-SNAPSHOT")
        implementation("io.grpc:grpc-okhttp:1.53.0")
    }
    

سرویس گیرنده Discuss Service را راه اندازی کنید

یک DiscussServiceClient با ارسال کلید API خود (که از طریق متغیر محیطی API_KEY ارائه می شود) به عنوان سرصفحه ای به TransportChannelProvider برای استفاده توسط DiscussServiceSettings راه اندازی کنید:

import com.google.ai.generativelanguage.v1.DiscussServiceClient;
import com.google.ai.generativelanguage.v1.DiscussServiceSettings;
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
import com.google.api.gax.rpc.FixedHeaderProvider;


HashMap<String, String> headers = new HashMap<>();
headers.put("x-goog-api-key", System.getEnv("API_KEY"));

InstantiatingGrpcChannelProvider provider = InstantiatingGrpcChannelProvider.newBuilder()
    .setHeaderProvider(FixedHeaderProvider.create(headers))
    .build();

DiscussServiceSettings settings = DiscussServiceSettings.newBuilder()
    .setTransportChannelProvider(provider)
    .setCredentialsProvider(FixedCredentialsProvider.create(null))
    .build();

DiscussServiceClient client = DiscussServiceClient.create(settings);

یک اعلان پیام ایجاد کنید

شما باید یک MessagePrompt به API ارائه دهید تا بتواند پیام بعدی را در بحث پیش بینی کند.

(اختیاری) چند نمونه ایجاد کنید

به صورت اختیاری، می‌توانید نمونه‌هایی از آنچه که مدل باید تولید کند ارائه کنید. این شامل ورودی کاربر و پاسخی است که مدل باید از آن تقلید کند.

import com.google.ai.generativelanguage.v1.Example;
import com.google.ai.generativelanguage.v1.Message;


Message input = Message.newBuilder()
    .setContent("What is the capital of California?")
    .build();

Message response = Message.newBuilder()
    .setContent("If the capital of California is what you seek, Sacramento is where you ought to peek.")
    .build();

Example californiaExample = Example.newBuilder()
    .setInput(input)
    .setOutput(response)
    .build();

درخواست را ایجاد کنید

نمونه ها را به همراه تاریخچه پیام فعلی و به صورت اختیاری مثال مرحله قبل را به MessagePrompt.Builder ارسال کنید.

import com.google.ai.generativelanguage.v1.Message;
import com.google.ai.generativelanguage.v1.MessagePrompt;

Message geminiMessage = Message.newBuilder()
    .setAuthor("0")
    .setContent("How tall is the Eiffel Tower?")
    .build();

MessagePrompt messagePrompt = MessagePrompt.newBuilder()
    .addMessages(geminiMessage) // required
    .setContext("Respond to all questions with a rhyming poem.") // optional
    .addExamples(californiaExample) // use addAllExamples() to add a list of examples
    .build();

ایجاد پیام

یک GenerateMessageRequest ایجاد کنید

یک GenerateMessageRequest با ارسال یک نام مدل و درخواست به GenerateMessageRequest.Builder ایجاد کنید:

GenerateMessageRequest request = GenerateMessageRequest.newBuilder()
    .setModel("models/chat-bison-001") // Required, which model to use to generate the result
    .setPrompt(messagePrompt) // Required
    .setTemperature(0.5f) // Optional, controls the randomness of the output
    .setCandidateCount(1) // Optional, the number of generated messages to return
    .build();

درخواست را ارسال کنید

GenerateMessageResponse response = client.generateMessage(request);

Message returnedMessage = response.getCandidatesList().get(0);

System.out.println(returnedMessage);

مراحل بعدی

اکنون که اولین برنامه جاوا خود را با استفاده از PalM API ایجاد کرده اید، منبع زیر را بررسی کنید تا درباره API و مدل های زبان به طور کلی بیشتر بدانید.