Mit OCI Speech natürliche Sprache transkribieren

Oracle Cloud Infrastructure (OCI) Speech ist einer von mehreren Cloud-nativen KI-Services. Mit dem Speech-Service können Sie Audiodateien in lesbaren Text konvertieren, der im JSON-Format gespeichert wird.

Speech nutzt die Macht der gesprochenen Sprache, indem es Ihnen ermöglicht, Audiodateien, die menschliche Sprache enthalten, einfach in hochgenaue Texttranskriptionen zu konvertieren. Der Service ist eine native OCI-Anwendung, auf die Sie mit einer Webanwendung, einer REST-API, einem SDK, einer CLI oder einer Konsole zugreifen können.

Speech verwendet die automatische Spracherkennungstechnologie (ASR), um eine grammatikalisch korrekte Transkription von Video- und Audiodateien zu ermöglichen. Speech verarbeitet Audioaufnahmen mit geringer Genauigkeit und transkribiert anspruchsvolle Aufnahmen wie Meetings oder Callcenter-Anrufe. Mit Speech können Sie in OCI Object Storage oder einem Datenasset gespeicherte Dateien in genauen, normalisierten, mit Zeitstempel versehenen und profanitätsgefilterten Text umwandeln. Diese Funktionalität ist mit Downstream-Services verfügbar. Beispiel: Sie können zusätzliche Services wie Sprache und Prognosen verwenden, um die Anrufstimmung zu analysieren, Inhalte für Werbung zu zielen, Ihre Medienordner zu indexieren und mit Oracle Cloud Infrastructure Lakehouse eine Mediensuchmaschine zu erstellen.

Architektur

Diese Architektur zeigt die Beziehung zwischen den verschiedenen Komponenten in einem typischen System, bei dem OCI Speech im Mittelpunkt steht.

Diese Architektur kann für viele Arten von Anwendungen gelten. Beispiel: Eine Webanwendung kann die Unterhaltung eines Helpdeskmitarbeiters mit einem Kunden aufzeichnen, der ein Problem meldet. Die Audiodatei der Unterhaltung wird im OCI Object Storage gespeichert, der Ereignisse für neue Audiodateien ausgibt. OCI-Ereignisse lösen eine OCI Functions-App aus, die eine Transkriptionsanforderung mit einem REST-API-Aufruf an den OCI Speech-Service erstellt. Speech übernimmt den Job, ruft die Audiodatei aus OCI Object Storage ab, speist die Datei in vortrainierte akustische und Sprachmodelle ein und überträgt die Ausgabe in eine JSON-Textdatei. Die JSON-Datei wird in OCI Object Storage gespeichert. OCI Object Storage erkennt die neue Textdatei und gibt ein Ereignis aus. OCI-Ereignisse lösen OCI Functions aus, um die Textdatei abzurufen und den Text und die Metadaten in eine MySQL-Datenbank hochzuladen. OCI-Ereignisse lösen auch OCI-Benachrichtigungen aus, um eine Nachricht zu veröffentlichen, wenn das Transkript bereit ist. Dadurch wird die Webanwendung benachrichtigt, die das Ereignis abonniert. Die Webanwendung zeigt das Transkript im Ticket an, das der Helpdesk-Mitarbeiter erstellt hat.

Optional kann die Webanwendung Audiodateimetadaten wie Dauer, Größe, Startdatum und Uhrzeit der Audiodatei abrufen und im Helpdesk-Ticket speichern.

Die in OCI Object Storage gespeicherten Audio- und Textdateien können mit Oracle Cloud Infrastructure Lakehouse (nicht im Diagramm dargestellt) in Downstream-Analysetools eingespeist werden.

Das folgende Diagramm veranschaulicht diese Referenzarchitektur.

Beschreibung von architektur-ai-speech.png
Beschreibung der Illustrationsarchitektur-ai-speech.png

Architektur-ai-speech-oracle.zip

