„Es sind noch 46 Minuten übrig, der Urlaub von Lehrer Dong ist vorbei.“
Dies ist eine Nachricht mit über 100 Likes für Dong Yuhuis neuestes Video.
Während der Tage, als er aus dem Live-Übertragungsraum der Oriental Selection verschwand, strömten Fans in seinen persönlichen Account und scherzten: „Solange dieser Mann Urlaub macht, werden Hunderttausende Menschen aussteigen.“ Liebe."
Für Top-Moderatoren wird es jedoch immer eine Zeit geben, in der sie aus der Luft gehen müssen, egal wie engagiert sie sich für ihre Beiträge einsetzen.
Letztendlich verbraucht das stundenlange Reden und die Notwendigkeit, witzige Bemerkungen zu machen, sowohl mentale Energie als auch körperliche Kraft.
In dieser Situation ist nicht nur eine „24-Stunden-Live-Übertragung“ unmöglich, sondern auch längeres Chatten ohne Schichten kann nicht jeder aushalten.
Aber was wäre, wenn es einen Maschinensegen gäbe? Die Fantasie der Menschen ist offen. ——
Kann der Hauptmoderator „selbst“ 24 Stunden am Tag im Live-Übertragungsraum stationiert sein?
Ist es darüber hinaus möglich, ohne die Zweisprachigkeit von Lehrer Dong nahtlos die Sprache zu wechseln und direkt ins Ausland zu wechseln?
24-Stunden-Live-Übertragung, was ist die Schwierigkeit?
Bildtechnisch ist es für die KI nicht mehr schwierig, direkt Avatare zu generieren oder Gesichter für Anker zu „tauschen“.
Zum Beispiel ist der gefälschte „Tom Cruise“ aus dem Ausland seit einiger Zeit auf TikTok sehr beliebt Videos im Video Von „KI-Synthese“ ist keine Spur, auch in den Kommentaren finden sich viele tolle Stimmen.
Darüber hinaus werden die Effekte von KI-generierten Bildern und sogar Videos immer ausgefeilter. DALL·E2 von Foreign OpenAI, Googles neuestes Imagen und Parti , inländische Geheimdienstquellen CogVideo und Microsoft Asia Research Institute NUWA-Infinity sind allesamt neue Errungenschaften, die in den letzten Monaten erzielt wurden.
Viele der oben genannten Bildtechnologien haben bereits API-Schnittstellen geöffnet oder sich zur Erprobung beworben. Darüber hinaus gibt es viele ähnliche Open-Source-Modelle, die sie grundsätzlich „für jedermann spielbar“ machen.
Basierend auf diesen Technologien gibt es mittlerweile viele KI-Blogger mit „24-Stunden-Liveübertragung“, die auf verschiedenen Plattformen im In- und Ausland auftreten.
Aber wenn Sie darauf klicken, werden Sie feststellen, dass diese KI-Blogger weitaus weniger beliebt sind als echte Moderatoren oder virtuelle Moderatoren, die von echten Menschen gespielt werden.
△24-Stunden-KI-virtueller Anker, nur 167 Personen haben ihn einen halben Tag lang „gesehen“
Die Live-Übertragung Der Effekt stimmt auch mit unserem überein. Die Art von „24-Stunden-Live-Übertragung“, auf die wir uns freuen, ist etwas weit entfernt:
Bei der Interaktion können die meisten KI-Anker nur sehr begrenzte Dinge tun, einige sogar einfach nur ein paar Lieder singen (begrenzte Playlist), oder nach vorgegebenen Anweisungen antworten Es ist auch unmöglich, aktiv einige emotionale „Überraschungen“ zu schaffen;
Was dies widerspiegelt, ist der Schmerzpunkt der meisten virtuellen KI-Anker –
Obwohl die Bilderzeugungstechnologie in den letzten Jahren weiterhin Durchbrüche erzielt hat, hat sich die technische Schwelle der Sprachsprache-KI verbessert Noch nicht erreicht.
Nehmen Sie den Live-Übertragungsraum von Dong Yuhui. Obwohl es nicht schwierig ist, ein Bild von „AI Dong Yuhui“ zu erstellen, solange Lehrer Dong dazu bereit ist Lassen Sie die „KI-Version“ Ton und Timbre von Lehrer Dong eher seinem eigenen ähneln, er kann die Stimmen anderer Lehrer im Live-Übertragungsraum erkennen und sogar die „Anweisungen“ von Assistenten außerhalb des Live-Übertragungsraums verstehen, aber das ist es immer noch schwer zu vollenden. Dies entspricht den umfassenden Fähigkeiten verschiedener Sprachsprachen-KI wie Sprachsynthese, Stimmerkennung und Spracherkennung. Wenn Sie diesen Live-Übertragungsraum noch einen Schritt weiter machen möchten, stellen Sie auch höhere Anforderungen an die Sprachfähigkeiten.Zum Beispiel sind mindestens KI-Untertitel erforderlich, die online in Echtzeit übersetzt werden können:
Auf dieser Grundlage Wenn Sie es nahtlos gestalten möchten. Wenn der Live-Übertragungsraum blockiert ist, müssen Sie die Fähigkeit des Simultandolmetschens weiter beherrschen.
Die gute Nachricht ist, dass mittlerweile immer mehr große Technologiehersteller diesen Trend erkannt haben und in den letzten Jahren ihre Investitionen erhöht haben.
Große in- und ausländische Hersteller haben ihre Bemühungen verstärkt
Allein aus der Perspektive der theoretischen Forschung gab es viele Arbeiten in Richtung Sprach-KI. Amazon, Google und andere große Unternehmen haben Hunderte oder sogar Tausende von KI-Artikeln zu Konversations-KI, NLP und Sprachverarbeitung veröffentlicht, von denen viele Top-Konferenzbeiträge sind. Allein Meta ist 2018. In einem Jahr habe ich gewann den besten Beitrag auf zwei Top-NLP-Konferenzen, EMNLP und ACL...(Natürlich gibt es auch diejenigen, die weniger Papiere veröffentlichen, Apple meldet beispielsweise lieber Patente an)
Inländische Unternehmen wie BAT, Huawei, JD.com usw. haben ebenfalls eigene Akustik-bzw In den letzten Jahren hat er in NLP-Laboren wie NAACL und AAAI verschiedene Papierpreise auf vielen Top-Konferenzen wie NAACL und ACL gewonnen.
△ACL 2022 Partial Outstanding Paper Award
Nehmen Sie als Beispiel IWSLT (International Spoken Machine Translation Competition), einen der einflussreichsten Wettbewerbe für gesprochene maschinelle Übersetzung weltweit.
Im diesjährigen Wettbewerb belegte Huawei in vier Sprachrichtungen bei drei Aufgaben den ersten Platz: Sprache-zu-Sprache-Übersetzung, Offline-Sprachübersetzung und gesprochene Übersetzung gleicher Länge.
Aber abgesehen von der Forschung haben große Hersteller unterschiedliche Vorstellungen zur Implementierung der Sprach-KI-Technologie.
Zusätzlich zur Optimierung ihrer eigenen Produkte (Sprachassistenten, Suchmaschinen usw.) auf der Grundlage der neuesten Forschungsergebnisse entscheiden sich einige Hersteller dafür, ihre Modelle direkt als Open Source zu veröffentlichen oder sie in KI-Frameworks umzuwandeln, die von Entwicklern aufgerufen werden können.
Solche KI-Funktionen sind für viele Entwickler, die noch nie mit KI in Berührung gekommen sind, „zu esoterisch“, und selbst wie und wo sie eingesetzt werden soll, ist unklar.
In gewisser Weise hat dies auch dazu geführt, dass viele Entwickler keinen Zugriff auf die neueste Sprach-KI-Technologie haben.
Besonders die in den letzten Jahren sehr beliebte Simultandolmetscher-KI stellt gewisse Anforderungen an die Echtzeitleistung und Modellleistung. Auf Top-Konferenzen erscheinen immer mehr entsprechende Vorträge und Workshops.
Für Branchen wie Live-Übertragungen ist Simultandolmetschen-KI ebenfalls eine unverzichtbare Technologie, wenn sie ihr Publikum und ihren Einflussbereich erweitern möchten.
Gibt es also eine niedrigere Schwelle, um es umzusetzen?
Viele Hersteller haben jetzt damit begonnen, eine neue Methode auszuprobieren –
Nehmen Sie Huawei als Beispiel. Für mobile Entwickler hat das Unternehmen eine Reihe spezieller maschineller Lerndienste basierend auf dem Huawei Mobile Core Services (HMS Core) (ML Kit)-Toolkit entwickelt .
Auf dieser Grundlage können Entwickler diese Sprachtechnologien in den von ihnen entwickelten mobilen Apps oder Anwendungen nutzen, ohne die technischen Details der KI zu beherrschen.
Zum Beispiel lassen sich die KI-Untertitel (Online-Textübersetzung) und das Simultandolmetschen, die wir gerade gesehen haben, basierend auf den Sprachsprachen-KI-Funktionen im Toolkit von Huawei problemlos realisieren.
Nachdem wir so viel gesagt haben, werfen wir einen Blick darauf, wie wir anfangen und es nutzen können. Werfen wir einen Blick darauf, was unsere Vorgänger getan haben.
Zum Beispiel hat jemand im Huawei Developer Forum eine Sprachsuch-Shopping-App für Oma entwickelt, die auf der Echtzeit-Spracherkennung, der Echtzeit-Sprachtranskription und anderen Funktionen im ML Kit basiert.
Die Schritte zur Implementierung der Sprachfunktion sind nicht kompliziert.
Zuerst müssen Sie einige Entwicklungsvorbereitungen treffen, darunter: Abschluss der Registrierung mit echtem Namen auf der Website der Huawei Developer Alliance, Konfiguration von AppGallery Connect und Konfiguration der Maven-Warehouse-Adresse des HMS Core SDK im Projekt.
Dann integrieren Sie das entsprechende Service-SDK. Am Beispiel des Echtzeit-Spracherkennungsdienstes lautet der Code wie folgt:
dependencies<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">{</span><br><span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">//</span> 引入实时语音识别服务插件<br>implementation <span style="color: rgb(102, 153, 0); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">'com.huawei.hms:ml-computer-voice-asr-plugin:3.5.0.303'</span><br><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">}</span>
Dann können Sie in die Phase des Zugriffs auf den Sprachdienst eintreten.
Nehmen wir als Beispiel den Echtzeit-Spracherkennungsdienst. Nach dem Festlegen der Authentifizierungsinformationen der Anwendung besteht der erste Schritt darin, auf die Liste der unterstützten Sprachen LANGUAGE zu verweisen, um eine Absicht zum Festlegen von Echtzeit-Spracherkennungsparametern zu erstellen.
mSpeechRecognizer<span style="color: rgb(0, 92, 197); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">.getLanguages</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span>new MLAsrRecognizer<span style="color: rgb(0, 92, 197); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">.LanguageCallback</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span> <span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">{</span> <br> @Override <br>public void onResult<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span>List<span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">String<span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">></span> result<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span> <span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">{</span><br>Log<span style="color: rgb(0, 92, 197); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">.i</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span>TAG<span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">,</span> <span style="color: rgb(102, 153, 0); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">"support languages=="</span> <span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">+</span> result<span style="color: rgb(0, 92, 197); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">.toString</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span><span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">;</span><br><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">}</span><br>@Override<br>public void onError<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span><span style="color: rgb(34, 134, 58); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">int</span> errorCode<span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">,</span> String errorMsg<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span> <span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">{</span><br>Log<span style="color: rgb(0, 92, 197); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">.e</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span>TAG<span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">,</span> <span style="color: rgb(102, 153, 0); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">"errorCode:"</span> <span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">+</span> errorCode <span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">+</span> <span style="color: rgb(102, 153, 0); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">"errorMsg:"</span> <span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">+</span> errorMsg<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span><span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">;</span><br><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">}</span><br><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">}</span><span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span><span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">;</span></span>
Der zweite Schritt besteht darin, eine Aktivität zu erstellen, die zuvor erstellte Absicht zur Sprachaufnahme zu übergeben und das Ergebnis an die ursprüngliche Aktivität zurückzugeben, die Sprache innerhalb von 60 Sekunden (einschließlich 60 Sekunden) in Echtzeit erkennen kann.
private static final <span style="color: rgb(34, 134, 58); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">int</span> REQUEST_CODE_ASR <span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">=</span> <span style="color: rgb(0, 92, 197); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">100</span><span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">;</span><br><span style="color: rgb(215, 58, 73); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">//</span> REQUEST_CODE_ASR表示当前Activity和拾音界面Activity之间的请求码,通过该码可以在当前Activity中获取拾音界面的处理结果。<br>startActivityForResult<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">(</span>intent<span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">,</span> REQUEST_CODE_ASR<span style="color: rgb(153, 153, 119); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">)</span><span style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">;</span>
Überschreiben Sie abschließend die Methode „onActivityResult“, um die vom Spracherkennungsdienst zurückgegebenen Ergebnisse zu verarbeiten (detaillierten Code finden Sie unter dem Referenzlink).
Für die Entwicklungsdetails jedes Schritts gibt es einen detaillierten Entwicklungsleitfaden auf der offiziellen Website von HMS Core, der sehr für Anfänger geeignet ist.
Darüber hinaus ist der maschinelle Lerndienst von HMS Core nicht nur auf Huawei-Mobiltelefonen anwendbar, sondern auch auf Android-Geräten und iOS-Geräten. Die spezifischen Versionsanforderungen sind wie folgt. Wie wäre es mit
? Durch den einfachen Zugriff auf das SDK können Sie KI-Algorithmusfunktionen auf dem Niveau großer Hersteller erhalten, ohne dass komplizierte Parameteranpassungen und Schulungen erforderlich sind. Denken Sie bereits in großen Dimensionen?
(Und es geht nicht nur um Sprachtechnologie, ML Kit bietet auch verschiedene KI-Algorithmusfunktionen wie Text und Bilder. Für spezifische Details können Sie am Ende des Artikels auf „Originaltext lesen“ klicken und sich an den ML Kit-Beamten wenden Webseite).
Allerdings wird es für Top-Moderatoren, egal wie engagiert sie ihrer Arbeit nachgehen, immer eine Zeit geben, in der sie aus der Luft gehen müssen.
Tatsächlich ist dieser Ansatz, den Entwicklern mobiler Anwendungen langfristig angesammelte technische Fähigkeiten über benutzerfreundliche Tools zur Verfügung zu stellen, nicht nur Huawei vorbehalten.
Ob es sich um Googles GMS Core oder die verschiedenen Kits für Entwickler von Apple handelt, der Hauptzweck besteht darin, die Schwelle für die Implementierung modernster Technologien kontinuierlich zu senken, damit mehr Entwickler mehr Energie und Mühe investieren können, um sich nicht auf technische Bedenken zu konzentrieren in der Kreativität.
Daher freuen sich Handynutzer natürlich darüber, dass die neuesten Technologien in vielfältiger, unterhaltsamer und kreativer Form direkt auf dem Handy erlebbar sind.
Für Hersteller stellt der Wohlstand von Anwendungen den wichtigsten Knoten im ökologischen Kreislauf dar, der extern mehr Benutzer anzieht und intern mehr herausragende Entwickler anzieht.
Das obige ist der detaillierte Inhalt vonWie hält KI Dong Yuhui davon ab, von der Arbeit zu kommen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!