Ce guide de démarrage rapide vous aide à utiliser le service de chat dans l'API PaLM via la bibliothèque cliente Java.
Obtenir une clé API
Pour commencer, vous devez obtenir une clé API.
Installer le client API
Avec ces instructions, le SDK Java PaLM sera installé dans votre dépôt Maven local afin que vous puissiez l'ajouter en tant que dépendance à votre projet Gradle.
- Téléchargez le fichier google-cloud-ai-generativelanguage-v1-java.tar.gz.
Extrayez les fichiers et installez-les dans
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
Ajouter le SDK à votre projet
Ouvrez le fichier de configuration Gradle et assurez-vous que
mavenLocal()
figure sousrepositories
:repositories { mavenCentral() // ... // Add the Maven Local repository mavenLocal() }
Toujours dans votre fichier de configuration Gradle, ajoutez les bibliothèques nécessaires au bloc
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") }
Initialiser le client de service Discuss
Initialisez un DiscussServiceClient
en transmettant votre clé API (fournie via la variable d'environnement API_KEY
) en tant qu'en-tête à l'élément TransportChannelProvider
qui sera utilisé par 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);
Créer une invite de message
Vous devez fournir un MessagePrompt
à l'API afin qu'elle puisse prédire le message suivant dans la discussion.
(Facultatif) Créer des exemples
Vous pouvez éventuellement fournir des exemples de ce que le modèle devrait générer. Cela inclut à la fois l'entrée utilisateur et la réponse que le modèle doit émuler.
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();
Créer la requête
Transmettez les exemples à MessagePrompt.Builder
avec l'historique des messages actuel et éventuellement l'exemple de l'étape précédente.
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();
Générer des messages
Créer un élément GenerateMessageRequest
Créez un GenerateMessageRequest
en transmettant un nom de modèle et une invite à 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();
Envoyer la requête
GenerateMessageResponse response = client.generateMessage(request);
Message returnedMessage = response.getCandidatesList().get(0);
System.out.println(returnedMessage);
Étapes suivantes
Maintenant que vous avez créé votre première application Java à l'aide de l'API PaLM, consultez la ressource ci-dessous pour en savoir plus sur l'API et les modèles de langage en général.
- Consultez l'article Présentation des LLM pour en savoir plus sur les techniques de requête.