تبدأ هذه الأداة السريعة في استخدام خدمة الدردشة في PaLM API من خلال مكتبة عميل Java.
الحصول على مفتاح واجهة برمجة التطبيقات
للبدء، عليك الحصول على مفتاح واجهة برمجة التطبيقات.
تثبيت عميل واجهة برمجة التطبيقات
سيتم تثبيت PaLM Java SDK في مستودع Maven المحلي لديك لتتمكن من إضافتها كتبعية لمشروع Gradle الخاص بك.
- نزِّل ملف google-cloud-ai-generativelanguage-v1-java.tar.gz.
استخرِج الملفات وثبِّتها في
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 إلى مشروعك
افتح ملف إعداد Gradle وتأكَّد من إدراج
mavenLocal()
ضمنrepositories
:repositories { mavenCentral() // ... // Add the Maven Local repository mavenLocal() }
وفي ملف إعداد 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") }
إعداد عميل خدمة المناقشة
يمكنك إعداد DiscussServiceClient
من خلال تمرير مفتاح واجهة برمجة التطبيقات (المتوفّر من خلال متغير بيئة 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
لواجهة برمجة التطبيقات، بحيث يمكنها توقُّع الرسالة التالية في المناقشة.
(اختياري) إنشاء بعض الأمثلة
ويمكنك اختياريًا تقديم بعض الأمثلة لما يجب أن ينشئه النموذج. ويتضمن ذلك كلاً من البيانات التي أدخلها المستخدم والاستجابة التي يجب أن يحاكيها النموذج.
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);
الخطوات التالية
والآن بعد أن أنشأت أول تطبيق Java باستخدام PaLM API، يمكنك الاطّلاع على المرجع أدناه لمعرفة المزيد حول واجهة برمجة التطبيقات والنماذج اللغوية بشكل عام.
- راجِع موضوع مقدمة عن النماذج اللغوية الكبيرة لمزيد من المعلومات حول أساليب تقديم الطلب.