Die Architektur umfasst die folgenden Komponenten:

  • Region

    Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der mindestens ein Data Center enthält, das als Availability-Domain bezeichnet wird. Regionen sind unabhängig von anderen Regionen, und große Entfernungen können sie trennen (über Länder oder sogar Kontinente).

  • Verfügbarkeitsdomänen

    Availability-Domains sind eigenständige, unabhängige Data Center innerhalb einer Region. Die physischen Ressourcen in jeder Availability-Domain sind von den Ressourcen in den anderen Availability-Domains isoliert, was eine Fehlertoleranz sicherstellt. Availability-Domains haben keine gemeinsame Infrastruktur wie Stromversorgung oder Kühlung oder das interne Availability-Domainnetzwerk. Daher sollte ein Fehler in einer Availability-Domain sich nicht auf die anderen Availability-Domains in der Region auswirken.

  • Faultdomains

    Eine Faultdomain ist eine Gruppierung aus Hardware und Infrastruktur innerhalb einer Availability-Domain. Jede Availability-Domain umfasst drei Fehlerdomänen mit unabhängiger Stromversorgung und Hardware. Wenn Sie Ressourcen auf mehrere Faultdomains verteilen, können Ihre Anwendungen physische Serverausfälle, Systemwartungen und Stromausfälle innerhalb einer Faultdomain tolerieren.

  • Virtuelles Cloud-Netzwerk (VCN) und Subnetze

    Ein VCN ist ein anpassbares, benutzerdefiniertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region einrichten können. Wie herkömmliche Data Center-Netzwerke erhalten Sie mit VCNs die Kontrolle über Ihre Netzwerkumgebung. Ein VCN kann mehrere sich nicht überschneidende CIDR-Blöcke aufweisen, die Sie nach dem Erstellen des VCN ändern können. Sie können ein VCN in Subnetze segmentieren, die sich auf eine Region oder eine Availability-Domain beschränken. Jedes Subnetz besteht aus einem Bereich zusammenhängender Adressen, die sich nicht mit anderen Subnetzen im VCN überschneiden. Sie können die Größe eines Subnetzes nach der Erstellung ändern. Ein Subnetz kann öffentlich oder privat sein.

  • Compartment

    Compartments sind regionsübergreifende logische Partitionen in einem Oracle Cloud Infrastructure-Mandanten. Mit Compartments können Sie Ihre Ressourcen in Oracle Cloud organisieren, den Zugriff auf die Ressourcen kontrollieren und Nutzungs-Quotas festlegen. Um den Zugriff auf die Ressourcen in einem bestimmten Compartment zu kontrollieren, definieren Sie Policys, mit denen angegeben wird, wer auf die Ressourcen zugreifen kann und welche Aktionen sie ausführen können.

  • Load Balancer

    Der Oracle Cloud Infrastructure Load Balancing-Service ermöglicht automatisierte Trafficverteilung von einem einzelnen Einstiegspunkt auf mehrere Server im Backend.

  • Sicherheitsliste

    Für jedes Subnetz können Sie Sicherheitsregeln erstellen, die Quelle, Ziel und Typ des Traffics angeben, der in und aus dem Subnetz zulässig sein muss.

  • Identity and Access Management (IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM) ist die Zugriffskontrollebene für Oracle Cloud Infrastructure (OCI) und Oracle Cloud Applications. Mit der IAM-API und der Benutzeroberfläche können Sie Identitätsdomains und die Ressourcen innerhalb der Identitätsdomain verwalten. Jede OCI IAM-Identitätsdomain stellt eine eigenständige Identity and Access Management-Lösung oder eine andere Benutzerpopulation dar.

  • Object Storage

    Mit Object Storage können Sie schnell auf große Mengen an strukturierten und unstrukturierten Daten eines beliebigen Inhaltstyps zugreifen, darunter Datenbankbackups, analytische Daten und umfangreiche Inhalte, wie Bilder und Videos. Sie können Daten sicher und geschützt speichern und dann direkt aus dem Internet oder aus der Cloud-Plattform abrufen. Sie können den Speicher skalieren, ohne die Performance oder Servicezuverlässigkeit zu beeinträchtigen. Verwenden Sie Standardspeicher für "Hot Storage", auf den Sie schnell, sofort und häufig zugreifen müssen. Verwenden Sie Archivspeicher für "Cold Storage", den Sie über lange Zeiträume beibehalten möchten und auf den Sie nur selten zugreifen.

  • Functions

    Oracle Cloud Infrastructure Functions ist eine vollständig verwaltete, mehrmandantenfähige, hoch skalierbare, On-Demand-Funktionalität (FaaS). Es wird von der Open-Source-Engine Fn Project angetrieben. Mit Funktionen können Sie Ihren Code bereitstellen und entweder direkt aufrufen oder als Reaktion auf Ereignisse auslösen. Oracle Functions verwendet Docker-Container, die in Oracle Cloud Infrastructure Registry gehostet werden.

  • Ereignisse

    Oracle Cloud Infrastructure-Services geben Ereignisse aus. Dies sind strukturierte Nachrichten, in denen die Änderungen an Ressourcen beschrieben werden. Ereignisse werden für CRUD-Vorgänge (Create, Read, Update oder Delete), Änderungen des Ressourcenlebenszyklusstatus und Systemereignisse ausgegeben, die sich auf Cloud-Ressourcen auswirken.

  • Monitoring

    Der Oracle Cloud Infrastructure Monitoring-Service überwacht Ihre Cloud-Ressourcen aktiv und passiv mit Metriken, um Ressourcen und Alarme zu überwachen und Sie zu benachrichtigen, wenn diese Metriken alarmspezifische Trigger erfüllen.

  • Audit

    Der Oracle Cloud Infrastructure Audit-Service zeichnet Aufrufe aller unterstützten öffentlichen API-(Public Application Programming Interface-)Endpunkte von Oracle Cloud Infrastructure automatisch als Logereignisse auf. Derzeit unterstützen alle Services das Logging durch Oracle Cloud Infrastructure Audit.

  • Notifications

    Der Oracle Cloud Infrastructure Notifications-Service überträgt Nachrichten über ein Publizierungs- und Abonnementmuster an verteilte Komponenten. So erhalten Sie sichere, zuverlässige und dauerhafte Nachrichten mit geringer Latenz für Anwendungen, die auf Oracle Cloud Infrastructure gehostet werden.

  • Oracle Cloud Infrastructure Speech

    Oracle Cloud Infrastructure Speech ist ein neuer KI-Service, der mit Automatic Speech Recognition (ASR) Sprache in Text konvertiert.

  • Oracle MySQL Database Service

    Oracle MySQL Database Service ist ein vollständig verwalteter Oracle Cloud Infrastructure-(OCI-)Datenbankservice, mit dem Entwickler sichere, Cloud-native Anwendungen schnell entwickeln und bereitstellen können. Oracle MySQL Database Service ist für OCI optimiert und exklusiv verfügbar und wird von den OCI- und MySQL-Entwicklungsteams zu 100% erstellt, verwaltet und unterstützt.

    Oracle MySQL Database Service verfügt über eine integrierte Hochleistungsanalyse-Engine (HeatWave), mit der anspruchsvolle Echtzeitanalysen direkt für eine betriebliche MySQL-Datenbank ausgeführt werden können.

