import{s as Y,n as Q,o as S}from"../chunks/scheduler.6efaaf90.js";import{S as F,i as q,e as _,s as a,c as w,h as O,a as b,d as n,b as o,f as z,g,j as G,k as H,l as K,m as i,n as x,t as C,o as y,p as v}from"../chunks/index.eb3e1f0f.js";import{C as ee,H as te,E as ne}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.bc356b46.js";import{C as N}from"../chunks/CodeBlock.1ecb727a.js";function ie(j){let l,J,h,B,m,M,s,V,r,R=`You can build our own CPU or CUDA TEI container using Docker.  To build a CPU container, run the following command in the
directory containing your custom Dockerfile:`,P,c,U,u,Z=`To build a CUDA container, it is essential to determine the compute capability (compute cap) of the GPU that will be
used at runtime. This information is crucial for the proper configuration of the CUDA containers. The following are
the examples of runtime compute capabilities for various GPU types:`,W,p,D="<li>Turing (T4, RTX 2000 series, …) - <code>runtime_compute_cap=75</code></li> <li>A100 - <code>runtime_compute_cap=80</code></li> <li>A10 - <code>runtime_compute_cap=86</code></li> <li>Ada Lovelace (RTX 4000 series, …) - <code>runtime_compute_cap=89</code></li> <li>H100 - <code>runtime_compute_cap=90</code></li>",k,f,X=`Once you have determined the compute capability is determined, set it as the <code>runtime_compute_cap</code> variable and build
the container as shown in the example below:`,E,d,L,$,A,T,I;return m=new ee({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),s=new te({props:{title:"Build a custom container for TEI",local:"build-a-custom-container-for-tei",headingTag:"h1"}}),c=new N({props:{code:"ZG9ja2VyJTIwYnVpbGQlMjAu",highlighted:"docker build .",wrap:!1}}),d=new N({props:{code:"JTIzJTIwR2V0JTIwc3VibW9kdWxlJTIwZGVwZW5kZW5jaWVzJTBBZ2l0JTIwc3VibW9kdWxlJTIwdXBkYXRlJTIwLS1pbml0JTBBJTBBcnVudGltZV9jb21wdXRlX2NhcCUzRDgwJTBBJTBBZG9ja2VyJTIwYnVpbGQlMjAuJTIwLWYlMjBEb2NrZXJmaWxlLWN1ZGElMjAtLWJ1aWxkLWFyZyUyMENVREFfQ09NUFVURV9DQVAlM0QlMjRydW50aW1lX2NvbXB1dGVfY2Fw",highlighted:`<span class="hljs-meta prompt_"># </span><span class="language-bash">Get submodule dependencies</span>
git submodule update --init

runtime_compute_cap=80

docker build . -f Dockerfile-cuda --build-arg CUDA_COMPUTE_CAP=$runtime_compute_cap`,wrap:!1}}),$=new ne({props:{source:"https://github.com/huggingface/text-embeddings-inference/blob/main/docs/source/en/custom_container.md"}}),{c(){l=_("meta"),J=a(),h=_("p"),B=a(),w(m.$$.fragment),M=a(),w(s.$$.fragment),V=a(),r=_("p"),r.textContent=R,P=a(),w(c.$$.fragment),U=a(),u=_("p"),u.textContent=Z,W=a(),p=_("ul"),p.innerHTML=D,k=a(),f=_("p"),f.innerHTML=X,E=a(),w(d.$$.fragment),L=a(),w($.$$.fragment),A=a(),T=_("p"),this.h()},l(e){const t=O("svelte-u9bgzb",document.head);l=b(t,"META",{name:!0,content:!0}),t.forEach(n),J=o(e),h=b(e,"P",{}),z(h).forEach(n),B=o(e),g(m.$$.fragment,e),M=o(e),g(s.$$.fragment,e),V=o(e),r=b(e,"P",{"data-svelte-h":!0}),G(r)!=="svelte-168bqza"&&(r.textContent=R),P=o(e),g(c.$$.fragment,e),U=o(e),u=b(e,"P",{"data-svelte-h":!0}),G(u)!=="svelte-z297w4"&&(u.textContent=Z),W=o(e),p=b(e,"UL",{"data-svelte-h":!0}),G(p)!=="svelte-7z8qoi"&&(p.innerHTML=D),k=o(e),f=b(e,"P",{"data-svelte-h":!0}),G(f)!=="svelte-138ec41"&&(f.innerHTML=X),E=o(e),g(d.$$.fragment,e),L=o(e),g($.$$.fragment,e),A=o(e),T=b(e,"P",{}),z(T).forEach(n),this.h()},h(){H(l,"name","hf:doc:metadata"),H(l,"content",ae)},m(e,t){K(document.head,l),i(e,J,t),i(e,h,t),i(e,B,t),x(m,e,t),i(e,M,t),x(s,e,t),i(e,V,t),i(e,r,t),i(e,P,t),x(c,e,t),i(e,U,t),i(e,u,t),i(e,W,t),i(e,p,t),i(e,k,t),i(e,f,t),i(e,E,t),x(d,e,t),i(e,L,t),x($,e,t),i(e,A,t),i(e,T,t),I=!0},p:Q,i(e){I||(C(m.$$.fragment,e),C(s.$$.fragment,e),C(c.$$.fragment,e),C(d.$$.fragment,e),C($.$$.fragment,e),I=!0)},o(e){y(m.$$.fragment,e),y(s.$$.fragment,e),y(c.$$.fragment,e),y(d.$$.fragment,e),y($.$$.fragment,e),I=!1},d(e){e&&(n(J),n(h),n(B),n(M),n(V),n(r),n(P),n(U),n(u),n(W),n(p),n(k),n(f),n(E),n(L),n(A),n(T)),n(l),v(m,e),v(s,e),v(c,e),v(d,e),v($,e)}}}const ae='{"title":"Build a custom container for TEI","local":"build-a-custom-container-for-tei","sections":[],"depth":1}';function oe(j){return S(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ce extends F{constructor(l){super(),q(this,l,oe,ie,Y,{})}}export{ce as component};
