import{s as Q,n as V,o as W}from"../chunks/scheduler.cc52f4b9.js";import{S as X,i as Z,e as o,s as l,c as w,h as ee,a as i,d as n,b as r,f as I,g as v,j as C,k as J,l as te,m as a,n as T,t as q,o as y,p as M}from"../chunks/index.85964560.js";import{C as ne,H as ae,E as le}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.4cab8d21.js";import{Y as re}from"../chunks/Youtube.2feacd03.js";import{C as se}from"../chunks/CourseFloatingBanner.d24cbe55.js";function oe(F){let s,L,x,P,m,E,f,H,u,S,p,k,c,G="โมเดล encoder-decoder (หรือเรียกอีกชื่อหนึ่งว่า <em>โมเดล sequence-to-sequence</em>) ใช้ทั้งสองส่วนในสถาปัตยกรรม Transformer ในแต่ละชั้น attention layer ของ encoder จะเข้าถึงคำทั้งหมดในประโยคเริ่มต้นได้ ในขณะที่ attention layer ของ decoder สามารถเข้าถึงได้เพียงคำที่อยู่ตำแหน่งก่อนหน้าคำที่กำหนดใน input เท่านั้น",z,$,K='โมเดล pretrain สามารถเทรนมาในลักษณะเดียวกับโมเดล encoder หรือโมเดล decoder ก็ได้ แต่โดยมากแล้วจะซับซ้อนมากกว่า ตัวอย่างเช่น <a href="https://huggingface.co/t5-base" rel="nofollow">T5</a> ถูกเทรนมาโดยการแทนที่กลุ่มคำ(ซึ่งอาจจะมีเพียงคำเดียวหรือหลายคำก็ได้)ด้วยคำพิเศษคำเดียว และเป้าหมายคือให้ทำนายข้อความที่คำพิเศษคำนี้แทนที่มา',A,h,N="โมเดล sequence-to-sequence เหมาะกับงานในการสร้างประโยคขึ้นมาใหม่จาก input ที่กำหนดให้ เช่น การสรุปความ, การแปลภาษา, หรือการสร้างคำตอบจากคำถาม",B,g,O="ตัวแทนโมเดลในกลุ่มนี้ได้แก่:",R,_,D='<li><a href="https://huggingface.co/transformers/model_doc/bart.html" rel="nofollow">BART</a></li> <li><a href="https://huggingface.co/transformers/model_doc/mbart.html" rel="nofollow">mBART</a></li> <li><a href="https://huggingface.co/transformers/model_doc/marian.html" rel="nofollow">Marian</a></li> <li><a href="https://huggingface.co/transformers/model_doc/t5.html" rel="nofollow">T5</a></li>',U,d,Y,b,j;return m=new ne({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),f=new ae({props:{title:"โมเดล sequence-to-sequence",local:"โมเดล-sequence-to-sequence",headingTag:"h1"}}),u=new se({props:{chapter:1,classNames:"absolute z-10 right-0 top-0"}}),p=new re({props:{id:"0_4KEb08xrE"}}),d=new le({props:{source:"https://github.com/huggingface/course/blob/main/chapters/th/chapter1/7.mdx"}}),{c(){s=o("meta"),L=l(),x=o("p"),P=l(),w(m.$$.fragment),E=l(),w(f.$$.fragment),H=l(),w(u.$$.fragment),S=l(),w(p.$$.fragment),k=l(),c=o("p"),c.innerHTML=G,z=l(),$=o("p"),$.innerHTML=K,A=l(),h=o("p"),h.textContent=N,B=l(),g=o("p"),g.textContent=O,R=l(),_=o("ul"),_.innerHTML=D,U=l(),w(d.$$.fragment),Y=l(),b=o("p"),this.h()},l(e){const t=ee("svelte-u9bgzb",document.head);s=i(t,"META",{name:!0,content:!0}),t.forEach(n),L=r(e),x=i(e,"P",{}),I(x).forEach(n),P=r(e),v(m.$$.fragment,e),E=r(e),v(f.$$.fragment,e),H=r(e),v(u.$$.fragment,e),S=r(e),v(p.$$.fragment,e),k=r(e),c=i(e,"P",{"data-svelte-h":!0}),C(c)!=="svelte-1hft4u4"&&(c.innerHTML=G),z=r(e),$=i(e,"P",{"data-svelte-h":!0}),C($)!=="svelte-1ubrxyl"&&($.innerHTML=K),A=r(e),h=i(e,"P",{"data-svelte-h":!0}),C(h)!=="svelte-18wkkr0"&&(h.textContent=N),B=r(e),g=i(e,"P",{"data-svelte-h":!0}),C(g)!=="svelte-10huopx"&&(g.textContent=O),R=r(e),_=i(e,"UL",{"data-svelte-h":!0}),C(_)!=="svelte-1lyffe"&&(_.innerHTML=D),U=r(e),v(d.$$.fragment,e),Y=r(e),b=i(e,"P",{}),I(b).forEach(n),this.h()},h(){J(s,"name","hf:doc:metadata"),J(s,"content",ie)},m(e,t){te(document.head,s),a(e,L,t),a(e,x,t),a(e,P,t),T(m,e,t),a(e,E,t),T(f,e,t),a(e,H,t),T(u,e,t),a(e,S,t),T(p,e,t),a(e,k,t),a(e,c,t),a(e,z,t),a(e,$,t),a(e,A,t),a(e,h,t),a(e,B,t),a(e,g,t),a(e,R,t),a(e,_,t),a(e,U,t),T(d,e,t),a(e,Y,t),a(e,b,t),j=!0},p:V,i(e){j||(q(m.$$.fragment,e),q(f.$$.fragment,e),q(u.$$.fragment,e),q(p.$$.fragment,e),q(d.$$.fragment,e),j=!0)},o(e){y(m.$$.fragment,e),y(f.$$.fragment,e),y(u.$$.fragment,e),y(p.$$.fragment,e),y(d.$$.fragment,e),j=!1},d(e){e&&(n(L),n(x),n(P),n(E),n(H),n(S),n(k),n(c),n(z),n($),n(A),n(h),n(B),n(g),n(R),n(_),n(U),n(Y),n(b)),n(s),M(m,e),M(f,e),M(u,e),M(p,e),M(d,e)}}}const ie='{"title":"โมเดล sequence-to-sequence","local":"โมเดล-sequence-to-sequence","sections":[],"depth":1}';function me(F){return W(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class he extends X{constructor(s){super(),Z(this,s,me,oe,Q,{})}}export{he as component};