Empfehlungen

Ihre Anforderungen können von der hier beschriebenen Architektur abweichen. Verwenden Sie die folgenden Empfehlungen als Ausgangspunkt.

  • VCN

    Wenn Sie ein VCN erstellen, bestimmen Sie die Anzahl der erforderlichen CIDR-Blöcke und die Größe jedes Blocks basierend auf der Anzahl der Ressourcen, die Sie an Subnetze im VCN anhängen möchten. Verwenden Sie CIDR-Blöcke innerhalb des standardmäßigen privaten IP-Adressraums.

    Wählen Sie CIDR-Blöcke aus, die sich nicht mit anderen Netzwerken (in Oracle Cloud Infrastructure, Ihrem On-Premise-Data Center oder einem anderen Cloud-Provider) überschneiden, für die Sie private Verbindungen einrichten möchten.

    Nachdem Sie ein VCN erstellt haben, können Sie die zugehörigen CIDR-Blöcke ändern, hinzufügen und entfernen.

    Berücksichtigen Sie beim Entwerfen der Subnetze den Trafficfluss und die Sicherheitsanforderungen. Hängen Sie alle Ressourcen innerhalb einer bestimmten Tier oder Rolle an dasselbe Subnetz an, das als Sicherheitsgrenze dienen kann.

  • Sicherheit

    Mit Oracle Cloud Guard können Sie die Sicherheit Ihrer Ressourcen in Oracle Cloud Infrastructure proaktiv überwachen und verwalten. Cloud Guard verwendet Detektorrezepte, die Sie definieren können, um Ihre Ressourcen auf Sicherheitslücken zu untersuchen und Operatoren und Benutzer auf riskante Aktivitäten zu überwachen. Wenn eine Fehlkonfiguration oder unsichere Aktivität erkannt wird, empfiehlt Cloud Guard Korrekturmaßnahmen und unterstützt Sie bei der Ausführung dieser Aktionen basierend auf Responder-Rezepten, die Sie definieren können.

    Für Ressourcen, für die maximale Sicherheit erforderlich ist, empfiehlt Oracle die Verwendung von Sicherheitszonen. Eine Sicherheitszone ist ein Compartment, das mit einem von Oracle definierten Rezept von Sicherheits-Policys verknüpft ist, die auf Best Practices basieren. Beispiel: Die Ressourcen in einer Sicherheitszone dürfen nicht über das öffentliche Internet zugänglich sein und müssen mit vom Kunden verwalteten Schlüsseln verschlüsselt werden. Wenn Sie Ressourcen in einer Sicherheitszone erstellen und aktualisieren, validiert Oracle Cloud Infrastructure die Vorgänge anhand der Policys im Rezept der Sicherheitszone und lehnt Vorgänge ab, die eine der Policys verletzen.

  • Cloud Guard

    Klonen und passen Sie die von Oracle bereitgestellten Standardrezepte an, um benutzerdefinierte Detektor- und Responder-Rezepte zu erstellen. Mit diesen Rezepten können Sie angeben, welcher Typ von Sicherheitsverletzungen eine Warnung generiert und welche Aktionen für sie ausgeführt werden dürfen. Beispiel: Sie möchten Objektspeicher-Buckets ermitteln, deren Sichtbarkeit auf "Öffentlich" gesetzt ist.

    Wenden Sie Cloud Guard auf Mandantenebene an, um den größten Geltungsbereich abzudecken und den Verwaltungsaufwand für die Verwaltung mehrerer Konfigurationen zu reduzieren.

    Sie können auch das Feature "Verwaltete Liste" verwenden, um bestimmte Konfigurationen auf Detektoren anzuwenden.

  • Sicherheitszonen

    Klonen und passen Sie die von Oracle bereitgestellten Standardrezepte an, um benutzerdefinierte Detektor- und Responder-Rezepte zu erstellen. Mit diesen Rezepten können Sie angeben, welcher Typ von Sicherheitsverletzungen eine Warnung generiert und welche Aktionen für sie ausgeführt werden dürfen. Beispiel: Sie möchten Objektspeicher-Buckets ermitteln, deren Sichtbarkeit auf "Öffentlich" gesetzt ist.

    Wenden Sie Cloud Guard auf Mandantenebene an, um den größten Geltungsbereich abzudecken und den Verwaltungsaufwand für die Verwaltung mehrerer Konfigurationen zu reduzieren.

    Sie können auch das Feature "Verwaltete Liste" verwenden, um bestimmte Konfigurationen auf Detektoren anzuwenden.

  • Load Balancer-Bandbreite

    Beim Erstellen des Load Balancers können Sie entweder eine vordefinierte Ausprägung auswählen, die eine feste Bandbreite bereitstellt, oder eine benutzerdefinierte flexible Ausprägung angeben, in der Sie einen Bandbreitenbereich festlegen und den Service die Bandbreite basierend auf Trafficmustern automatisch skalieren lassen. Mit beiden Methoden können Sie die Ausprägung jederzeit ändern, nachdem Sie den Load Balancer erstellt haben.

