Hugging Face JobsでLLMをデプロイ
Hugging Face jobsとskillsを使って、SKILLでCodex / Claude Codeと一緒にLFMをファインチューニングします。
最終更新
役に立ちましたか?
Hugging Face jobsとskillsを使って、SKILLでCodex / Claude Codeと一緒にLFMをファインチューニングします。
このガイドでは、どのように使用するかを解説します Unsloth および Liquid LFM2.5 を使って、のようなコーディングエージェント経由で高速にLLMをファインチューニングする方法 Claude Code。Unslothは、標準的な手法と比べて約2倍高速な学習と約60%少ないVRAM使用量を実現します。
A Hugging Face アカウント(HF Jobsに必要)
書き込み権限のあるHugging Faceトークン
コーディングエージェント(Open Code、Claude Code、Codex)
こちらの Claude Code セットアップガイドをお読みください。
Claude Codeは、その プラグインシステム.
を通じてスキルを見つけます:
/plugin marketplace add huggingface/skills利用可能なスキルを Discover タブで閲覧します:
/pluginモデルトレーナースキルをインストールします:
/plugin install hugging-face-model-trainer@huggingface-skills詳細は、 Claude Code plugins docs および Skills docs.
をご覧ください。Codexは、 AGENTS.md ファイルと .agents/skills/ ディレクトリを通じてスキルを見つけます。
個別のスキルは次の方法でインストールします $skill-installer
詳細は、 Codex Skills docs および AGENTS.md guide.
スキルがインストールされたら、コーディングエージェントにモデルの学習を依頼します。ここでは Liquid LFM2.5
エージェントは、スキル内の 例に基づいて学習スクリプトを生成し、学習をHF Jobsに送信し、Trackio経由で監視リンクを提供します。
学習ジョブは Hugging Face Jobs 上で実行されます。これは完全管理型のクラウドGPUです。Google Colabのクレジットに慣れている方なら、Hugging Face Jobsにも同様のクレジット制度があります。これは従量課金制で、あらかじめクレジットを取得することもできます。エージェントは次のことを行います:
インライン依存関係を含むUVスクリプトを生成する
それを次経由でHF Jobsに送信する hf CLI
ジョブIDと監視URLを報告する
学習済みモデルは、あなたのHugging Face Hubリポジトリにプッシュされます
このスキルは次のようなスクリプトを生成します:
Hugging Face Jobsでの学習コストは以下のとおりです:
<1B params
t4-small
~$0.40
1-3B params
t4-medium
~$0.60
3-7B params
a10g-small
~$1.00
7-13B params
a10g-large
~$3.00
Hugging Face spaceの料金の全体像については、ガイドを確認してください こちら.
使用するモデルとデータセットを具体的に指定し、Hub IDを含めてください(例: Qwen/Qwen2.5-0.5B, trl-lib/Capybara)。エージェントは、それらの組み合わせを検索し、検証します。
Unslothを使ってほしい場合は、明示的に言及してください。そうでない場合、エージェントはモデルと予算に基づいてフレームワークを判断します。
大規模ジョブを開始する前に、コスト見積もりを依頼してください
リアルタイムの損失曲線のためにTrackio監視を依頼してください
送信後にエージェントにログを確認させて、ジョブの状態を確認してください
最終更新
役に立ちましたか?
役に立ちましたか?
$skill-installer install https://github.com/huggingface/skills/tree/main/skills/hugging-face-model-trainerTrain LiquidAI/LFM2.5-1.2B-Instruct on trl-lib/Capybara using Unsloth on HF Jobs# /// script
# dependencies = ["unsloth", "trl>=0.12.0", "datasets", "trackio"]
# ///
from unsloth import FastLanguageModel
from trl import SFTTrainer, SFTConfig
from datasets import load_dataset
model, tokenizer = FastLanguageModel.from_pretrained(
"Qwen/Qwen2.5-0.5B",
load_in_4bit=True,
max_seq_length=2048,
)
model = FastLanguageModel.get_peft_model(
model,
r=16,
lora_alpha=32,
lora_dropout=0,
target_modules=["q_proj", "k_proj", "v_proj", "o_proj",
"gate_proj", "up_proj", "down_proj"],
)
dataset = load_dataset("trl-lib/Capybara", split="train")
trainer = SFTTrainer(
model=model,
tokenizer=tokenizer,
train_dataset=dataset,
args=SFTConfig(
output_dir="./output",
push_to_hub=True,
hub_model_id="username/my-model",
per_device_train_batch_size=4,
gradient_accumulation_steps=4,
num_train_epochs=1,
learning_rate=2e-4,
report_to="trackio",
),
)
trainer.train()
trainer.push_to_hub()
