Maison >Périphériques technologiques >IA >Comment l'IA empêche-t-elle Dong Yuhui de s'absenter du travail ?
"Il reste encore 46 minutes, les vacances du professeur Dong seront terminées."
Il s'agit d'un message avec plus de 100 likes sur la dernière vidéo de Dong Yuhui.
Les jours où il a disparu de la salle de diffusion en direct d'Oriental Selection, les fans ont afflué sur son compte personnel et ont plaisanté : "Tant que cet homme prendra des vacances, des centaines de milliers de personnes tomberont amoureuses."
Cependant, pour les présentateurs principaux, quel que soit leur dévouement à leur travail, il y aura toujours un moment pour quitter les ondes.
Après tout, parler continuellement pendant plusieurs heures et devoir faire des remarques pleines d'esprit consomme à la fois de l'énergie mentale et de la force physique.
Dans cette situation, non seulement une « diffusion en direct 24 heures sur 24 » est impossible, mais même une discussion à long terme sans quarts de travail n'est pas quelque chose que tout le monde peut supporter.
Mais cela dit, et s'il y avait un support machine...
Surtout avec l'explosion de l'humain virtuel et d'autres technologies pendant cette période, il est difficile de ne pas ouvrir l'esprit des gens -
Avec la puissance de l'IA, est-ce possible ? Laisser le présentateur en chef « lui-même » rester dans la salle de diffusion en direct 24 heures sur 24 ?
De plus, est-il possible de changer de langue de manière transparente et de se mondialiser directement sans la capacité bilingue du professeur Dong ?
À en juger par les différentes technologies d'IA actuellement mises en œuvre, ces « trous cérébraux » ne sont pas impossibles à réaliser.
En termes de technologie d'image, il n'est pas difficile pour l'IA de générer directement des avatars ou de « changer » les visages des ancres.
Par exemple, le "Tom Cruise" étranger qui ressemble au vrai est populaire sur TikTok depuis un certain temps, et les avatars nationaux tels que Liu Yexi et Li Xinglan sont également très populaires sur les plateformes de médias sociaux nationales "Synthèse d'IA". est presque invisible dans l'ombre de la vidéo, il y a aussi de nombreuses voix étonnantes dans les commentaires.
De plus, les effets des images et même des vidéos générées par l'IA sont de plus en plus sophistiqués. Le DALL·E2 de Foreign OpenAI, le dernier Imagen and Parti de Google, la Wisdom Source CogVideo nationale et le Microsoft Asia Research Institute NUWA-Infinity sont tous. parmi ceux-ci, de nouveaux résultats apparaissent chaque mois.
De nombreuses technologies d'image mentionnées ci-dessus ont déjà ouvert des interfaces API ou demandé un essai. De plus, il existe de nombreux modèles open source similaires, qui les rendent fondamentalement « jouables par tout le monde ».
Sur la base de ces technologies, de nombreux blogueurs IA « diffusion en direct 24 heures sur 24 » sont apparus sur diverses plateformes au pays et à l'étranger.
Mais lorsque vous cliquez dessus, vous constaterez que ces blogueurs IA sont bien moins populaires que les véritables présentateurs ou les présentateurs virtuels joués par de vraies personnes.
△ Ancre virtuelle IA 24 heures sur 24, seulement 167 personnes l'ont "vu" en une demi-journée
L'effet de diffusion en direct est également un peu loin de la "diffusion en direct 24 heures" à laquelle on s'attend :
Quand en interaction, la plupart des présentateurs d'IA Ce qu'ils peuvent faire est très limité, et certains ne peuvent simplement chanter que quelques chansons (liste de lecture limitée) ou répondre selon les instructions définies
Lorsqu'ils parlent, la voix d'ancrage virtuelle synthétisée par l'IA est ; non seulement Le ton n'est pas aussi vif que celui d'un présentateur en direct, et il ne peut pas créer activement des « surprises » émotionnelles.
Ce que cela reflète est le problème de la plupart des ancres d'IA virtuelle -
Bien qu'il y ait eu des percées continues dans la technologie de génération d'images ces dernières années, le seuil technique de l'IA en langage vocal est toujours élevé.
Prenons l'exemple de la salle de diffusion en direct de Dong Yuhui. Bien qu'il ne soit pas difficile de synthétiser une image de « AI Dong Yuhui » tant que le professeur Dong le souhaite
Cependant, il est nécessaire de créer la « version AI » de ; Le ton et le timbre du professeur Dong ressemblent davantage à la personne réelle et le reconnaissent. Il est toujours difficile d'effectuer des opérations telles que les voix des autres enseignants dans la salle de diffusion en direct et même de comprendre les « instructions » des assistants en dehors de la salle de diffusion en direct.
À cela correspondent les capacités complètes de diverses IA de langage vocal telles que la synthèse vocale, la reconnaissance vocale et la reconnaissance vocale.
Pour aller plus loin, si vous souhaitez internationaliser cette salle de diffusion en direct, vous mettrez également en avant des exigences plus élevées en matière de capacités vocales.
Par exemple, au moins des sous-titres IA capables de traduire en ligne en temps réel sont nécessaires :
Sur cette base, si vous souhaitez construire une salle de diffusion en direct sans obstacle, vous devez maîtriser davantage la capacité de diffusion simultanée interprétation.
La bonne nouvelle est que désormais, de plus en plus de grands fabricants de technologies ont remarqué cette piste et ont augmenté leurs investissements au cours des dernières années.
Du point de vue de la recherche théorique, de nombreux articles ont été publiés en direction de l'IA en langage vocal.
De grandes entreprises telles qu'Amazon et Google ont publié des centaines, voire des milliers d'articles sur l'IA conversationnelle, la PNL et le traitement du langage, dont beaucoup sont des articles de conférence de premier plan ; Meta a remporté le prix rien qu'en 2018. Les meilleurs articles des deux meilleurs PNL conférences, EMNLP et ACL...
(Bien sûr, il y a aussi ceux qui publient moins d'articles, par exemple, Apple préfère déposer des brevets)
Des entreprises nationales telles que BAT, Huawei, JD.com, etc. ont également établi leur propre acoustique ou Laboratoires de PNL ces dernières années, tels que NAACL et AAAI. Il a remporté divers prix d'articles lors de nombreuses conférences de premier plan telles que et ACL.
△ACL 2022 Partial Outstanding Paper Award
Prenons l'exemple de l'IWSLT (International Spoken Machine Translation Competition), qui est l'un des concours de traduction automatique parlée les plus influents au monde.
Dans le concours de cette année, Huawei s'est classé TOP 1 dans quatre directions linguistiques dans trois tâches : traduction parole-parole, traduction vocale hors ligne et traduction orale de longueur égale.
Mais en dehors de la recherche, les grands fabricants ont des idées différentes sur la mise en œuvre de la technologie d'IA en langage vocal.
En plus d'optimiser leurs propres produits (assistants vocaux, moteurs de recherche, etc.) sur la base des dernières recherches, certains fabricants choisissent d'ouvrir directement leurs modèles en open source ou d'en faire des frameworks d'IA que les développeurs peuvent appeler.
De telles capacités d’IA sont « trop ésotériques » pour de nombreux développeurs qui n’ont jamais été exposés à l’IA, et même comment et où elle devrait être utilisée sont insaisissables.
Dans une certaine mesure, cela a également eu pour conséquence que de nombreux développeurs n'ont pas accès aux dernières technologies d'IA vocale et linguistique.
En particulier, l'IA d'interprétation simultanée, qui a été très populaire ces dernières années, a certaines exigences en matière de performances en temps réel et de performances des modèles. De plus en plus d'articles et d'ateliers correspondants apparaissent lors des grandes conférences.
Pour des secteurs tels que la diffusion en direct, s'ils souhaitent élargir leur audience et leur champ d'influence, l'IA d'interprétation simultanée est également une technologie indispensable.
Alors, existe-t-il un moyen de le mettre en œuvre à un seuil inférieur ?
De nombreux fabricants ont maintenant commencé à essayer une nouvelle méthode -
Prenons l'exemple de Huawei. Pour les développeurs mobiles, il a créé un ensemble de services d'apprentissage automatique spécialisés basés sur la boîte à outils Huawei Mobile Core Services (HMS Core) (ML Kit). .
Sur cette base, les développeurs peuvent utiliser ces technologies de langage vocal dans les applications mobiles ou les applications qu'ils développent sans maîtriser les détails techniques de l'IA.
Par exemple, les sous-titres IA (traduction de texte en ligne) et l'interprétation simultanée que nous venons de voir sont facilement réalisés grâce aux capacités d'IA en langage vocal de la boîte à outils de Huawei.
Cela dit, voyons comment démarrer et l'utiliser. Jetons un coup d'œil à ce que nos prédécesseurs ont fait.
Par exemple, sur le forum des développeurs Huawei, quelqu'un a développé une application d'achat de recherche vocale pour grand-mère basée sur la reconnaissance vocale en temps réel, la transcription vocale en temps réel et d'autres fonctions de ML Kit.
Les étapes pour mettre en œuvre la fonction vocale ne sont pas compliquées.
Tout d'abord, vous devez effectuer quelques préparatifs de développement, notamment : terminer l'enregistrement de votre nom réel sur le site Web de Huawei Developer Alliance, configurer AppGallery Connect et configurer l'adresse d'entrepôt Maven du SDK HMS Core dans le projet.
Ensuite, intégrez le SDK de service concerné. En prenant comme exemple le service de reconnaissance vocale en temps réel, le code est le suivant :
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>
Ensuite, vous pouvez entrer dans l'étape d'accès au service vocal.
Prenons comme exemple le service de reconnaissance vocale en temps réel. Après avoir défini les informations d'authentification de l'application, la première étape consiste à se référer à la liste des langues prises en charge LANGUAGE pour créer une intention de définition des paramètres de reconnaissance vocale en temps réel.
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>
La deuxième étape consiste à créer une activité, à transmettre l'intention précédemment créée pour la capture vocale et à renvoyer le résultat à l'activité d'origine, qui peut reconnaître la parole dans les 60 s (y compris les 60 s) en temps réel.
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>
Enfin, remplacez la méthode "onActivityResult" pour traiter les résultats renvoyés par le service de reconnaissance vocale (voir le lien de référence pour le code détaillé).
Pour les détails de développement de chaque étape, un guide de développement détaillé est disponible sur le site officiel de HMS Core, qui est très convivial pour les novices.
De plus, le service d'apprentissage automatique de HMS Core est non seulement applicable aux téléphones mobiles Huawei, mais également aux appareils Android et iOS. Les exigences de version spécifiques sont les suivantes.
Et si ? En accédant simplement au SDK, vous pouvez obtenir des capacités d'algorithme d'IA au niveau utilisé par les grands fabricants sans ajustement de paramètres ni formation compliqués. Voyez-vous déjà grand ?
(Et il ne s'agit pas seulement de la technologie du langage vocal, ML Kit fournit également diverses fonctions d'algorithme d'IA telles que du texte et des images. Pour des détails spécifiques, vous pouvez cliquer sur "Lire le texte original" à la fin de l'article et vous référer au site officiel de ML Kit. site web).
Cependant, pour les présentateurs principaux, quel que soit leur dévouement à leur travail, il y aura toujours un moment pour quitter les ondes.
En fait, cette approche consistant à fournir des capacités techniques accumulées à long terme aux développeurs d'applications mobiles via des outils faciles à utiliser n'est pas propre à Huawei.
Qu'il s'agisse du GMS Core de Google ou des différents kits pour développeurs d'Apple, l'objectif principal est d'abaisser continuellement le seuil de mise en œuvre de technologies de pointe, afin qu'un plus grand nombre de développeurs puissent consacrer plus d'énergie et d'efforts aux problèmes techniques. en créativité.
En conséquence, les utilisateurs de téléphones mobiles sont naturellement heureux d'apprendre que les dernières technologies peuvent être expérimentées directement sur leur téléphone mobile sous diverses formes amusantes et créatives.
Pour les fabricants, la prospérité des applications constitue le nœud le plus important du cycle écologique, attirant plus d'utilisateurs en externe et rassemblant plus de développeurs remarquables en interne.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!