Hinweise

  • Performance

    Verwenden Sie die Cloud-nativen Services von Oracle - Ereignisse, Funktionen, Benachrichtigungen und KI-Sprache, um serverlose Anwendungen bereitzustellen, die automatisch basierend auf der Workload skaliert werden. Die Services werden von Oracle verwaltet.

    Der AI-Sprachjob wird in einer strengen First-in-First-out-Methode verarbeitet. Sie können eine Queue mit Jobs mit maximal 10.000 Aufgaben auf Mandantenebene erstellen. Wenn Sie einen Job weiterleiten, der die maximale Anzahl an Aufgaben überschreitet, schlägt dieser Job fehl. Jobs werden 90 Tage aufbewahrt.

  • Zugriff

    OCI Speech unterstützt den Zugriff über die OCI-Konsole, den Java- und Python-SDK-Client sowie die OCI-CLI. Beim Testen wird die Verwendung des CLI-Tools oder der Konsole empfohlen.

  • Verfügbarkeit

    In diesem Beispiel ist die Datenbank nicht hochverfügbar. Bei kritischen Anwendungen sollten Sie MySQL Database Service im HA-Modus mit 3 Replikaten ausführen.

  • Kostenfaktor

    Verwenden Sie Cloud-native Oracle-Services - Ereignisse, Funktionen, Benachrichtigungen und KI-Sprache, um die serverlose Anwendung bereitzustellen, für die keine Fixkosten anfallen. Sie bezahlen die Serviceanfrage nur, wenn Sie sie verwenden.

Bestätigungen

  • Autoren: Wei Han, Zaid Al Qaddoumi
  • Beitragende: Sreya Dutta

Änderungslog

In diesem Log werden wichtige Änderungen aufgeführt: