大規模な言語モデル(LLMS)の出現により、AIアプリケーションに無数の新しい機会がもたらされました。常に独自のモデルを微調整したい場合は、このガイドでは、コードを書くことなく簡単にこれを行う方法を示します。 AxolotlやDPOなどのツールを使用して、プロセス全体を段階的にガイドします。
大規模な言語モデル(LLM)は、大規模なテキストデータ(数兆文字)をトレーニングして、次のフレーズをシーケンスで予測する強力なAIモデルです。これは、過去2〜3年にわたってGPUコンピューティングの進歩でのみ可能であり、このような大きなモデルを数週間で訓練することができました。
chatgptやclaudeなどの製品を介して以前にLLMとやり取りしたことがあり、人間のような反応を理解して生成する能力を個人的に経験したことがあります。
GPT-4oを使用してすべてを処理することはできませんか?執筆時点で最も強力なモデルですが、必ずしも最も実用的な選択肢ではありません。より小さなモデル(30億から140億のパラメーター範囲)を微調整すると、わずかなコストで同等の結果を達成できます。さらに、微調整により、独自の知的財産を所有し、第三者への依存を減らすことができます。
詳細に調整する前に、利用可能なさまざまなタイプのLLMを必ず理解してください:
RENFERTION LEARNIS(RL)は、動作に関するフィードバックを受信することでモデルが学習する手法です。命令モデルまたはダイアログモデルに適用され、その出力の品質をさらに向上させます。通常、RLは、より低い学習率を使用しているため、基礎となるモデルの上で動作しません。これは、大きな変更を加えるには十分ではありません。
DPOは、同じプロンプト/ダイアログアンサーペアの長所と短所を使用してモデルをトレーニングするRLフォームです。これらのペアを提示することにより、モデルは好ましい例を学び、悪い例を回避します。
DPOは、モデルのスタイルや動作を調整する場合に特に便利です。
dpoデータセットを作成
簡単にするために、Huggingfaceの既製データセット:olivermolenschot/alpaca_messages_dpo_testを使用します。データセットを調べると、選択された回答と拒否された回答のヒントが含まれていることに気付くでしょう。これらは良い例と悪い例です。これらのデータは、GPT-3.5-ターボおよびGPT-4合成を使用して作成されました。
通常、過剰な適合せずに効果的にトレーニングするには、少なくとも500〜1000ペアのデータが必要です。最大のDPOデータセットには、最大15,000〜20,000ペアのデータが含まれています。
axolotlを使用してqwen2.5 3b命令モデルを微調整します
クラウド環境をセットアップします
# ... (YAML configuration remains the same) ...
ハードウェア要件:80GB VRAM GPU(1×A100 PCIEノードなど)は、このサイズのモデルに十分なものです。
Huggingface Cache Directoryを設定します:
export HF_HOME=/workspace/hf
# ... (YAML configuration remains the same) ...
これはわずか264行のデータセットであるため、トレーニングには数分しかかかりません。微調整されたモデルは /ワークスペース /DPO出力に保存されます。
CLIを使用してモデルをハグFaceにアップロードできます:
export HF_HOME=/workspace/hf
python -m axolotl.cli.train /workspace/config.yml
YourName/YourRepoを実際のハグFaceユーザー名とリポジトリ名に置き換えます。
評価には、テキスト生成推論(TGI)などのツールを使用して、元のモデルと微調整されたモデルをホストすることをお勧めします。次に、温度設定を0に(決定論的出力を確保するために)2つのモデルについて推論し、2つのモデルの応答を手動で比較します。
この実用的なアプローチは、損失メトリックがLLMの言語生成の微妙さを捉えていない可能性があるため、損失メトリックを評価するためのトレーニングのみに依存するよりも優れた洞察を提供します。
DPOを備えたLLMを微調整すると、モデルをカスタマイズして、コストを管理しながらアプリケーションのニーズをよりよく満たすことができます。この記事で概説されている手順に従って、オープンソースツールとデータセットの力を活用して、特定の要件を満たすモデルを作成できます。 DPOは、応答のスタイルを調整するか、セキュリティ対策を実装するかにかかわらず、LLMを改善する実用的な方法を提供します。
幸せな微調整をお祈りします!
以上が直接優先最適化(DPO)を使用して、Axolotlを使用してオープンソースLLMを微調整するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。