In dieser Kurzanleitung erfahren Sie, wie Sie den Einbettungsdienst der PaLM API verwenden. Mit dem Einbettungsdienst generieren Sie Texteinbettungen, die Sie in verschiedenen Natural Language-Anwendungen verwenden können.
API-Schlüssel abrufen
Zuerst müssen Sie einen API-Schlüssel anfordern.
Was sind Einbettungen?
Mit Einbettungen kann Text (z. B. Wörter, Sätze oder ganze Absätze) als Liste von Gleitkommazahlen in einem Array dargestellt werden. Die Grundidee ist, dass Text mit ähnlichen Bedeutungen ähnliche Einbettungen hat. Die Beziehung zwischen ihnen kann für viele wichtige Aufgaben verwendet werden.
API-Client installieren
Mit dieser Anleitung wird das PaLM Java SDK in deinem lokalen Maven-Repository installiert, damit du es als Abhängigkeit zu deinem Gradle-Projekt hinzufügen kannst.
- Laden Sie die Datei google-cloud-ai-generativelanguage-v1-java.tar.gz herunter.
Extrahieren Sie die Dateien und installieren Sie sie in
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
Öffnen Sie die Gradle-Konfigurationsdatei und prüfen Sie, ob
mavenLocal()
unterrepositories
aufgeführt ist:repositories { mavenCentral() // ... // Add the Maven Local repository mavenLocal() }
Fügen Sie in der Gradle-Konfigurationsdatei außerdem die erforderlichen Bibliotheken in den
dependencies
-Block ein: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") }
Textdienst-Client initialisieren
Initialisieren Sie in Ihrem Java-Programm ein TextServiceClient
, indem Sie Ihren API-Schlüssel als Header an das TransportChannelProvider
übergeben, das von TextServiceSettings
verwendet werden soll:
HashMap<String, String> headers = new HashMap<>();
headers.put("x-goog-api-key", "API_KEY");
TransportChannelProvider provider = InstantiatingGrpcChannelProvider.newBuilder()
.setHeaderProvider(FixedHeaderProvider.create(headers))
.build();
TextServiceSettings settings = TextServiceSettings.newBuilder()
.setTransportChannelProvider(provider)
.setCredentialsProvider(FixedCredentialsProvider.create(null))
.build();
TextServiceClient client = TextServiceClient.create(settings);
Einbettungen generieren
In diesem Abschnitt erfahren Sie, wie Sie mit der Methode embedText
Einbettungen für einen Text generieren.
Wenn Sie die Methode embedText
verwenden möchten, geben Sie den Namen des Modells sowie einzubettenden Text ein. Sie erhalten eine Liste mit Gleitkommawerten.
EmbedTextRequest request = EmbedTextRequest.newBuilder()
.setModel("models/embedding-gecko-001") // Required, which model to use to generate the result
.setText("What do squirrels eat?") // Required
.build();
EmbedTextResponse response = client.embedText(request);
List<Float> embedding = response.getEmbedding().getValueList();
System.out.println(embedding);