Zielgruppe
In dieser Anleitung erfahren Sie, wie Sie mit der Cloud Natural Language API schnell Anwendungen untersuchen und entwickeln können. Die Anleitung richtet sich an Nutzer, die mit den Grundlagen des Programmierens vertraut sind, ist jedoch auch ohne viel Programmierwissen verständlich. Nachdem Sie die Anleitung durchgegangen sind, sollten Sie in der Lage sein, mithilfe der Referenzdokumentation Ihre eigenen grundlegenden Anwendungen zu erstellen.
In dieser Anleitung wird für eine Natural Language-Anwendung Python-Code verwendet. Dabei wird nicht erläutert, wie die Python-Clientbibliotheken funktionieren, sondern wie Aufrufe an die Natural Language API erfolgen. Anwendungen in Java und Node.js verhalten sich im Wesentlichen ähnlich. In den Natural Language API-Beispielen, einschließlich des Beispiels in dieser Anleitung, finden Sie Beispiele in anderen Sprachen.
Voraussetzungen
Diese Anleitung setzt Folgendes voraus:
- Sie haben ein Cloud Natural Language-Projekt in der Google Cloud Console eingerichtet.
- Sie haben Ihre Umgebung mit Standardanmeldedaten für Anwendungen in der Google Cloud Console eingerichtet.
- Sie sind mit Python in der Google Cloud Console-Programmierung vertraut.
- Sie haben Ihre Python-Entwicklungsumgebung eingerichtet. Es wird empfohlen, die neueste Version von Python,
pipundvirtualenvauf Ihrem System zu installieren. Eine Anleitung finden Sie im Leitfaden zur Einrichtung der Python-Entwicklungsumgebung für die Google Cloud Platform. - Sie haben die Google Cloud-Clientbibliothek für Python installiert.
Überblick
In dieser Anleitung wird anhand von classifyText-Anfragen eine grundlegende Natural Language-Anwendung vorgestellt, die Inhalte zusammen mit einer Konfidenzbewertung in Kategorien einteilt. Beispiel:
category: "/Internet & Telecom/Mobile & Wireless/Mobile Apps & Add-Ons"
confidence: 0.6499999761581421
Die Liste aller verfügbaren Kategorielabels finden Sie unter Kategorien.
Mithilfe dieser Anleitung können Sie eine Anwendung zur Durchführung der folgenden Aufgaben erstellen:
- Mehrere Textdateien klassifizieren und das Ergebnis in eine Indexdatei schreiben
- Eingabeabfragetext zur Suche nach ähnlichen Textdateien verarbeiten
- Eingabeabfrage-Kategorielabels zur Suche nach ähnlichen Textdateien verarbeiten
In dieser Anleitung werden Inhalte von Wikipedia verwendet. Sie könnten eine ähnliche Anwendung erstellen, um z. B. Nachrichtenartikel oder Onlinekommentare zu verarbeiten.
Quelldateien
Den Quellcode für die Anleitung finden Sie in den Beispielen zur Python-Clientbibliothek auf GitHub.
In dieser Anleitung wird Beispielquelltext von Wikipedia verwendet. Sie finden die Beispieltextdateien im Ordner resources/texts des GitHub-Projekts.
Bibliotheken importieren
Zur Verwendung der Cloud Natural Language API müssen Sie das Modul language aus der Bibliothek google-cloud-language importieren. Das Modul language.types enthält Klassen, die zum Erstellen von Anfragen erforderlich sind. Das Modul language.enums wird verwendet, um den Typ des Eingabetextes anzugeben. In dieser Anleitung werden Nur-Text-Inhalte klassifiziert (language.enums.Document.Type.PLAIN_TEXT).
Damit die Ähnlichkeit von Texten anhand der resultierenden Inhaltsklassifizierung berechnet werden, wird in dieser Anleitung numpy für Vektorberechnungen verwendet.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Natural Language finden Sie unter Natural Language-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Natural Language Python API.
Richten Sie zur Authentifizierung bei Natural Language die Standardanmeldedaten für Anwendungen (ADC) ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Schritt 1: Inhalte klassifizieren
Sie können die Python-Clientbibliothek verwenden, um eine Anfrage zur Klassifizierung von Inhalten an die Natural Language API zu stellen. Die Python-Clientbibliothek enthält die Details für Anfragen an die und Antworten von der Natural Language API.
Die Funktion classify in der Anleitung ruft die Methode classifyText der Natural Language API auf. Dabei wird zuerst eine Instanz der Klasse LanguageServiceClient erstellt und dann wird die Methode classify_text der Instanz LanguageServiceClient aufgerufen.
Die Funktion classify der Anleitung klassifiziert in diesem Beispiel nur Textinhalte. Sie können den Inhalt einer Webseite auch klassifizieren. Dazu übergeben Sie die Quell-HTML der Webseite als text und legen den Parameter type auf language.enums.Document.Type.HTML fest.
Weitere Informationen finden Sie unter Inhaltsklassifizierung. Details zur Struktur von Anfragen an die Natural Language API finden Sie in der Natural Language-Referenz.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Natural Language finden Sie unter Natural Language-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Natural Language Python API.
Richten Sie zur Authentifizierung bei Natural Language die Standardanmeldedaten für Anwendungen (ADC) ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Das zurückgegebene Ergebnis ist ein Wörterbuch mit den Kategorielabels als Schlüssel und Konfidenzbewertungen als Werten. Beispiel:
{
"/Computers & Electronics": 0.800000011920929,
"/Internet & Telecom/Mobile & Wireless/Mobile Apps & Add-Ons": 0.6499999761581421
}
Das Python-Script der Anleitung ist so strukturiert, dass es für schnelle Tests über die Befehlszeile ausgeführt werden kann. Sie können beispielsweise Folgendes ausführen:
python classify_text_tutorial.py classify "Google Home enables users to speak voice commands to interact with services through the Home's intelligent personal assistant called Google Assistant. A large number of services, both in-house and third-party, are integrated, allowing users to listen to music, look at videos or photos, or receive news updates entirely by voice. "
Schritt 2: Mehrere Textdateien indexieren
Die index Funktion im Anleitungsskript verwendet als Eingabe ein Verzeichnis
mit mehreren Textdateien sowie den Pfad zu einer Datei, in der sie die indexierte Ausgabe speichert. Der Standardname ist index.json.
Die index Funktion liest den Inhalt
jeder Textdatei im Eingabeverzeichnis und übergibt dann die Textdateien
an die Cloud Natural Language API, damit sie in
Inhaltskategorien klassifiziert werden.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Natural Language finden Sie unter Natural Language-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Natural Language Python API.
Richten Sie zur Authentifizierung bei Natural Language die Standardanmeldedaten für Anwendungen (ADC) ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Die Ergebnisse aus der Cloud Natural Language API für jede Datei werden in einem einzigen Wörterbuch organisiert, als JSON-String serialisiert und dann in eine Datei geschrieben. Beispiel:
{
"android.txt": {
"/Computers & Electronics": 0.800000011920929,
"/Internet & Telecom/Mobile & Wireless/Mobile Apps & Add-Ons": 0.6499999761581421
},
"google.txt": {
"/Internet & Telecom": 0.5799999833106995,
"/Business & Industrial": 0.5400000214576721
}
}
Um Textdateien mit dem standardmäßigen Ausgabedateinamen index.json über die Befehlszeile zu indexieren, führen Sie den folgenden Befehl aus:
python classify_text_tutorial.py index resources/texts
Schritt 3: Index abfragen
Mit Kategorielabels abfragen
Sobald die Indexdatei (Standarddateiname = index.json) erstellt wurde, können Sie Abfragen an den Index senden, um einige der Dateinamen sowie die zugehörigen Konfidenzbewertungen abzurufen.
Eine Möglichkeit dafür ist die Verwendung eines Kategorielabels als Abfrage. In der Anleitung wird dies mit der Funktion query_category erreicht. Angaben zur Implementierung von Hilfsfunktionen wie similarity finden Sie in der Datei classify_text_tutorial.py. In Ihren Anwendungen sollten die Ähnlichkeitsbewertung und das Ähnlichkeits-Ranking sorgfältig in Abhängigkeit von konkreten Anwendungsfällen gestaltet werden.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Natural Language finden Sie unter Natural Language-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Natural Language Python API.
Richten Sie zur Authentifizierung bei Natural Language die Standardanmeldedaten für Anwendungen (ADC) ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.