import{s as sl,f as al,o as nl,n as Ze}from"../chunks/scheduler.889ebb13.js";import{S as rl,i as pl,g as u,s as r,r as h,A as il,h as $,f as t,c as p,j as Ut,u as T,x as d,k as P,y as ml,a as s,v as M,d as w,t as b,w as J}from"../chunks/index.b9ddb21d.js";import{T as ol}from"../chunks/Tip.ebe17e87.js";import{Y as fl}from"../chunks/Youtube.80562f6b.js";import{C as z}from"../chunks/CodeBlock.15ac7ec2.js";import{F as ll,M as ze}from"../chunks/Markdown.41f63184.js";import{H as E}from"../chunks/Heading.77ad4fb6.js";function ul(H){let a,f='コミュニティとモデルを共有するには、<a href="https://huggingface.co/join" rel="nofollow">huggingface.co</a>でアカウントが必要です。既存の組織に参加したり、新しい組織を作成したりすることもできます。';return{c(){a=u("p"),a.innerHTML=f},l(n){a=$(n,"P",{"data-svelte-h":!0}),d(a)!=="svelte-9nmpyr"&&(a.innerHTML=f)},m(n,i){s(n,a,i)},p:Ze,d(n){n&&t(a)}}}function $l(H){let a,f="TensorFlowからPyTorchにチェックポイントを変換するには、<code>from_tf=True</code>を指定します：",n,i,g;return i=new z({props:{code:"cHRfbW9kZWwlMjAlM0QlMjBEaXN0aWxCZXJ0Rm9yU2VxdWVuY2VDbGFzc2lmaWNhdGlvbi5mcm9tX3ByZXRyYWluZWQoJTIycGF0aCUyRnRvJTJGYXdlc29tZS1uYW1lLXlvdS1waWNrZWQlMjIlMkMlMjBmcm9tX3RmJTNEVHJ1ZSklMEFwdF9tb2RlbC5zYXZlX3ByZXRyYWluZWQoJTIycGF0aCUyRnRvJTJGYXdlc29tZS1uYW1lLXlvdS1waWNrZWQlMjIp",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>pt_model = DistilBertForSequenceClassification.from_pretrained(<span class="hljs-string">&quot;path/to/awesome-name-you-picked&quot;</span>, from_tf=<span class="hljs-literal">True</span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>pt_model.save_pretrained(<span class="hljs-string">&quot;path/to/awesome-name-you-picked&quot;</span>)`,wrap:!1}}),{c(){a=u("p"),a.innerHTML=f,n=r(),h(i.$$.fragment)},l(o){a=$(o,"P",{"data-svelte-h":!0}),d(a)!=="svelte-1ls4dxq"&&(a.innerHTML=f),n=p(o),T(i.$$.fragment,o)},m(o,y){s(o,a,y),s(o,n,y),M(i,o,y),g=!0},p:Ze,i(o){g||(w(i.$$.fragment,o),g=!0)},o(o){b(i.$$.fragment,o),g=!1},d(o){o&&(t(a),t(n)),J(i,o)}}}function gl(H){let a,f;return a=new ze({props:{$$slots:{default:[$l]},$$scope:{ctx:H}}}),{c(){h(a.$$.fragment)},l(n){T(a.$$.fragment,n)},m(n,i){M(a,n,i),f=!0},p(n,i){const g={};i&2&&(g.$$scope={dirty:i,ctx:n}),a.$set(g)},i(n){f||(w(a.$$.fragment,n),f=!0)},o(n){b(a.$$.fragment,n),f=!1},d(n){J(a,n)}}}function dl(H){let a,f="指定して、PyTorchからTensorFlowにチェックポイントを変換するには <code>from_pt=True</code> を使用します：",n,i,g,o,y="新しいTensorFlowモデルとその新しいチェックポイントを保存できます：",k,U,C;return i=new z({props:{code:"dGZfbW9kZWwlMjAlM0QlMjBURkRpc3RpbEJlcnRGb3JTZXF1ZW5jZUNsYXNzaWZpY2F0aW9uLmZyb21fcHJldHJhaW5lZCglMjJwYXRoJTJGdG8lMkZhd2Vzb21lLW5hbWUteW91LXBpY2tlZCUyMiUyQyUyMGZyb21fcHQlM0RUcnVlKQ==",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>tf_model = TFDistilBertForSequenceClassification.from_pretrained(<span class="hljs-string">&quot;path/to/awesome-name-you-picked&quot;</span>, from_pt=<span class="hljs-literal">True</span>)',wrap:!1}}),U=new z({props:{code:"dGZfbW9kZWwuc2F2ZV9wcmV0cmFpbmVkKCUyMnBhdGglMkZ0byUyRmF3ZXNvbWUtbmFtZS15b3UtcGlja2VkJTIyKQ==",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>tf_model.save_pretrained(<span class="hljs-string">&quot;path/to/awesome-name-you-picked&quot;</span>)',wrap:!1}}),{c(){a=u("p"),a.innerHTML=f,n=r(),h(i.$$.fragment),g=r(),o=u("p"),o.textContent=y,k=r(),h(U.$$.fragment)},l(c){a=$(c,"P",{"data-svelte-h":!0}),d(a)!=="svelte-1boi4ba"&&(a.innerHTML=f),n=p(c),T(i.$$.fragment,c),g=p(c),o=$(c,"P",{"data-svelte-h":!0}),d(o)!=="svelte-1e312hc"&&(o.textContent=y),k=p(c),T(U.$$.fragment,c)},m(c,v){s(c,a,v),s(c,n,v),M(i,c,v),s(c,g,v),s(c,o,v),s(c,k,v),M(U,c,v),C=!0},p:Ze,i(c){C||(w(i.$$.fragment,c),w(U.$$.fragment,c),C=!0)},o(c){b(i.$$.fragment,c),b(U.$$.fragment,c),C=!1},d(c){c&&(t(a),t(n),t(g),t(o),t(k)),J(i,c),J(U,c)}}}function cl(H){let a,f;return a=new ze({props:{$$slots:{default:[dl]},$$scope:{ctx:H}}}),{c(){h(a.$$.fragment)},l(n){T(a.$$.fragment,n)},m(n,i){M(a,n,i),f=!0},p(n,i){const g={};i&2&&(g.$$scope={dirty:i,ctx:n}),a.$set(g)},i(n){f||(w(a.$$.fragment,n),f=!0)},o(n){b(a.$$.fragment,n),f=!1},d(n){J(a,n)}}}function hl(H){let a,f="Flaxでモデルが利用可能な場合、PyTorchからFlaxへのチェックポイントの変換も行うことができます：",n,i,g;return i=new z({props:{code:"ZmxheF9tb2RlbCUyMCUzRCUyMEZsYXhEaXN0aWxCZXJ0Rm9yU2VxdWVuY2VDbGFzc2lmaWNhdGlvbi5mcm9tX3ByZXRyYWluZWQoJTBBJTIwJTIwJTIwJTIwJTIycGF0aCUyRnRvJTJGYXdlc29tZS1uYW1lLXlvdS1waWNrZWQlMjIlMkMlMjBmcm9tX3B0JTNEVHJ1ZSUwQSk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>flax_model = FlaxDistilBertForSequenceClassification.from_pretrained(
<span class="hljs-meta">... </span>    <span class="hljs-string">&quot;path/to/awesome-name-you-picked&quot;</span>, from_pt=<span class="hljs-literal">True</span>
<span class="hljs-meta">... </span>)`,wrap:!1}}),{c(){a=u("p"),a.textContent=f,n=r(),h(i.$$.fragment)},l(o){a=$(o,"P",{"data-svelte-h":!0}),d(a)!=="svelte-186fkt2"&&(a.textContent=f),n=p(o),T(i.$$.fragment,o)},m(o,y){s(o,a,y),s(o,n,y),M(i,o,y),g=!0},p:Ze,i(o){g||(w(i.$$.fragment,o),g=!0)},o(o){b(i.$$.fragment,o),g=!1},d(o){o&&(t(a),t(n)),J(i,o)}}}function Tl(H){let a,f;return a=new ze({props:{$$slots:{default:[hl]},$$scope:{ctx:H}}}),{c(){h(a.$$.fragment)},l(n){T(a.$$.fragment,n)},m(n,i){M(a,n,i),f=!0},p(n,i){const g={};i&2&&(g.$$scope={dirty:i,ctx:n}),a.$set(g)},i(n){f||(w(a.$$.fragment,n),f=!0)},o(n){b(a.$$.fragment,n),f=!1},d(n){J(a,n)}}}function Ml(H){let a,f,n,i=`モデルをHubにプッシュすることは、追加のパラメーターまたはコールバックを追加するだけで簡単です。
<a href="training">ファインチューニングチュートリアル</a>から思い出してください、<code>TrainingArguments</code>クラスはハイパーパラメーターと追加のトレーニングオプションを指定する場所です。
これらのトレーニングオプションの1つに、モデルを直接Hubにプッシュする機能があります。<code>TrainingArguments</code>で<code>push_to_hub=True</code>を設定します：`,g,o,y,k,U="Pass your training arguments as usual to <code>Trainer</code>:",C,c,v,W,_="<code>Trainer</code>に通常通りトレーニング引数を渡します：",x,j,B,X,L="ファインチューニングが完了したら、<code>Trainer</code>で<code>push_to_hub()</code>を呼び出して、トレーニング済みモデルをHubにプッシュします。🤗 Transformersは、トレーニングのハイパーパラメータ、トレーニング結果、およびフレームワークのバージョンを自動的にモデルカードに追加します！",R,F,G;return a=new fl({props:{id:"Z1-XMy-GNLQ"}}),o=new z({props:{code:"dHJhaW5pbmdfYXJncyUyMCUzRCUyMFRyYWluaW5nQXJndW1lbnRzKG91dHB1dF9kaXIlM0QlMjJteS1hd2Vzb21lLW1vZGVsJTIyJTJDJTIwcHVzaF90b19odWIlM0RUcnVlKQ==",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>training_args = TrainingArguments(output_dir=<span class="hljs-string">&quot;my-awesome-model&quot;</span>, push_to_hub=<span class="hljs-literal">True</span>)',wrap:!1}}),c=new z({props:{code:"dHJhaW5lciUyMCUzRCUyMFRyYWluZXIoJTBBJTIwJTIwJTIwJTIwbW9kZWwlM0Rtb2RlbCUyQyUwQSUyMCUyMCUyMCUyMGFyZ3MlM0R0cmFpbmluZ19hcmdzJTJDJTBBJTIwJTIwJTIwJTIwdHJhaW5fZGF0YXNldCUzRHNtYWxsX3RyYWluX2RhdGFzZXQlMkMlMEElMjAlMjAlMjAlMjBldmFsX2RhdGFzZXQlM0RzbWFsbF9ldmFsX2RhdGFzZXQlMkMlMEElMjAlMjAlMjAlMjBjb21wdXRlX21ldHJpY3MlM0Rjb21wdXRlX21ldHJpY3MlMkMlMEEp",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>trainer = Trainer(
<span class="hljs-meta">... </span>    model=model,
<span class="hljs-meta">... </span>    args=training_args,
<span class="hljs-meta">... </span>    train_dataset=small_train_dataset,
<span class="hljs-meta">... </span>    eval_dataset=small_eval_dataset,
<span class="hljs-meta">... </span>    compute_metrics=compute_metrics,
<span class="hljs-meta">... </span>)`,wrap:!1}}),j=new z({props:{code:"dHJhaW5lciUyMCUzRCUyMFRyYWluZXIoJTBBJTIwJTIwJTIwJTIwbW9kZWwlM0Rtb2RlbCUyQyUwQSUyMCUyMCUyMCUyMGFyZ3MlM0R0cmFpbmluZ19hcmdzJTJDJTBBJTIwJTIwJTIwJTIwdHJhaW5fZGF0YXNldCUzRHNtYWxsX3RyYWluX2RhdGFzZXQlMkMlMEElMjAlMjAlMjAlMjBldmFsX2RhdGFzZXQlM0RzbWFsbF9ldmFsX2RhdGFzZXQlMkMlMEElMjAlMjAlMjAlMjBjb21wdXRlX21ldHJpY3MlM0Rjb21wdXRlX21ldHJpY3MlMkMlMEEp",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>trainer = Trainer(
<span class="hljs-meta">... </span>    model=model,
<span class="hljs-meta">... </span>    args=training_args,
<span class="hljs-meta">... </span>    train_dataset=small_train_dataset,
<span class="hljs-meta">... </span>    eval_dataset=small_eval_dataset,
<span class="hljs-meta">... </span>    compute_metrics=compute_metrics,
<span class="hljs-meta">... </span>)`,wrap:!1}}),F=new z({props:{code:"dHJhaW5lci5wdXNoX3RvX2h1Yigp",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>trainer.push_to_hub()',wrap:!1}}),{c(){h(a.$$.fragment),f=r(),n=u("p"),n.innerHTML=i,g=r(),h(o.$$.fragment),y=r(),k=u("p"),k.innerHTML=U,C=r(),h(c.$$.fragment),v=r(),W=u("p"),W.innerHTML=_,x=r(),h(j.$$.fragment),B=r(),X=u("p"),X.innerHTML=L,R=r(),h(F.$$.fragment)},l(m){T(a.$$.fragment,m),f=p(m),n=$(m,"P",{"data-svelte-h":!0}),d(n)!=="svelte-gqrfzt"&&(n.innerHTML=i),g=p(m),T(o.$$.fragment,m),y=p(m),k=$(m,"P",{"data-svelte-h":!0}),d(k)!=="svelte-ts5ggt"&&(k.innerHTML=U),C=p(m),T(c.$$.fragment,m),v=p(m),W=$(m,"P",{"data-svelte-h":!0}),d(W)!=="svelte-1smzg6b"&&(W.innerHTML=_),x=p(m),T(j.$$.fragment,m),B=p(m),X=$(m,"P",{"data-svelte-h":!0}),d(X)!=="svelte-128wld8"&&(X.innerHTML=L),R=p(m),T(F.$$.fragment,m)},m(m,Z){M(a,m,Z),s(m,f,Z),s(m,n,Z),s(m,g,Z),M(o,m,Z),s(m,y,Z),s(m,k,Z),s(m,C,Z),M(c,m,Z),s(m,v,Z),s(m,W,Z),s(m,x,Z),M(j,m,Z),s(m,B,Z),s(m,X,Z),s(m,R,Z),M(F,m,Z),G=!0},p:Ze,i(m){G||(w(a.$$.fragment,m),w(o.$$.fragment,m),w(c.$$.fragment,m),w(j.$$.fragment,m),w(F.$$.fragment,m),G=!0)},o(m){b(a.$$.fragment,m),b(o.$$.fragment,m),b(c.$$.fragment,m),b(j.$$.fragment,m),b(F.$$.fragment,m),G=!1},d(m){m&&(t(f),t(n),t(g),t(y),t(k),t(C),t(v),t(W),t(x),t(B),t(X),t(R)),J(a,m),J(o,m),J(c,m),J(j,m),J(F,m)}}}function wl(H){let a,f;return a=new ze({props:{$$slots:{default:[Ml]},$$scope:{ctx:H}}}),{c(){h(a.$$.fragment)},l(n){T(a.$$.fragment,n)},m(n,i){M(a,n,i),f=!0},p(n,i){const g={};i&2&&(g.$$scope={dirty:i,ctx:n}),a.$set(g)},i(n){f||(w(a.$$.fragment,n),f=!0)},o(n){b(a.$$.fragment,n),f=!1},d(n){J(a,n)}}}function bl(H){let a,f="<code>PushToHubCallback</code>を使用してモデルをHubに共有します。<code>PushToHubCallback</code>関数には、次のものを追加します：",n,i,g="<li>モデルの出力ディレクトリ。</li> <li>トークナイザ。</li> <li><code>hub_model_id</code>、つまりHubのユーザー名とモデル名。</li>",o,y,k,U,C='🤗 Transformersは<a href="https://keras.io/api/models/model_training_apis/" rel="nofollow"><code>fit</code></a>にコールバックを追加し、トレーニング済みモデルをHubにプッシュします：',c,v,W;return y=new z({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMFB1c2hUb0h1YkNhbGxiYWNrJTBBJTBBcHVzaF90b19odWJfY2FsbGJhY2slMjAlM0QlMjBQdXNoVG9IdWJDYWxsYmFjayglMEElMjAlMjAlMjAlMjBvdXRwdXRfZGlyJTNEJTIyLiUyRnlvdXJfbW9kZWxfc2F2ZV9wYXRoJTIyJTJDJTIwdG9rZW5pemVyJTNEdG9rZW5pemVyJTJDJTIwaHViX21vZGVsX2lkJTNEJTIyeW91ci11c2VybmFtZSUyRm15LWF3ZXNvbWUtbW9kZWwlMjIlMEEp",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> PushToHubCallback

<span class="hljs-meta">&gt;&gt;&gt; </span>push_to_hub_callback = PushToHubCallback(
<span class="hljs-meta">... </span>    output_dir=<span class="hljs-string">&quot;./your_model_save_path&quot;</span>, tokenizer=tokenizer, hub_model_id=<span class="hljs-string">&quot;your-username/my-awesome-model&quot;</span>
<span class="hljs-meta">... </span>)`,wrap:!1}}),v=new z({props:{code:"bW9kZWwuZml0KHRmX3RyYWluX2RhdGFzZXQlMkMlMjB2YWxpZGF0aW9uX2RhdGElM0R0Zl92YWxpZGF0aW9uX2RhdGFzZXQlMkMlMjBlcG9jaHMlM0QzJTJDJTIwY2FsbGJhY2tzJTNEcHVzaF90b19odWJfY2FsbGJhY2sp",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>model.fit(tf_train_dataset, validation_data=tf_validation_dataset, epochs=<span class="hljs-number">3</span>, callbacks=push_to_hub_callback)',wrap:!1}}),{c(){a=u("p"),a.innerHTML=f,n=r(),i=u("ul"),i.innerHTML=g,o=r(),h(y.$$.fragment),k=r(),U=u("p"),U.innerHTML=C,c=r(),h(v.$$.fragment)},l(_){a=$(_,"P",{"data-svelte-h":!0}),d(a)!=="svelte-184z0gf"&&(a.innerHTML=f),n=p(_),i=$(_,"UL",{"data-svelte-h":!0}),d(i)!=="svelte-6emtg"&&(i.innerHTML=g),o=p(_),T(y.$$.fragment,_),k=p(_),U=$(_,"P",{"data-svelte-h":!0}),d(U)!=="svelte-5wis9p"&&(U.innerHTML=C),c=p(_),T(v.$$.fragment,_)},m(_,x){s(_,a,x),s(_,n,x),s(_,i,x),s(_,o,x),M(y,_,x),s(_,k,x),s(_,U,x),s(_,c,x),M(v,_,x),W=!0},p:Ze,i(_){W||(w(y.$$.fragment,_),w(v.$$.fragment,_),W=!0)},o(_){b(y.$$.fragment,_),b(v.$$.fragment,_),W=!1},d(_){_&&(t(a),t(n),t(i),t(o),t(k),t(U),t(c)),J(y,_),J(v,_)}}}function Jl(H){let a,f;return a=new ze({props:{$$slots:{default:[bl]},$$scope:{ctx:H}}}),{c(){h(a.$$.fragment)},l(n){T(a.$$.fragment,n)},m(n,i){M(a,n,i),f=!0},p(n,i){const g={};i&2&&(g.$$scope={dirty:i,ctx:n}),a.$set(g)},i(n){f||(w(a.$$.fragment,n),f=!0)},o(n){b(a.$$.fragment,n),f=!1},d(n){J(a,n)}}}function _l(H){let a,f,n,i,g,o,y,k="最後の2つのチュートリアルでは、PyTorch、Keras、および🤗 Accelerateを使用してモデルをファインチューニングする方法を示しました。次のステップは、モデルをコミュニティと共有することです！Hugging Faceでは、知識とリソースを公開的に共有し、人工知能を誰にでも提供することを信じています。他の人々が時間とリソースを節約できるように、モデルをコミュニティと共有することを検討することをお勧めします。",U,C,c='このチュートリアルでは、訓練済みまたはファインチューニングされたモデルを<a href="https://huggingface.co/models" rel="nofollow">Model Hub</a>に共有する2つの方法を学びます：',v,W,_="<li>プログラムでファイルをHubにプッシュする。</li> <li>ウェブインターフェースを使用してファイルをHubにドラッグアンドドロップする。</li>",x,j,B,X,L,R,F,G,m,Z="Model Hub上の各リポジトリは、通常のGitHubリポジトリのように動作します。リポジトリはバージョニング、コミット履歴、違いの視覚化の機能を提供します。",Fe,V,Ht='Model Hubの組み込みバージョニングはgitおよび<a href="https://git-lfs.github.com/" rel="nofollow">git-lfs</a>に基づいています。言い換えれば、モデルを1つのリポジトリとして扱うことができ、より大きなアクセス制御とスケーラビリティを実現します。バージョン管理には<em>リビジョン</em>があり、コミットハッシュ、タグ、またはブランチ名で特定のモデルバージョンをピン留めする方法です。',Xe,q,jt="その結果、<code>revision</code>パラメータを使用して特定のモデルバージョンをロードできます：",Le,Q,Re,A,kt="ファイルはリポジトリ内で簡単に編集でき、コミット履歴と差分を表示できます：",Ge,S,Ct='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/vis_diff.png" alt="vis_diff"/>',Ie,N,Ye,D,Wt="モデルをHubに共有する前に、Hugging Faceの認証情報が必要です。ターミナルへのアクセス権がある場合、🤗 Transformersがインストールされている仮想環境で以下のコマンドを実行します。これにより、アクセストークンがHugging Faceのキャッシュフォルダに保存されます（デフォルトでは <code>~/.cache/</code> に保存されます）：",Pe,K,Ee,O,Zt=`JupyterやColaboratoryのようなノートブックを使用している場合、<a href="https://huggingface.co/docs/hub/adding-a-library" rel="nofollow"><code>huggingface_hub</code></a>ライブラリがインストールされていることを確認してください。
このライブラリを使用すると、Hubとプログラム的に対話できます。`,Be,ee,Ve,te,xt='次に、<code>notebook_login</code>を使用してHubにサインインし、<a href="https://huggingface.co/settings/token" rel="nofollow">こちらのリンク</a>にアクセスしてログインに使用するトークンを生成します：',qe,le,Qe,se,Ae,ae,zt=`異なるフレームワークで作業している他のユーザーがあなたのモデルを使用できるようにするために、
PyTorchおよびTensorFlowのチェックポイントでモデルを変換してアップロードすることをお勧めします。
このステップをスキップすると、ユーザーは異なるフレームワークからモデルをロードできますが、
モデルをオンザフライで変換する必要があるため、遅くなります。`,Se,ne,Ft=`別のフレームワーク用にチェックポイントを変換することは簡単です。
PyTorchとTensorFlowがインストールされていることを確認してください（インストール手順については<a href="installation">こちら</a>を参照）し、
その後、他のフレームワーク向けに特定のタスク用のモデルを見つけます。`,Ne,I,De,re,Ke,Y,Oe,pe,et,ie,Xt="また、モデルを直接Hubにアップロードするために、<code>push_to_hub</code> を呼び出すこともできます。",tt,me,Lt="<code>push_to_hub</code> でモデル名を指定します：",lt,oe,st,fe,Rt=`これにより、ユーザー名の下にモデル名 <code>my-awesome-model</code> を持つリポジトリが作成されます。
ユーザーは、<code>from_pretrained</code> 関数を使用してモデルをロードできます：`,at,ue,nt,$e,Gt="組織に所属し、モデルを組織名のもとにプッシュしたい場合、<code>repo_id</code> にそれを追加してください：",rt,ge,pt,de,It="<code>push_to_hub</code>関数は、モデルリポジトリに他のファイルを追加するためにも使用できます。例えば、トークナイザをモデルリポジトリに追加します：",it,ce,mt,he,Yt="あるいは、ファインチューニングされたPyTorchモデルのTensorFlowバージョンを追加したいかもしれません：",ot,Te,ft,Me,Pt="Hugging Faceプロフィールに移動すると、新しく作成したモデルリポジトリが表示されるはずです。<strong>Files</strong>タブをクリックすると、リポジトリにアップロードしたすべてのファイルが表示されます。",ut,we,Et='リポジトリにファイルを作成およびアップロードする方法の詳細については、Hubドキュメンテーション<a href="https://huggingface.co/docs/hub/how-to-upstream" rel="nofollow">こちら</a>を参照してください。',$t,be,gt,Je,Bt='コードを書かずにモデルをアップロードしたいユーザーは、Hubのウェブインターフェースを使用してモデルをアップロードできます。<a href="https://huggingface.co/new" rel="nofollow">huggingface.co/new</a>を訪れて新しいリポジトリを作成します：',dt,_e,Vt='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/new_model_repo.png" alt="new_model_repo"/>',ct,ye,qt="ここから、モデルに関するいくつかの情報を追加します：",ht,ve,Qt="<li>リポジトリの<strong>所有者</strong>を選択します。これはあなた自身または所属している組織のいずれかです。</li> <li>モデルの名前を選択します。これはリポジトリの名前にもなります。</li> <li>モデルが公開か非公開かを選択します。</li> <li>モデルのライセンス使用方法を指定します。</li>",Tt,Ue,At="その後、<strong>Files</strong>タブをクリックし、<strong>Add file</strong>ボタンをクリックしてリポジトリに新しいファイルをアップロードします。次に、ファイルをドラッグアンドドロップしてアップロードし、コミットメッセージを追加します。",Mt,He,St='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/upload_file.png" alt="upload_file"/>',wt,je,bt,ke,Nt="ユーザーがモデルの機能、制限、潜在的な偏り、倫理的な考慮事項を理解できるようにするために、モデルリポジトリにモデルカードを追加してください。モデルカードは<code>README.md</code>ファイルで定義されます。モデルカードを追加する方法：",Jt,Ce,Dt="<li>手動で<code>README.md</code>ファイルを作成およびアップロードする。</li> <li>モデルリポジトリ内の<strong>Edit model card</strong>ボタンをクリックする。</li>",_t,We,Kt='モデルカードに含めるべき情報の例については、DistilBert <a href="https://huggingface.co/distilbert-base-uncased" rel="nofollow">モデルカード</a>をご覧ください。<code>README.md</code>ファイルで制御できる他のオプション、例えばモデルの炭素フットプリントやウィジェットの例などについての詳細は、<a href="https://huggingface.co/docs/hub/models-cards" rel="nofollow">こちらのドキュメンテーション</a>を参照してください。',yt,xe,vt;return g=new E({props:{title:"Share a Model",local:"share-a-model",headingTag:"h1"}}),L=new ol({props:{$$slots:{default:[ul]},$$scope:{ctx:H}}}),F=new E({props:{title:"Repository Features",local:"repository-features",headingTag:"h2"}}),Q=new z({props:{code:"bW9kZWwlMjAlM0QlMjBBdXRvTW9kZWwuZnJvbV9wcmV0cmFpbmVkKCUwQSUyMCUyMCUyMCUyMCUyMmp1bGllbi1jJTJGRXNwZXJCRVJUby1zbWFsbCUyMiUyQyUyMHJldmlzaW9uJTNEJTIydjIuMC4xJTIyJTIwJTIwJTIzJTIwJUUzJTgyJUJGJUUzJTgyJUIwJUU1JTkwJThEJUUzJTgwJTgxJUUzJTgxJUJFJUUzJTgxJTlGJUUzJTgxJUFGJUUzJTgzJTk2JUUzJTgzJUE5JUUzJTgzJUIzJUUzJTgzJTgxJUU1JTkwJThEJUUzJTgwJTgxJUUzJTgxJUJFJUUzJTgxJTlGJUUzJTgxJUFGJUUzJTgyJUIzJUUzJTgzJTlGJUUzJTgzJTgzJUUzJTgzJTg4JUUzJTgzJThGJUUzJTgzJTgzJUUzJTgyJUI3JUUzJTgzJUE1JTBBKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>model = AutoModel.from_pretrained(
<span class="hljs-meta">... </span>    <span class="hljs-string">&quot;julien-c/EsperBERTo-small&quot;</span>, revision=<span class="hljs-string">&quot;v2.0.1&quot;</span>  <span class="hljs-comment"># タグ名、またはブランチ名、またはコミットハッシュ</span>
<span class="hljs-meta">... </span>)`,wrap:!1}}),N=new E({props:{title:"Set Up",local:"set-up",headingTag:"h2"}}),K=new z({props:{code:"aHVnZ2luZ2ZhY2UtY2xpJTIwbG9naW4=",highlighted:"huggingface-cli login",wrap:!1}}),ee=new z({props:{code:"cGlwJTIwaW5zdGFsbCUyMGh1Z2dpbmdmYWNlX2h1Yg==",highlighted:"pip install huggingface_hub",wrap:!1}}),le=new z({props:{code:"ZnJvbSUyMGh1Z2dpbmdmYWNlX2h1YiUyMGltcG9ydCUyMG5vdGVib29rX2xvZ2luJTBBJTBBbm90ZWJvb2tfbG9naW4oKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> huggingface_hub <span class="hljs-keyword">import</span> notebook_login

<span class="hljs-meta">&gt;&gt;&gt; </span>notebook_login()`,wrap:!1}}),se=new E({props:{title:"Convert a Model for all frameworks",local:"convert-a-model-for-all-frameworks",headingTag:"h2"}}),I=new ll({props:{pytorch:!0,tensorflow:!0,jax:!0,$$slots:{jax:[Tl],tensorflow:[cl],pytorch:[gl]},$$scope:{ctx:H}}}),re=new E({props:{title:"Push a model during traning",local:"push-a-model-during-traning",headingTag:"h2"}}),Y=new ll({props:{pytorch:!0,tensorflow:!0,jax:!1,$$slots:{tensorflow:[Jl],pytorch:[wl]},$$scope:{ctx:H}}}),pe=new E({props:{title:"push_to_hub 関数を使用する",local:"pushtohub-関数を使用する",headingTag:"h2"}}),oe=new z({props:{code:"cHRfbW9kZWwucHVzaF90b19odWIoJTIybXktYXdlc29tZS1tb2RlbCUyMik=",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>pt_model.push_to_hub(<span class="hljs-string">&quot;my-awesome-model&quot;</span>)',wrap:!1}}),ue=new z({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMEF1dG9Nb2RlbCUwQSUwQW1vZGVsJTIwJTNEJTIwQXV0b01vZGVsLmZyb21fcHJldHJhaW5lZCglMjJ5b3VyX3VzZXJuYW1lJTJGbXktYXdlc29tZS1tb2RlbCUyMik=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoModel

<span class="hljs-meta">&gt;&gt;&gt; </span>model = AutoModel.from_pretrained(<span class="hljs-string">&quot;your_username/my-awesome-model&quot;</span>)`,wrap:!1}}),ge=new z({props:{code:"cHRfbW9kZWwucHVzaF90b19odWIoJTIybXktYXdlc29tZS1vcmclMkZteS1hd2Vzb21lLW1vZGVsJTIyKQ==",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>pt_model.push_to_hub(<span class="hljs-string">&quot;my-awesome-org/my-awesome-model&quot;</span>)',wrap:!1}}),ce=new z({props:{code:"dG9rZW5pemVyLnB1c2hfdG9faHViKCUyMm15LWF3ZXNvbWUtbW9kZWwlMjIp",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>tokenizer.push_to_hub(<span class="hljs-string">&quot;my-awesome-model&quot;</span>)',wrap:!1}}),Te=new z({props:{code:"dGZfbW9kZWwucHVzaF90b19odWIoJTIybXktYXdlc29tZS1tb2RlbCUyMik=",highlighted:'<span class="hljs-meta">&gt;&gt;&gt; </span>tf_model.push_to_hub(<span class="hljs-string">&quot;my-awesome-model&quot;</span>)',wrap:!1}}),be=new E({props:{title:"Upload with the web interface",local:"upload-with-the-web-interface",headingTag:"h2"}}),je=new E({props:{title:"Add a model card",local:"add-a-model-card",headingTag:"h2"}}),{c(){a=u("meta"),f=r(),n=u("p"),i=r(),h(g.$$.fragment),o=r(),y=u("p"),y.textContent=k,U=r(),C=u("p"),C.innerHTML=c,v=r(),W=u("ul"),W.innerHTML=_,x=r(),j=u("iframe"),X=r(),h(L.$$.fragment),R=r(),h(F.$$.fragment),G=r(),m=u("p"),m.textContent=Z,Fe=r(),V=u("p"),V.innerHTML=Ht,Xe=r(),q=u("p"),q.innerHTML=jt,Le=r(),h(Q.$$.fragment),Re=r(),A=u("p"),A.textContent=kt,Ge=r(),S=u("p"),S.innerHTML=Ct,Ie=r(),h(N.$$.fragment),Ye=r(),D=u("p"),D.innerHTML=Wt,Pe=r(),h(K.$$.fragment),Ee=r(),O=u("p"),O.innerHTML=Zt,Be=r(),h(ee.$$.fragment),Ve=r(),te=u("p"),te.innerHTML=xt,qe=r(),h(le.$$.fragment),Qe=r(),h(se.$$.fragment),Ae=r(),ae=u("p"),ae.textContent=zt,Se=r(),ne=u("p"),ne.innerHTML=Ft,Ne=r(),h(I.$$.fragment),De=r(),h(re.$$.fragment),Ke=r(),h(Y.$$.fragment),Oe=r(),h(pe.$$.fragment),et=r(),ie=u("p"),ie.innerHTML=Xt,tt=r(),me=u("p"),me.innerHTML=Lt,lt=r(),h(oe.$$.fragment),st=r(),fe=u("p"),fe.innerHTML=Rt,at=r(),h(ue.$$.fragment),nt=r(),$e=u("p"),$e.innerHTML=Gt,rt=r(),h(ge.$$.fragment),pt=r(),de=u("p"),de.innerHTML=It,it=r(),h(ce.$$.fragment),mt=r(),he=u("p"),he.textContent=Yt,ot=r(),h(Te.$$.fragment),ft=r(),Me=u("p"),Me.innerHTML=Pt,ut=r(),we=u("p"),we.innerHTML=Et,$t=r(),h(be.$$.fragment),gt=r(),Je=u("p"),Je.innerHTML=Bt,dt=r(),_e=u("p"),_e.innerHTML=Vt,ct=r(),ye=u("p"),ye.textContent=qt,ht=r(),ve=u("ul"),ve.innerHTML=Qt,Tt=r(),Ue=u("p"),Ue.innerHTML=At,Mt=r(),He=u("p"),He.innerHTML=St,wt=r(),h(je.$$.fragment),bt=r(),ke=u("p"),ke.innerHTML=Nt,Jt=r(),Ce=u("ul"),Ce.innerHTML=Dt,_t=r(),We=u("p"),We.innerHTML=Kt,yt=r(),xe=u("p"),this.h()},l(e){const l=il("svelte-u9bgzb",document.head);a=$(l,"META",{name:!0,content:!0}),l.forEach(t),f=p(e),n=$(e,"P",{}),Ut(n).forEach(t),i=p(e),T(g.$$.fragment,e),o=p(e),y=$(e,"P",{"data-svelte-h":!0}),d(y)!=="svelte-39cuv0"&&(y.textContent=k),U=p(e),C=$(e,"P",{"data-svelte-h":!0}),d(C)!=="svelte-tez0zq"&&(C.innerHTML=c),v=p(e),W=$(e,"UL",{"data-svelte-h":!0}),d(W)!=="svelte-1chx23f"&&(W.innerHTML=_),x=p(e),j=$(e,"IFRAME",{width:!0,height:!0,src:!0,title:!0,frameborder:!0,allow:!0}),Ut(j).forEach(t),X=p(e),T(L.$$.fragment,e),R=p(e),T(F.$$.fragment,e),G=p(e),m=$(e,"P",{"data-svelte-h":!0}),d(m)!=="svelte-1jl6ks4"&&(m.textContent=Z),Fe=p(e),V=$(e,"P",{"data-svelte-h":!0}),d(V)!=="svelte-122cymg"&&(V.innerHTML=Ht),Xe=p(e),q=$(e,"P",{"data-svelte-h":!0}),d(q)!=="svelte-isj6h8"&&(q.innerHTML=jt),Le=p(e),T(Q.$$.fragment,e),Re=p(e),A=$(e,"P",{"data-svelte-h":!0}),d(A)!=="svelte-yfxz9f"&&(A.textContent=kt),Ge=p(e),S=$(e,"P",{"data-svelte-h":!0}),d(S)!=="svelte-hnu2bf"&&(S.innerHTML=Ct),Ie=p(e),T(N.$$.fragment,e),Ye=p(e),D=$(e,"P",{"data-svelte-h":!0}),d(D)!=="svelte-zmmns"&&(D.innerHTML=Wt),Pe=p(e),T(K.$$.fragment,e),Ee=p(e),O=$(e,"P",{"data-svelte-h":!0}),d(O)!=="svelte-13virid"&&(O.innerHTML=Zt),Be=p(e),T(ee.$$.fragment,e),Ve=p(e),te=$(e,"P",{"data-svelte-h":!0}),d(te)!=="svelte-ha7ywj"&&(te.innerHTML=xt),qe=p(e),T(le.$$.fragment,e),Qe=p(e),T(se.$$.fragment,e),Ae=p(e),ae=$(e,"P",{"data-svelte-h":!0}),d(ae)!=="svelte-yzq96x"&&(ae.textContent=zt),Se=p(e),ne=$(e,"P",{"data-svelte-h":!0}),d(ne)!=="svelte-5mq21t"&&(ne.innerHTML=Ft),Ne=p(e),T(I.$$.fragment,e),De=p(e),T(re.$$.fragment,e),Ke=p(e),T(Y.$$.fragment,e),Oe=p(e),T(pe.$$.fragment,e),et=p(e),ie=$(e,"P",{"data-svelte-h":!0}),d(ie)!=="svelte-khbfkm"&&(ie.innerHTML=Xt),tt=p(e),me=$(e,"P",{"data-svelte-h":!0}),d(me)!=="svelte-11bnlre"&&(me.innerHTML=Lt),lt=p(e),T(oe.$$.fragment,e),st=p(e),fe=$(e,"P",{"data-svelte-h":!0}),d(fe)!=="svelte-trpbr9"&&(fe.innerHTML=Rt),at=p(e),T(ue.$$.fragment,e),nt=p(e),$e=$(e,"P",{"data-svelte-h":!0}),d($e)!=="svelte-1j8hdbl"&&($e.innerHTML=Gt),rt=p(e),T(ge.$$.fragment,e),pt=p(e),de=$(e,"P",{"data-svelte-h":!0}),d(de)!=="svelte-z2gym0"&&(de.innerHTML=It),it=p(e),T(ce.$$.fragment,e),mt=p(e),he=$(e,"P",{"data-svelte-h":!0}),d(he)!=="svelte-5ht08b"&&(he.textContent=Yt),ot=p(e),T(Te.$$.fragment,e),ft=p(e),Me=$(e,"P",{"data-svelte-h":!0}),d(Me)!=="svelte-c3kxgl"&&(Me.innerHTML=Pt),ut=p(e),we=$(e,"P",{"data-svelte-h":!0}),d(we)!=="svelte-1jaggtd"&&(we.innerHTML=Et),$t=p(e),T(be.$$.fragment,e),gt=p(e),Je=$(e,"P",{"data-svelte-h":!0}),d(Je)!=="svelte-1l7cjck"&&(Je.innerHTML=Bt),dt=p(e),_e=$(e,"P",{"data-svelte-h":!0}),d(_e)!=="svelte-ahj3l9"&&(_e.innerHTML=Vt),ct=p(e),ye=$(e,"P",{"data-svelte-h":!0}),d(ye)!=="svelte-1qbel0t"&&(ye.textContent=qt),ht=p(e),ve=$(e,"UL",{"data-svelte-h":!0}),d(ve)!=="svelte-6b1wg0"&&(ve.innerHTML=Qt),Tt=p(e),Ue=$(e,"P",{"data-svelte-h":!0}),d(Ue)!=="svelte-10c9t9x"&&(Ue.innerHTML=At),Mt=p(e),He=$(e,"P",{"data-svelte-h":!0}),d(He)!=="svelte-32sxm9"&&(He.innerHTML=St),wt=p(e),T(je.$$.fragment,e),bt=p(e),ke=$(e,"P",{"data-svelte-h":!0}),d(ke)!=="svelte-1e1o07s"&&(ke.innerHTML=Nt),Jt=p(e),Ce=$(e,"UL",{"data-svelte-h":!0}),d(Ce)!=="svelte-ljvnza"&&(Ce.innerHTML=Dt),_t=p(e),We=$(e,"P",{"data-svelte-h":!0}),d(We)!=="svelte-yguvn6"&&(We.innerHTML=Kt),yt=p(e),xe=$(e,"P",{}),Ut(xe).forEach(t),this.h()},h(){P(a,"name","hf:doc:metadata"),P(a,"content",yl),P(j,"width","560"),P(j,"height","315"),al(j.src,B="https://www.youtube.com/embed/XvSGPZFEjDY")||P(j,"src",B),P(j,"title","YouTube video player"),P(j,"frameborder","0"),P(j,"allow",`accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope;
picture-in-picture`),j.allowFullscreen=""},m(e,l){ml(document.head,a),s(e,f,l),s(e,n,l),s(e,i,l),M(g,e,l),s(e,o,l),s(e,y,l),s(e,U,l),s(e,C,l),s(e,v,l),s(e,W,l),s(e,x,l),s(e,j,l),s(e,X,l),M(L,e,l),s(e,R,l),M(F,e,l),s(e,G,l),s(e,m,l),s(e,Fe,l),s(e,V,l),s(e,Xe,l),s(e,q,l),s(e,Le,l),M(Q,e,l),s(e,Re,l),s(e,A,l),s(e,Ge,l),s(e,S,l),s(e,Ie,l),M(N,e,l),s(e,Ye,l),s(e,D,l),s(e,Pe,l),M(K,e,l),s(e,Ee,l),s(e,O,l),s(e,Be,l),M(ee,e,l),s(e,Ve,l),s(e,te,l),s(e,qe,l),M(le,e,l),s(e,Qe,l),M(se,e,l),s(e,Ae,l),s(e,ae,l),s(e,Se,l),s(e,ne,l),s(e,Ne,l),M(I,e,l),s(e,De,l),M(re,e,l),s(e,Ke,l),M(Y,e,l),s(e,Oe,l),M(pe,e,l),s(e,et,l),s(e,ie,l),s(e,tt,l),s(e,me,l),s(e,lt,l),M(oe,e,l),s(e,st,l),s(e,fe,l),s(e,at,l),M(ue,e,l),s(e,nt,l),s(e,$e,l),s(e,rt,l),M(ge,e,l),s(e,pt,l),s(e,de,l),s(e,it,l),M(ce,e,l),s(e,mt,l),s(e,he,l),s(e,ot,l),M(Te,e,l),s(e,ft,l),s(e,Me,l),s(e,ut,l),s(e,we,l),s(e,$t,l),M(be,e,l),s(e,gt,l),s(e,Je,l),s(e,dt,l),s(e,_e,l),s(e,ct,l),s(e,ye,l),s(e,ht,l),s(e,ve,l),s(e,Tt,l),s(e,Ue,l),s(e,Mt,l),s(e,He,l),s(e,wt,l),M(je,e,l),s(e,bt,l),s(e,ke,l),s(e,Jt,l),s(e,Ce,l),s(e,_t,l),s(e,We,l),s(e,yt,l),s(e,xe,l),vt=!0},p(e,[l]){const Ot={};l&2&&(Ot.$$scope={dirty:l,ctx:e}),L.$set(Ot);const el={};l&2&&(el.$$scope={dirty:l,ctx:e}),I.$set(el);const tl={};l&2&&(tl.$$scope={dirty:l,ctx:e}),Y.$set(tl)},i(e){vt||(w(g.$$.fragment,e),w(L.$$.fragment,e),w(F.$$.fragment,e),w(Q.$$.fragment,e),w(N.$$.fragment,e),w(K.$$.fragment,e),w(ee.$$.fragment,e),w(le.$$.fragment,e),w(se.$$.fragment,e),w(I.$$.fragment,e),w(re.$$.fragment,e),w(Y.$$.fragment,e),w(pe.$$.fragment,e),w(oe.$$.fragment,e),w(ue.$$.fragment,e),w(ge.$$.fragment,e),w(ce.$$.fragment,e),w(Te.$$.fragment,e),w(be.$$.fragment,e),w(je.$$.fragment,e),vt=!0)},o(e){b(g.$$.fragment,e),b(L.$$.fragment,e),b(F.$$.fragment,e),b(Q.$$.fragment,e),b(N.$$.fragment,e),b(K.$$.fragment,e),b(ee.$$.fragment,e),b(le.$$.fragment,e),b(se.$$.fragment,e),b(I.$$.fragment,e),b(re.$$.fragment,e),b(Y.$$.fragment,e),b(pe.$$.fragment,e),b(oe.$$.fragment,e),b(ue.$$.fragment,e),b(ge.$$.fragment,e),b(ce.$$.fragment,e),b(Te.$$.fragment,e),b(be.$$.fragment,e),b(je.$$.fragment,e),vt=!1},d(e){e&&(t(f),t(n),t(i),t(o),t(y),t(U),t(C),t(v),t(W),t(x),t(j),t(X),t(R),t(G),t(m),t(Fe),t(V),t(Xe),t(q),t(Le),t(Re),t(A),t(Ge),t(S),t(Ie),t(Ye),t(D),t(Pe),t(Ee),t(O),t(Be),t(Ve),t(te),t(qe),t(Qe),t(Ae),t(ae),t(Se),t(ne),t(Ne),t(De),t(Ke),t(Oe),t(et),t(ie),t(tt),t(me),t(lt),t(st),t(fe),t(at),t(nt),t($e),t(rt),t(pt),t(de),t(it),t(mt),t(he),t(ot),t(ft),t(Me),t(ut),t(we),t($t),t(gt),t(Je),t(dt),t(_e),t(ct),t(ye),t(ht),t(ve),t(Tt),t(Ue),t(Mt),t(He),t(wt),t(bt),t(ke),t(Jt),t(Ce),t(_t),t(We),t(yt),t(xe)),t(a),J(g,e),J(L,e),J(F,e),J(Q,e),J(N,e),J(K,e),J(ee,e),J(le,e),J(se,e),J(I,e),J(re,e),J(Y,e),J(pe,e),J(oe,e),J(ue,e),J(ge,e),J(ce,e),J(Te,e),J(be,e),J(je,e)}}}const yl='{"title":"Share a Model","local":"share-a-model","sections":[{"title":"Repository Features","local":"repository-features","sections":[],"depth":2},{"title":"Set Up","local":"set-up","sections":[],"depth":2},{"title":"Convert a Model for all frameworks","local":"convert-a-model-for-all-frameworks","sections":[],"depth":2},{"title":"Push a model during traning","local":"push-a-model-during-traning","sections":[],"depth":2},{"title":"push_to_hub 関数を使用する","local":"pushtohub-関数を使用する","sections":[],"depth":2},{"title":"Upload with the web interface","local":"upload-with-the-web-interface","sections":[],"depth":2},{"title":"Add a model card","local":"add-a-model-card","sections":[],"depth":2}],"depth":1}';function vl(H){return nl(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class xl extends rl{constructor(a){super(),pl(this,a,vl,_l,sl,{})}}export{xl as component};
