? 抱き合う顔のモデル | ブログ | ウェブサイト |始めましょう
Llama モデルを開発していただきありがとうございます。 Llama 3.1 リリースの一部として、Llama の機能を e2e Llama スタックとして拡張する際に、GitHub リポジトリを統合し、いくつかの追加リポジトリを追加しました。今後は次のリポジトリを使用してください。
llama-models - 基本的なユーティリティ、モデル カード、ライセンスおよび使用ポリシーを含む基盤モデルの中央リポジトリ
PurpleLlama - 安全リスクと推論時間の軽減に焦点を当てた Llama スタックの主要コンポーネント
llama-toolchain - モデル開発 (推論/微調整/安全シールド/合成データ生成) インターフェイスと正規実装
llama-agentic-system - 独自の基盤となるインターフェイスを備えた E2E スタンドアロン Llama スタック システムで、エージェント アプリケーションの作成を可能にします。
llama-recipes - コミュニティ主導のスクリプトと統合
ご質問がある場合は、上記のリポジトリのいずれかに問題を提出してください。タイムリーに対応できるよう最善を尽くします。
ありがとう!
私たちは大規模な言語モデルの力を解き放ちます。 Llama の最新バージョンは、あらゆる規模の個人、クリエイター、研究者、企業がアクセスできるようになり、責任を持ってアイデアを実験、革新、拡張できるようになりました。
このリリースには、8B ~ 70B のパラメーターのサイズを含む、事前トレーニングおよび命令調整された Llama 3 言語モデルのモデルの重みと開始コードが含まれています。
このリポジトリは、Llama 3 モデルをロードして推論を実行する最小限の例です。より詳細な例については、「llama-recipes」を参照してください。
モデルの重みとトークナイザーをダウンロードするには、Meta Llama の Web サイトにアクセスし、ライセンスに同意してください。
リクエストが承認されると、署名付きの URL が電子メールで届きます。次に、download.sh スクリプトを実行し、ダウンロードの開始を求めるプロンプトが表示されたら、指定された URL を渡します。
前提条件: wget
とmd5sum
インストールされていることを確認してください。次に、スクリプト./download.sh
を実行します。
リンクは 24 時間および一定量のダウンロード後に期限切れになることに注意してください。 403: Forbidden
などのエラーが表示され始めた場合は、いつでもリンクを再リクエストできます。
また、Hugging Face では、トランスフォーマーとネイティブllama3
形式の両方でダウンロードも提供しています。 Hugging Face からウェイトをダウンロードするには、次の手順に従ってください。
いずれかのリポジトリ (例: metal-llama/Meta-Llama-3-8B-Instruct) にアクセスします。
ライセンスを読んで同意します。リクエストが承認されると、すべての Llama 3 モデルへのアクセスが許可されます。リクエストの処理には最大 1 時間かかっていたことに注意してください。
このリポジトリで使用する元のネイティブ ウェイトをダウンロードするには、[ファイルとバージョン] タブをクリックし、 original
フォルダーの内容をダウンロードします。 pip install huggingface-hub
実行すると、コマンド ラインからダウンロードすることもできます。
ハグフェイス-cli ダウンロード metal-llama/Meta-Llama-3-8B-Instruct --include "original/*" --local-dir metal-llama/Meta-Llama-3-8B-Instruct
トランスフォーマーで使用するために、次のパイプライン スニペットは重みをダウンロードしてキャッシュします。
importTransformersimport torchmodel_id = "meta-llama/Meta-Llama-3-8B-Instruct"pipeline =Transformers.pipeline( "text-generation", model="meta-llama/Meta-Llama-3-8B-Instruct", model_kwargs ={"torch_dtype": torch.bfloat16}、デバイス="cuda", )
以下の手順に従って、Llama 3 モデルをすぐに起動して実行できます。これらの手順により、ローカルで迅速な推論を実行できるようになります。その他の例については、Llama レシピ リポジトリを参照してください。
PyTorch / CUDA を使用して、このリポジトリのクローンを作成し、conda 環境にダウンロードします。
最上位ディレクトリで次を実行します。
pip install -e 。
Meta Llama Web サイトにアクセスし、登録してモデルをダウンロードします。
登録すると、モデルをダウンロードするための URL が記載されたメールが届きます。 download.sh スクリプトを実行するときにこの URL が必要になります。
電子メールを受信したら、ダウンロードした llama リポジトリに移動し、download.sh スクリプトを実行します。
download.shスクリプトに必ず実行権限を付与してください。
このプロセス中に、電子メールにある URL を入力するように求められます。
「リンクをコピー」オプションは使用しないでください。電子メールからリンクを手動でコピーします。
必要なモデルをダウンロードしたら、以下のコマンドを使用してモデルをローカルで実行できます。
torchrun --nproc_per_node 1 example_chat_completion.py --ckpt_dir Meta-Llama-3-8B-Instruct/ --tokenizer_path Meta-Llama-3-8B-Instruct/tokenizer.model --max_seq_len 512 --max_batch_size 6
注記
Meta-Llama-3-8B-Instruct/
チェックポイント ディレクトリへのパスに置き換え、 Meta-Llama-3-8B-Instruct/tokenizer.model
をトークナイザー モデルへのパスに置き換えます。
–nproc_per_node
は、使用しているモデルの MP 値に設定する必要があります。
必要に応じて、 max_seq_len
とmax_batch_size
パラメータを調整します。
この例では、このリポジトリにある example_chat_completion.py を実行しますが、これを別の .py ファイルに変更することもできます。
モデルが異なれば、異なるモデル並列 (MP) 値が必要になります。
モデル | MP |
---|---|
8B | 1 |
70B | 8 |
すべてのモデルは最大 8192 トークンのシーケンス長をサポートしますが、 max_seq_len
とmax_batch_size
値に従ってキャッシュを事前に割り当てます。したがって、ハードウェアに応じて設定してください。
これらのモデルは、チャットや Q&A 用に微調整されていません。期待される答えがプロンプトの自然な続きとなるように、プロンプトを表示する必要があります。
いくつかの例については、 example_text_completion.py
参照してください。これを説明するには、llama-3-8b モデルで実行する以下のコマンドを参照してください ( nproc_per_node
MP
値に設定する必要があります)。
torchrun --nproc_per_node 1 example_text_completion.py --ckpt_dir Meta-Llama-3-8B/ --tokenizer_path Meta-Llama-3-8B/tokenizer.model --max_seq_len 128 --max_batch_size 4
微調整されたモデルは対話アプリケーション用にトレーニングされました。期待される機能とパフォーマンスを得るには、 ChatFormat
で定義された特定の形式に従う必要があります。プロンプトは<|begin_of_text|>
特殊トークンで始まり、その後に 1 つ以上のメッセージが続きます。各メッセージは、 <|start_header_id|>
タグ、ロールsystem
、 user
またはassistant
、および<|end_header_id|>
タグで始まります。二重改行nn
の後にメッセージの内容が続きます。各メッセージの終わりは<|eot_id|>
トークンによってマークされます。
追加の分類子をデプロイして、安全でないとみなされる入力と出力を除外することもできます。推論コードの入力と出力に安全性チェッカーを追加する方法の例については、llama-recipes リポジトリを参照してください。
llama-3-8b-chat を使用した例:
torchrun --nproc_per_node 1 example_chat_completion.py --ckpt_dir Meta-Llama-3-8B-Instruct/ --tokenizer_path Meta-Llama-3-8B-Instruct/tokenizer.model --max_seq_len 512 --max_batch_size 6
Llama 3 は、使用すると潜在的なリスクを伴う新しいテクノロジーです。これまでに実施されたテストでは、すべてのシナリオをカバーできていませんし、カバーできませんでした。開発者がこれらのリスクに対処できるように、私たちは責任ある使用ガイドを作成しました。
ソフトウェアの「バグ」やモデルに関するその他の問題については、次のいずれかの方法で報告してください。
モデルに関する問題の報告: https://github.com/meta-llama/llama3/issues
モデルによって生成された危険なコンテンツの報告:developers.facebook.com/llama_output_フィードバック
バグやセキュリティ上の懸念事項の報告: facebook.com/whitehat/info
MODEL_CARD.md を参照してください。
当社のモデルと分銅は研究者と営利団体にライセンスされており、公開性の原則を維持しています。私たちの使命は、発見と倫理的な AI の進歩の環境を促進しながら、この機会を通じて個人と業界に力を与えることです。
LICENSE ファイルと、それに付随する利用規約を参照してください。
よくある質問については、FAQ をここでご覧ください。新しい質問が発生すると、時間の経過とともに更新されます。