import{s as Xt,n as Pt,o as Yt}from"../chunks/scheduler.f7e1785c.js";import{S as Qt,i as At,g as p,s as n,r as u,A as Dt,h as i,f as l,c as a,j as Et,u as o,x as m,k as Lt,y as Ot,a as s,v as r,d as y,t as f,w as M}from"../chunks/index.9f8f0838.js";import{C as c}from"../chunks/CodeBlock.b3510e34.js";import{H as Kt,E as te}from"../chunks/EditOnGithub.5a9bb8c5.js";function ee(vt){let U,Y,X,Q,$,A,T,xt=`Автоматическое распознавание речи (ASR от “Automatic Speech Recognition”) - это задача транскрибации (преобразование аудиозаписи речи в текст).
Эта задача имеет множество практических применений - от создания субтитров для видео до обеспечения голосовых команд для таких виртуальных
помощников, как Siri и Alexa.`,D,d,jt=`В этом разделе мы используем конвейер <code>automatic-speech-recognition</code> для транскрибации аудиозаписи человека, задающего вопрос об
оплате счета, используя тот же набор данных MINDS-14, что и ранее.`,O,J,It=`Для начала загрузите набор данных и повысьте его частоту до 16 кГц, как описано в <a href="audio_classification_pipeline">Классификация аудио с помощью конвейера</a>,
если вы еще не сделали этого.`,K,w,Gt="Для транскрибации аудиозаписи мы можем использовать конвейер <code>automatic-speech-recognition</code> из 🤗 Transformers. Давайте инстанцируем конвейер:",tt,C,et,h,Zt="Далее мы возьмем пример из набора данных и передадим его исходные данные в конвейер:",lt,b,st,g,kt="<strong>Output:</strong>",nt,v,at,x,St="Сравним этот вывод с реальной транскрипцией для данного примера:",pt,j,it,I,Wt="<strong>Output:</strong>",mt,G,ut,Z,Rt=`Похоже, что модель неплохо справилась с транскрибацией аудиозаписи! По сравнению с оригинальной транскрипцией она ошиблась только в одном слове
(“card”), что довольно хорошо, учитывая австралийский акцент диктора, в котором буква “r” часто не произносится. Тем не менее, я бы не рекомендовал
пытаться оплатить свой следующий счет за электричество рыбой (cod в переводе с английского - “треска”)!`,ot,k,_t=`По умолчанию в этом конвейере используется модель, обученная автоматическому распознаванию речи для английского языка, что вполне подходит для
данного примера. Если вы хотите попробовать транскрибировать другие подмножества MINDS-14 на другом языке, вы можете найти предварительно
обученную ASR-модель <a href="https://huggingface.co/models?pipeline_tag=automatic-speech-recognition&amp;language=fr&amp;sort=downloads" rel="nofollow">на 🤗 Hugging Face Hub</a>.
Список моделей можно отфильтровать сначала по задаче, затем по языку. Найдя нужную модель, передайте ее имя в качестве аргумента <code>model</code> в конвейер.`,rt,S,qt="Попробуем это сделать для немецкого сплита MINDS-14. Загрузим подмножество “de-DE”:",yt,W,ft,R,Bt="Возьмите пример и посмотрите, какой должна быть транскрибация:",Mt,_,ct,q,Ht="<strong>Output:</strong>",Ut,B,$t,H,Vt="Найдите на 🤗 Hugging Face Hub предварительно обученную ASR-модель для немецкого языка, инстанцируйте конвейер и транскрибируйте пример:",Tt,V,dt,F,Ft="<strong>Output:</strong>",Jt,z,wt,N,zt=`При работе над решением собственной задачи начать с простого конвейера, подобного тем, что мы показали в этом блоке,
это ценный инструмент, дающий ряд преимуществ:`,Ct,E,Nt=`<li>может существовать предварительно обученная модель, которая уже очень хорошо решает вашу задачу, экономя ваше время;</li> <li>pipeline() берет на себя всю предварительную и последующую обработку, так что вам не нужно беспокоиться о том, чтобы
привести данные в нужный формат для модели;</li> <li>если результат не идеален, это все равно дает возможность быстро получить baseline для последующего дообучения модели;</li> <li>после того как вы дообучите модель на своих пользовательских данных и разместите ее на Hugging Face Hub, все сообщество сможет
быстро и легко использовать ее с помощью метода <code>pipeline()</code>, делая ИИ более доступным.</li>`,ht,L,bt,P,gt;return $=new Kt({props:{title:"Автоматическое распознавание речи с помощью конвейера",local:"автоматическое-распознавание-речи-с-помощью-конвейера",headingTag:"h1"}}),C=new c({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}}),b=new c({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}}),v=new c({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}}),j=new c({props:{code:"ZXhhbXBsZSU1QiUyMmVuZ2xpc2hfdHJhbnNjcmlwdGlvbiUyMiU1RA==",highlighted:'example[<span class="hljs-string">&quot;english_transcription&quot;</span>]',wrap:!1}}),G=new c({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 c({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}}),_=new c({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 c({props:{code:"JTIyaWNoJTIwbSVDMyVCNmNodGUlMjBnZXJuZSUyMEdlbGQlMjBhdWYlMjBtZWluJTIwS29udG8lMjBlaW56YWhsZW4lMjI=",highlighted:'<span class="hljs-comment">&quot;ich möchte gerne Geld auf mein Konto einzahlen&quot;</span>',wrap:!1}}),V=new c({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}}),z=new c({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}}),L=new te({props:{source:"https://github.com/huggingface/audio-transformers-course/blob/main/chapters/ru/chapter2/asr_pipeline.mdx"}}),{c(){U=p("meta"),Y=n(),X=p("p"),Q=n(),u($.$$.fragment),A=n(),T=p("p"),T.textContent=xt,D=n(),d=p("p"),d.innerHTML=jt,O=n(),J=p("p"),J.innerHTML=It,K=n(),w=p("p"),w.innerHTML=Gt,tt=n(),u(C.$$.fragment),et=n(),h=p("p"),h.textContent=Zt,lt=n(),u(b.$$.fragment),st=n(),g=p("p"),g.innerHTML=kt,nt=n(),u(v.$$.fragment),at=n(),x=p("p"),x.textContent=St,pt=n(),u(j.$$.fragment),it=n(),I=p("p"),I.innerHTML=Wt,mt=n(),u(G.$$.fragment),ut=n(),Z=p("p"),Z.textContent=Rt,ot=n(),k=p("p"),k.innerHTML=_t,rt=n(),S=p("p"),S.textContent=qt,yt=n(),u(W.$$.fragment),ft=n(),R=p("p"),R.textContent=Bt,Mt=n(),u(_.$$.fragment),ct=n(),q=p("p"),q.innerHTML=Ht,Ut=n(),u(B.$$.fragment),$t=n(),H=p("p"),H.textContent=Vt,Tt=n(),u(V.$$.fragment),dt=n(),F=p("p"),F.innerHTML=Ft,Jt=n(),u(z.$$.fragment),wt=n(),N=p("p"),N.textContent=zt,Ct=n(),E=p("ul"),E.innerHTML=Nt,ht=n(),u(L.$$.fragment),bt=n(),P=p("p"),this.h()},l(t){const e=Dt("svelte-u9bgzb",document.head);U=i(e,"META",{name:!0,content:!0}),e.forEach(l),Y=a(t),X=i(t,"P",{}),Et(X).forEach(l),Q=a(t),o($.$$.fragment,t),A=a(t),T=i(t,"P",{"data-svelte-h":!0}),m(T)!=="svelte-nradlu"&&(T.textContent=xt),D=a(t),d=i(t,"P",{"data-svelte-h":!0}),m(d)!=="svelte-1v8whod"&&(d.innerHTML=jt),O=a(t),J=i(t,"P",{"data-svelte-h":!0}),m(J)!=="svelte-36mgle"&&(J.innerHTML=It),K=a(t),w=i(t,"P",{"data-svelte-h":!0}),m(w)!=="svelte-s58lzl"&&(w.innerHTML=Gt),tt=a(t),o(C.$$.fragment,t),et=a(t),h=i(t,"P",{"data-svelte-h":!0}),m(h)!=="svelte-122nckp"&&(h.textContent=Zt),lt=a(t),o(b.$$.fragment,t),st=a(t),g=i(t,"P",{"data-svelte-h":!0}),m(g)!=="svelte-1mvdyro"&&(g.innerHTML=kt),nt=a(t),o(v.$$.fragment,t),at=a(t),x=i(t,"P",{"data-svelte-h":!0}),m(x)!=="svelte-pqwcxl"&&(x.textContent=St),pt=a(t),o(j.$$.fragment,t),it=a(t),I=i(t,"P",{"data-svelte-h":!0}),m(I)!=="svelte-1mvdyro"&&(I.innerHTML=Wt),mt=a(t),o(G.$$.fragment,t),ut=a(t),Z=i(t,"P",{"data-svelte-h":!0}),m(Z)!=="svelte-eik6fl"&&(Z.textContent=Rt),ot=a(t),k=i(t,"P",{"data-svelte-h":!0}),m(k)!=="svelte-1bwctzk"&&(k.innerHTML=_t),rt=a(t),S=i(t,"P",{"data-svelte-h":!0}),m(S)!=="svelte-11z4p05"&&(S.textContent=qt),yt=a(t),o(W.$$.fragment,t),ft=a(t),R=i(t,"P",{"data-svelte-h":!0}),m(R)!=="svelte-m3navu"&&(R.textContent=Bt),Mt=a(t),o(_.$$.fragment,t),ct=a(t),q=i(t,"P",{"data-svelte-h":!0}),m(q)!=="svelte-1mvdyro"&&(q.innerHTML=Ht),Ut=a(t),o(B.$$.fragment,t),$t=a(t),H=i(t,"P",{"data-svelte-h":!0}),m(H)!=="svelte-h2cwem"&&(H.textContent=Vt),Tt=a(t),o(V.$$.fragment,t),dt=a(t),F=i(t,"P",{"data-svelte-h":!0}),m(F)!=="svelte-1mvdyro"&&(F.innerHTML=Ft),Jt=a(t),o(z.$$.fragment,t),wt=a(t),N=i(t,"P",{"data-svelte-h":!0}),m(N)!=="svelte-nku6m1"&&(N.textContent=zt),Ct=a(t),E=i(t,"UL",{"data-svelte-h":!0}),m(E)!=="svelte-7ebnsp"&&(E.innerHTML=Nt),ht=a(t),o(L.$$.fragment,t),bt=a(t),P=i(t,"P",{}),Et(P).forEach(l),this.h()},h(){Lt(U,"name","hf:doc:metadata"),Lt(U,"content",le)},m(t,e){Ot(document.head,U),s(t,Y,e),s(t,X,e),s(t,Q,e),r($,t,e),s(t,A,e),s(t,T,e),s(t,D,e),s(t,d,e),s(t,O,e),s(t,J,e),s(t,K,e),s(t,w,e),s(t,tt,e),r(C,t,e),s(t,et,e),s(t,h,e),s(t,lt,e),r(b,t,e),s(t,st,e),s(t,g,e),s(t,nt,e),r(v,t,e),s(t,at,e),s(t,x,e),s(t,pt,e),r(j,t,e),s(t,it,e),s(t,I,e),s(t,mt,e),r(G,t,e),s(t,ut,e),s(t,Z,e),s(t,ot,e),s(t,k,e),s(t,rt,e),s(t,S,e),s(t,yt,e),r(W,t,e),s(t,ft,e),s(t,R,e),s(t,Mt,e),r(_,t,e),s(t,ct,e),s(t,q,e),s(t,Ut,e),r(B,t,e),s(t,$t,e),s(t,H,e),s(t,Tt,e),r(V,t,e),s(t,dt,e),s(t,F,e),s(t,Jt,e),r(z,t,e),s(t,wt,e),s(t,N,e),s(t,Ct,e),s(t,E,e),s(t,ht,e),r(L,t,e),s(t,bt,e),s(t,P,e),gt=!0},p:Pt,i(t){gt||(y($.$$.fragment,t),y(C.$$.fragment,t),y(b.$$.fragment,t),y(v.$$.fragment,t),y(j.$$.fragment,t),y(G.$$.fragment,t),y(W.$$.fragment,t),y(_.$$.fragment,t),y(B.$$.fragment,t),y(V.$$.fragment,t),y(z.$$.fragment,t),y(L.$$.fragment,t),gt=!0)},o(t){f($.$$.fragment,t),f(C.$$.fragment,t),f(b.$$.fragment,t),f(v.$$.fragment,t),f(j.$$.fragment,t),f(G.$$.fragment,t),f(W.$$.fragment,t),f(_.$$.fragment,t),f(B.$$.fragment,t),f(V.$$.fragment,t),f(z.$$.fragment,t),f(L.$$.fragment,t),gt=!1},d(t){t&&(l(Y),l(X),l(Q),l(A),l(T),l(D),l(d),l(O),l(J),l(K),l(w),l(tt),l(et),l(h),l(lt),l(st),l(g),l(nt),l(at),l(x),l(pt),l(it),l(I),l(mt),l(ut),l(Z),l(ot),l(k),l(rt),l(S),l(yt),l(ft),l(R),l(Mt),l(ct),l(q),l(Ut),l($t),l(H),l(Tt),l(dt),l(F),l(Jt),l(wt),l(N),l(Ct),l(E),l(ht),l(bt),l(P)),l(U),M($,t),M(C,t),M(b,t),M(v,t),M(j,t),M(G,t),M(W,t),M(_,t),M(B,t),M(V,t),M(z,t),M(L,t)}}}const le='{"title":"Автоматическое распознавание речи с помощью конвейера","local":"автоматическое-распознавание-речи-с-помощью-конвейера","sections":[],"depth":1}';function se(vt){return Yt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class me extends Qt{constructor(U){super(),At(this,U,se,ee,Xt,{})}}export{me as component};
