import{s as Ye,n as Ae,o as Qe}from"../chunks/scheduler.a045fce0.js";import{S as De,i as Oe,e as i,s as l,c as r,h as Ke,a as o,d as a,b as s,f as Pe,g as m,j as p,k as Xe,l as et,m as n,n as u,t as c,o as d,p as y}from"../chunks/index.bc14ef44.js";import{C as tt,H as at,E as nt}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.8a687c99.js";import{C as f}from"../chunks/CodeBlock.793b82d0.js";function lt(je){let M,A,X,Q,$,D,U,O,b,qe=`El reconocimiento automático de la voz(ASR) es una tarea que consiste en transcribir una grabación de audio en texto.
Esta tarea tiene numerosas aplicaciones prácticas, desde crear subtitulos para videos hasta permitir comandos de voz en
asistentes virtuales como Siri o Alexa.`,K,T,Ie=`En esta sección, usaremos la pipeline  <code>automatic-speech-recognition</code> para transcribir la grabación del audio de una
persona haciendo una pregunta sobre el pago de una cuenta usando el mismo conjunto de datos MINDS-14 que utilizamos antes.`,ee,h,Ge=`Para empezar, carguemos el conjunto de datos y hagamos un proceso de resampling a 16kHz como se describe en
<a href="introduction.mdx">Audio classification with a pipeline</a>, si no lo has hecho antes.`,te,C,Se=`Para transcribir una grabación de audio, podemos usar la pipeline <code>automatic-speech-recognition</code> de 🤗 Transformers.
Instaciemos primero la pipeline:`,ae,v,ne,J,Ze="A continuación, tomamos un ejemplo del conjunto de datos y pasamos los datos en bruto de audio por la pipeline.",le,w,se,g,ze="<strong>Output:</strong>",ie,x,oe,j,We="Comparemos la salida generada por la pipeline con la transcripción que tiene este ejemplo:",pe,q,re,I,ke="<strong>Output:</strong>",me,G,ue,S,Re=`Parece que el modelo ha hecho un muy buen trabajo ¡transcribiendo el audio! Solo una palabra tiene una transcripción mala(“card”)
al compararse con la transcripción original, lo que esta muy bien considerando que el hablante tiene un acento australiano, donde la letra “r”
es mucha veces muda. Habiendo aclarado esto, no recomendaria intentar pagar tu próxima cuenta de electricidad con una pescado(Traducción de cad)`,ce,Z,_e=`Por defecto, esta pipeline usa un modelo entrenado para reconocimientode voz en el idioma ingles, lo que se adapta a este ejemplo.
Si quisieras intentar transcribir otro subconjunto de MINDS-14 de un lenguaje diferente, puedes encontrar un modelo de ASR
pre-entrenado en el <a href="https://huggingface.co/models?pipeline_tag=automatic-speech-recognition&amp;language=fr&amp;sort=downloads" rel="nofollow">🤗 Hub</a>.
Puedes filtrar los modelos por tipo de tarea y luego por lenguaje. Una vez que hayas encontrado el modelo, puedes pasar el nombre
como el argumento <code>model</code> a la pipeline`,de,z,Be="Intentemoslo para la partición de Aleman de MINDS-14. Carga el subconjunto “de-DE”:",ye,W,fe,k,He="Mira un ejemplo para verificar que la transcripción es lo que esperamos:",Me,R,$e,_,Ve="<strong>Output:</strong>",Ue,B,be,H,Ee="Encuentra un modelo pre-entrenado de ASR para el idioma aleman en el 🤗 Hub, instancia la pipeline, y transcribe el ejemplo:",Te,V,he,E,Fe="<strong>Output:</strong>",Ce,F,ve,L,Le=`Also, stimmt’s!
Cuando trabajes en resolver tu propria tarea, empezar con una pipeline simple como las que acabamos de mostrar en esta unidad
es una herramienta valiosa que ofrece los siguientes beneficios:`,Je,N,Ne=`<li>un modelo pre entrenado puede existir que ya resuelva tu tarea de una forma satisfactoria, lo que te ahorrará tiempo.</li> <li>pipeline() se encarga de todos los pasos de pre y post procesamiento, así no tienes que preocuparte en convertir los
datos en el formato adecuado que necesita el modelo.</li> <li>Si el resultado no es el ideal, te da un modelo de base en el que posteriormente puedes re-entrenar.</li> <li>Una vez que re-entrenes tu modelo con tus datos personalizados y lo compartas en el Hub, la comunidad podrá usarlo de forma
rápida y fácil usando <code>pipeline()</code>, lo que hace el campo de la IA mucho más accesible.</li>`,we,P,ge,Y,xe;return $=new tt({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),U=new at({props:{title:"Reconocimiento automático de la voz con pipeline",local:"reconocimiento-automático-de-la-voz-con-pipeline",headingTag:"h1"}}),v=new f({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMHBpcGVsaW5lJTBBJTBBYXNyJTIwJTNEJTIwcGlwZWxpbmUoJTIyYXV0b21hdGljLXNwZWVjaC1yZWNvZ25pdGlvbiUyMik=",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> pipeline

asr = pipeline(<span class="hljs-string">&quot;automatic-speech-recognition&quot;</span>)`,wrap:!1}}),w=new f({props:{code:"ZXhhbXBsZSUyMCUzRCUyMG1pbmRzJTVCMCU1RCUwQWFzcihleGFtcGxlJTVCJTIyYXVkaW8lMjIlNUQlNUIlMjJhcnJheSUyMiU1RCk=",highlighted:`example = minds[<span class="hljs-number">0</span>]
asr(example[<span class="hljs-string">&quot;audio&quot;</span>][<span class="hljs-string">&quot;array&quot;</span>])`,wrap:!1}}),x=new f({props:{code:"JTdCJTIydGV4dCUyMiUzQSUyMCUyMkklMjBXT1VMRCUyMExJS0UlMjBUTyUyMFBBWSUyME1ZJTIwRUxFQ1RSSUNJVFklMjBCSUxMJTIwVVNJTkclMjBNWSUyMENPRCUyMENBTiUyMFlPVSUyMFBMRUFTRSUyMEFTU0lTVCUyMiU3RA==",highlighted:'<span class="hljs-comment">{&quot;text&quot;: &quot;I WOULD LIKE TO PAY MY ELECTRICITY BILL USING MY COD CAN YOU PLEASE ASSIST&quot;}</span>',wrap:!1}}),q=new f({props:{code:"ZXhhbXBsZSU1QiUyMmVuZ2xpc2hfdHJhbnNjcmlwdGlvbiUyMiU1RA==",highlighted:'example[<span class="hljs-string">&quot;english_transcription&quot;</span>]',wrap:!1}}),G=new f({props:{code:"JTIySSUyMHdvdWxkJTIwbGlrZSUyMHRvJTIwcGF5JTIwbXklMjBlbGVjdHJpY2l0eSUyMGJpbGwlMjB1c2luZyUyMG15JTIwY2FyZCUyMGNhbiUyMHlvdSUyMHBsZWFzZSUyMGFzc2lzdCUyMg==",highlighted:'<span class="hljs-comment">&quot;I would like to pay my electricity bill using my card can you please assist&quot;</span>',wrap:!1}}),W=new f({props:{code:"ZnJvbSUyMGRhdGFzZXRzJTIwaW1wb3J0JTIwbG9hZF9kYXRhc2V0JTBBZnJvbSUyMGRhdGFzZXRzJTIwaW1wb3J0JTIwQXVkaW8lMEElMEFtaW5kcyUyMCUzRCUyMGxvYWRfZGF0YXNldCglMjJQb2x5QUklMkZtaW5kczE0JTIyJTJDJTIwbmFtZSUzRCUyMmRlLURFJTIyJTJDJTIwc3BsaXQlM0QlMjJ0cmFpbiUyMiklMEFtaW5kcyUyMCUzRCUyMG1pbmRzLmNhc3RfY29sdW1uKCUyMmF1ZGlvJTIyJTJDJTIwQXVkaW8oc2FtcGxpbmdfcmF0ZSUzRDE2XzAwMCkp",highlighted:`<span class="hljs-keyword">from</span> datasets <span class="hljs-keyword">import</span> load_dataset
<span class="hljs-keyword">from</span> datasets <span class="hljs-keyword">import</span> Audio

minds = load_dataset(<span class="hljs-string">&quot;PolyAI/minds14&quot;</span>, name=<span class="hljs-string">&quot;de-DE&quot;</span>, split=<span class="hljs-string">&quot;train&quot;</span>)
minds = minds.cast_column(<span class="hljs-string">&quot;audio&quot;</span>, Audio(sampling_rate=<span class="hljs-number">16_000</span>))`,wrap:!1}}),R=new f({props:{code:"ZXhhbXBsZSUyMCUzRCUyMG1pbmRzJTVCMCU1RCUwQWV4YW1wbGUlNUIlMjJ0cmFuc2NyaXB0aW9uJTIyJTVE",highlighted:`example = minds[<span class="hljs-number">0</span>]
example[<span class="hljs-string">&quot;transcription&quot;</span>]`,wrap:!1}}),B=new f({props:{code:"JTIyaWNoJTIwbSVDMyVCNmNodGUlMjBnZXJuZSUyMEdlbGQlMjBhdWYlMjBtZWluJTIwS29udG8lMjBlaW56YWhsZW4lMjI=",highlighted:'<span class="hljs-comment">&quot;ich möchte gerne Geld auf mein Konto einzahlen&quot;</span>',wrap:!1}}),V=new f({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMHBpcGVsaW5lJTBBJTBBYXNyJTIwJTNEJTIwcGlwZWxpbmUoJTIyYXV0b21hdGljLXNwZWVjaC1yZWNvZ25pdGlvbiUyMiUyQyUyMG1vZGVsJTNEJTIybWF4aWRsJTJGd2F2MnZlYzItbGFyZ2UteGxzci1nZXJtYW4lMjIpJTBBYXNyKGV4YW1wbGUlNUIlMjJhdWRpbyUyMiU1RCU1QiUyMmFycmF5JTIyJTVEKQ==",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> pipeline

asr = pipeline(<span class="hljs-string">&quot;automatic-speech-recognition&quot;</span>, model=<span class="hljs-string">&quot;maxidl/wav2vec2-large-xlsr-german&quot;</span>)
asr(example[<span class="hljs-string">&quot;audio&quot;</span>][<span class="hljs-string">&quot;array&quot;</span>])`,wrap:!1}}),F=new f({props:{code:"JTdCJTIydGV4dCUyMiUzQSUyMCUyMmljaCUyMG0lQzMlQjZjaHRlJTIwZ2VybmUlMjBnZWxkJTIwYXVmJTIwbWVpbiUyMGtvbnRvJTIwZWluemFsbGVuJTIyJTdE",highlighted:'{<span class="hljs-comment">&quot;text&quot;</span>: <span class="hljs-comment">&quot;ich möchte gerne geld auf mein konto einzallen&quot;</span>}',wrap:!1}}),P=new nt({props:{source:"https://github.com/huggingface/audio-transformers-course/blob/main/chapters/es/chapter2/asr_pipeline.mdx"}}),{c(){M=i("meta"),A=l(),X=i("p"),Q=l(),r($.$$.fragment),D=l(),r(U.$$.fragment),O=l(),b=i("p"),b.textContent=qe,K=l(),T=i("p"),T.innerHTML=Ie,ee=l(),h=i("p"),h.innerHTML=Ge,te=l(),C=i("p"),C.innerHTML=Se,ae=l(),r(v.$$.fragment),ne=l(),J=i("p"),J.textContent=Ze,le=l(),r(w.$$.fragment),se=l(),g=i("p"),g.innerHTML=ze,ie=l(),r(x.$$.fragment),oe=l(),j=i("p"),j.textContent=We,pe=l(),r(q.$$.fragment),re=l(),I=i("p"),I.innerHTML=ke,me=l(),r(G.$$.fragment),ue=l(),S=i("p"),S.textContent=Re,ce=l(),Z=i("p"),Z.innerHTML=_e,de=l(),z=i("p"),z.textContent=Be,ye=l(),r(W.$$.fragment),fe=l(),k=i("p"),k.textContent=He,Me=l(),r(R.$$.fragment),$e=l(),_=i("p"),_.innerHTML=Ve,Ue=l(),r(B.$$.fragment),be=l(),H=i("p"),H.textContent=Ee,Te=l(),r(V.$$.fragment),he=l(),E=i("p"),E.innerHTML=Fe,Ce=l(),r(F.$$.fragment),ve=l(),L=i("p"),L.textContent=Le,Je=l(),N=i("ul"),N.innerHTML=Ne,we=l(),r(P.$$.fragment),ge=l(),Y=i("p"),this.h()},l(e){const t=Ke("svelte-u9bgzb",document.head);M=o(t,"META",{name:!0,content:!0}),t.forEach(a),A=s(e),X=o(e,"P",{}),Pe(X).forEach(a),Q=s(e),m($.$$.fragment,e),D=s(e),m(U.$$.fragment,e),O=s(e),b=o(e,"P",{"data-svelte-h":!0}),p(b)!=="svelte-2iyx09"&&(b.textContent=qe),K=s(e),T=o(e,"P",{"data-svelte-h":!0}),p(T)!=="svelte-xi1tgm"&&(T.innerHTML=Ie),ee=s(e),h=o(e,"P",{"data-svelte-h":!0}),p(h)!=="svelte-146fllr"&&(h.innerHTML=Ge),te=s(e),C=o(e,"P",{"data-svelte-h":!0}),p(C)!=="svelte-x8xxv2"&&(C.innerHTML=Se),ae=s(e),m(v.$$.fragment,e),ne=s(e),J=o(e,"P",{"data-svelte-h":!0}),p(J)!=="svelte-ah27vj"&&(J.textContent=Ze),le=s(e),m(w.$$.fragment,e),se=s(e),g=o(e,"P",{"data-svelte-h":!0}),p(g)!=="svelte-1mvdyro"&&(g.innerHTML=ze),ie=s(e),m(x.$$.fragment,e),oe=s(e),j=o(e,"P",{"data-svelte-h":!0}),p(j)!=="svelte-u9olmr"&&(j.textContent=We),pe=s(e),m(q.$$.fragment,e),re=s(e),I=o(e,"P",{"data-svelte-h":!0}),p(I)!=="svelte-1mvdyro"&&(I.innerHTML=ke),me=s(e),m(G.$$.fragment,e),ue=s(e),S=o(e,"P",{"data-svelte-h":!0}),p(S)!=="svelte-10maz6g"&&(S.textContent=Re),ce=s(e),Z=o(e,"P",{"data-svelte-h":!0}),p(Z)!=="svelte-1va1klt"&&(Z.innerHTML=_e),de=s(e),z=o(e,"P",{"data-svelte-h":!0}),p(z)!=="svelte-1hiehlh"&&(z.textContent=Be),ye=s(e),m(W.$$.fragment,e),fe=s(e),k=o(e,"P",{"data-svelte-h":!0}),p(k)!=="svelte-sryavr"&&(k.textContent=He),Me=s(e),m(R.$$.fragment,e),$e=s(e),_=o(e,"P",{"data-svelte-h":!0}),p(_)!=="svelte-1mvdyro"&&(_.innerHTML=Ve),Ue=s(e),m(B.$$.fragment,e),be=s(e),H=o(e,"P",{"data-svelte-h":!0}),p(H)!=="svelte-l6iqmf"&&(H.textContent=Ee),Te=s(e),m(V.$$.fragment,e),he=s(e),E=o(e,"P",{"data-svelte-h":!0}),p(E)!=="svelte-1mvdyro"&&(E.innerHTML=Fe),Ce=s(e),m(F.$$.fragment,e),ve=s(e),L=o(e,"P",{"data-svelte-h":!0}),p(L)!=="svelte-uw0qin"&&(L.textContent=Le),Je=s(e),N=o(e,"UL",{"data-svelte-h":!0}),p(N)!=="svelte-wspq0z"&&(N.innerHTML=Ne),we=s(e),m(P.$$.fragment,e),ge=s(e),Y=o(e,"P",{}),Pe(Y).forEach(a),this.h()},h(){Xe(M,"name","hf:doc:metadata"),Xe(M,"content",st)},m(e,t){et(document.head,M),n(e,A,t),n(e,X,t),n(e,Q,t),u($,e,t),n(e,D,t),u(U,e,t),n(e,O,t),n(e,b,t),n(e,K,t),n(e,T,t),n(e,ee,t),n(e,h,t),n(e,te,t),n(e,C,t),n(e,ae,t),u(v,e,t),n(e,ne,t),n(e,J,t),n(e,le,t),u(w,e,t),n(e,se,t),n(e,g,t),n(e,ie,t),u(x,e,t),n(e,oe,t),n(e,j,t),n(e,pe,t),u(q,e,t),n(e,re,t),n(e,I,t),n(e,me,t),u(G,e,t),n(e,ue,t),n(e,S,t),n(e,ce,t),n(e,Z,t),n(e,de,t),n(e,z,t),n(e,ye,t),u(W,e,t),n(e,fe,t),n(e,k,t),n(e,Me,t),u(R,e,t),n(e,$e,t),n(e,_,t),n(e,Ue,t),u(B,e,t),n(e,be,t),n(e,H,t),n(e,Te,t),u(V,e,t),n(e,he,t),n(e,E,t),n(e,Ce,t),u(F,e,t),n(e,ve,t),n(e,L,t),n(e,Je,t),n(e,N,t),n(e,we,t),u(P,e,t),n(e,ge,t),n(e,Y,t),xe=!0},p:Ae,i(e){xe||(c($.$$.fragment,e),c(U.$$.fragment,e),c(v.$$.fragment,e),c(w.$$.fragment,e),c(x.$$.fragment,e),c(q.$$.fragment,e),c(G.$$.fragment,e),c(W.$$.fragment,e),c(R.$$.fragment,e),c(B.$$.fragment,e),c(V.$$.fragment,e),c(F.$$.fragment,e),c(P.$$.fragment,e),xe=!0)},o(e){d($.$$.fragment,e),d(U.$$.fragment,e),d(v.$$.fragment,e),d(w.$$.fragment,e),d(x.$$.fragment,e),d(q.$$.fragment,e),d(G.$$.fragment,e),d(W.$$.fragment,e),d(R.$$.fragment,e),d(B.$$.fragment,e),d(V.$$.fragment,e),d(F.$$.fragment,e),d(P.$$.fragment,e),xe=!1},d(e){e&&(a(A),a(X),a(Q),a(D),a(O),a(b),a(K),a(T),a(ee),a(h),a(te),a(C),a(ae),a(ne),a(J),a(le),a(se),a(g),a(ie),a(oe),a(j),a(pe),a(re),a(I),a(me),a(ue),a(S),a(ce),a(Z),a(de),a(z),a(ye),a(fe),a(k),a(Me),a($e),a(_),a(Ue),a(be),a(H),a(Te),a(he),a(E),a(Ce),a(ve),a(L),a(Je),a(N),a(we),a(ge),a(Y)),a(M),y($,e),y(U,e),y(v,e),y(w,e),y(x,e),y(q,e),y(G,e),y(W,e),y(R,e),y(B,e),y(V,e),y(F,e),y(P,e)}}}const st='{"title":"Reconocimiento automático de la voz con pipeline","local":"reconocimiento-automático-de-la-voz-con-pipeline","sections":[],"depth":1}';function it(je){return Qe(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ut extends De{constructor(M){super(),Oe(this,M,it,lt,Ye,{})}}export{ut as component};
