Der OCR-Dienst (Optical Character Recognition) von Vertex AI in der GDC-Appliance (Google Distributed Cloud) mit Air Gap erkennt und extrahiert Text aus PDF- und TIFF-Dateien. Sie können lokale Dateien direkt in Inline-Anfragen an die API-Methode BatchAnnotateFiles senden, die eine einzelne Anfrage pro Batchaufruf unterstützt.
Hinweis
Für die Verwendung der OCR API benötigen Sie ein Projekt, für das die OCR API aktiviert ist. Außerdem benötigen Sie die entsprechenden Anmeldedaten. Sie können auch Clientbibliotheken installieren, um Aufrufe an die API zu ermöglichen. Weitere Informationen finden Sie unter Projekt zur Zeichenerkennung einrichten.
Text mit Inline-Anfragen erkennen
Die Methode BatchAnnotateFiles erkennt Text aus einem Batch von PDF- oder TIFF-Dateien.
Sie senden die Datei, in der Sie Text erkennen möchten, direkt als Inhalt in der API-Anfrage. Das System gibt den erkannten Text im JSON-Format in der API-Antwort zurück.
Sie müssen Werte für die Felder im JSON-Text Ihrer API-Anfrage angeben. Die folgende Tabelle enthält eine Beschreibung der Felder im Anfragetext, die Sie angeben müssen, wenn Sie die API-Methode BatchAnnotateFiles für Ihre Texterkennungsanfragen verwenden:
| Anfragetextfelder | Feldbeschreibung |
|---|---|
content |
Die Dateien mit Text, der erkannt werden soll. Sie stellen die Base64-Darstellung (ASCII-String) des Inhalts Ihrer Binärdatei bereit. |
mime_type |
Der Quelldateityp. Sie müssen einen der folgenden Werte festlegen:
|
type |
Die Art der Texterkennung, die Sie für die Datei benötigen. Geben Sie eines der beiden Annotationsfeatures an:
|
language_hints |
Optional. Liste der Sprachen, die für die Texterkennung verwendet werden sollen. Das System interpretiert einen leeren Wert für dieses Feld als automatische Spracherkennung. Bei Sprachen, die auf dem lateinischen Alphabet basieren, ist die Einstellung language_hints nicht erforderlich.Wenn Sie die Sprache des Textes in der Datei kennen, können Sie die Ergebnisse durch Festlegen eines Hinweises verbessern. |
pages |
Optional. Die Anzahl der Seiten aus der Datei, die für die Texterkennung verarbeitet werden sollen. Sie können maximal fünf Seiten angeben. Wenn Sie die Anzahl der Seiten nicht angeben, verarbeitet der Dienst die ersten fünf Seiten der Datei. |
Inline-API-Anfrage stellen
Stellen Sie eine Anfrage an die vortrainierte OCR API mit der REST API-Methode. Andernfalls können Sie über ein Python-Script mit der vortrainierten OCR API interagieren, um Text aus PDF- oder TIFF-Dateien zu erkennen.
Die folgenden Beispiele zeigen, wie Sie Text in einer Datei mithilfe von OCR erkennen:
REST
So erkennen Sie Text in Dateien mit der REST API-Methode:
Speichern Sie die folgende
request.json-Datei für den Anfragetext:cat <<- EOF > request.json { "requests": [ { "input_config": { "content": BASE64_ENCODED_FILE, "mime_type": "application/pdf" }, "features": [ { "type": "FEATURE_TYPE" } ], "image_context": { "language_hints": [ "LANGUAGE_HINT_1", "LANGUAGE_HINT_2", ... ] }, "pages": [] } ] } EOFErsetzen Sie Folgendes:
BASE64_ENCODED_FILE: Die Base64-Darstellung (ASCII-String) des Inhalts Ihrer Binärdatei. Dieser String beginnt mit Zeichen, die in etwa so aussehen:/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==.FEATURE_TYPE: die Art der Texterkennung, die Sie für die Datei benötigen. Zulässige Werte sindTEXT_DETECTIONundDOCUMENT_TEXT_DETECTION.LANGUAGE_HINT: die BCP 47-Sprach-Tags, die als Sprachhinweise für die Texterkennung verwendet werden sollen, z. B.en-t-i0-handwrit. Dieses Feld ist optional. Ein leerer Wert wird vom System als automatische Spracherkennung interpretiert.
Stellen Sie die Anfrage:
curl
curl -X POST \ -H "Authorization: Bearer TOKEN" \ -H "x-goog-user-project: projects/PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ https://ENDPOINT/v1/files:annotateErsetzen Sie Folgendes:
TOKEN: das von Ihnen abgerufene Authentifizierungstoken.PROJECT_ID: Ihre Projekt-ID.ENDPOINT: der OCR-Endpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen finden Sie unter Dienststatus und Endpunkte ansehen.
PowerShell
$headers = @{ "Authorization" = "Bearer TOKEN" "x-goog-user-project" = "projects/PROJECT_ID" } Invoke-WebRequest -Method POST -Headers $headers -ContentType: "application/json; charset=utf-8" -InFile request.json -Uri "ENDPOINT/v1/files:annotate" | Select-Object -Expand ContentErsetzen Sie Folgendes:
TOKEN: das von Ihnen abgerufene Authentifizierungstoken.ENDPOINT: der OCR-Endpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen finden Sie unter Dienststatus und Endpunkte ansehen.
Python
So verwenden Sie den OCR-Dienst aus einem Python-Skript, um Text in einer Datei zu erkennen:
Installieren Sie die aktuelle Version der OCR-Clientbibliothek.
Legen Sie die erforderlichen Umgebungsvariablen in einem Python-Skript fest.
Fügen Sie dem von Ihnen erstellten Python-Script den folgenden Code hinzu:
from google.cloud import vision import google.auth from google.auth.transport import requests from google.api_core.client_options import ClientOptions audience = "https://ENDPOINT:443" api_endpoint="ENDPOINT:443" def vision_client(creds): opts = ClientOptions(api_endpoint=api_endpoint) return vision.ImageAnnotatorClient(credentials=creds, client_options=opts) def main(): creds = None try: creds, project_id = google.auth.default() creds = creds.with_gdch_audience(audience) req = requests.Request() creds.refresh(req) except Exception as e: print("Caught exception" + str(e)) raise e return creds def vision_func(creds): vc = vision_client(creds) input_config = {"content": "BASE64_ENCODED_FILE"} features = [{"type_": vision.Feature.Type.FEATURE_TYPE}] # Each requests element corresponds to a single file. To annotate more # files, create a request element for each file and add it to # the array of requests req = {"input_config": input_config, "features": features} metadata = [("x-goog-user-project", "projects/PROJECT_ID")] resp = vc.annotate_file(req,metadata=metadata) print(resp) if __name__=="__main__": creds = main() vision_func(creds)Ersetzen Sie Folgendes:
ENDPOINT: der OCR-Endpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen finden Sie unter Dienststatus und Endpunkte ansehen.BASE64_ENCODED_FILE: Die Base64-Darstellung (ASCII-String) des Dateiinhalts. Dieser String beginnt mit Zeichen, die in etwa so aussehen:/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==.FEATURE_TYPE: die Art der Texterkennung, die Sie für die Datei benötigen. Zulässige Werte sindTEXT_DETECTIONundDOCUMENT_TEXT_DETECTION.PROJECT_ID: Ihre Projekt-ID.
Speichern Sie das Python-Script.
Führen Sie das Python-Skript aus, um Text in der Datei zu erkennen:
python SCRIPT_NAMEErsetzen Sie
SCRIPT_NAMEdurch den Namen, den Sie Ihrem Python-Skript gegeben haben, z. B.vision.py.