ホームページ  >  記事  >  テクノロジー周辺機器  >  58 行のコードは Llama 3 から 100 万コンテキストまで拡張可能、あらゆる微調整バージョンが適用可能

58 行のコードは Llama 3 から 100 万コンテキストまで拡張可能、あらゆる微調整バージョンが適用可能

WBOY
WBOY転載
2024-05-06 18:10:081155ブラウズ

Llama 3、オープンソースの雄大な王様、オリジナルのコンテキストウィンドウは、実際には...8k しかありません。これには「本当に」という言葉を飲み込みました。おいしい」とまた口元に。。

現在、32k が開始点であり、100k が一般的ですが、これはオープンソース コミュニティへの貢献の余地を意図的に残しているのでしょうか?

オープンソース コミュニティは、この機会を決して逃すことはありません:

わずか 58 行のコードで、Llama 3 70b の微調整されたバージョンであれば、 1048k(100万)コンテキストは自動的に拡張されます。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

# 舞台裏には、コンテキストを拡張する Llama 3 70B 命令の微調整バージョンから抽出された LoRA があります。

ファイルはわずか 800mb です。

次に、Mergekit を使用して、同じアーキテクチャの他のモデルで実行したり、モデルに直接マージしたりできます。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

使用された 1048k コンテキストの微調整バージョンは、人気の干し草の山に針を入れるテストでオールグリーン (精度 100%) のスコアを達成しました。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

オープンソースの進歩のスピードは指数関数的であると言わざるを得ません。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

1048k コンテキスト LoRA の作成方法

まず、Llama 3 微調整モデルの 1048k コンテキスト バージョンは

Gradient AI から来ています。 はエンタープライズ AI ソリューションのスタートアップです。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

対応する LoRA は、開発者

Eric Hartford によるもので、微調整されたモデルと元のバージョンの違いを比較します。 、パラメータはさまざまに抽出されます。

彼は最初に 524k コンテキスト バージョンを作成し、次に 1048k バージョンを更新しました。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

まず、Gradient チームはオリジナルの Llama 3 70B Instruct に基づいてトレーニングを継続し、Llama-3-70B-Instruct-Gradient-1048k を取得しました。

具体的な方法は次のとおりです:

  • 位置エンコーディングの調整: RoPE theta を NTK で初期化します。意識的な補間 最適なスケジューリング、長さを延長した後の高周波情報の損失を防ぐための最適化
  • プログレッシブ トレーニング: カリフォルニア大学バークレー校によって提案Pieter Abbeel チーム Blockwise RingAttendance メソッドはモデルのコンテキスト長を拡張します
チームがカスタム ネットワーク トポロジを通じて Ring Attendance の上に並列化を階層化し、大規模な GPU クラスターをより有効に利用して対処していることは注目に値します。デバイス間でのネットワーク ボトルネックは、ノード間で多くの KV ブロックを転送することによって引き起こされます。

最終的に、モデルのトレーニング速度は 33 倍に向上しました。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

#長文検索の性能評価では、最難関バージョンに限り、文章の途中に「針」が隠れている場合にエラーが発生しやすくなります。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

拡張コンテキストを含む微調整モデルを取得した後、オープン ソース ツール Mergekit を使用して、微調整モデルと基本モデルを作成し、パラメータの差分をLoRAとして抽出します。

また、Mergekit を使用すると、抽出された LoRA を同じアーキテクチャを持つ他のモデルにマージできます。

マージ コードも、Eric Hartford によって GitHub でオープンソース化されており、わずか 58 行です。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

この LoRA マージが中国語用に微調整された Llama 3 で機能するかどうかは不明です。

しかし、中国の開発者コミュニティがこの開発に注目していることがわかります。

58行代码把Llama 3扩展到100万上下文,任何微调版都适用

#524k バージョン LoRA: https://huggingface.co/cognitivecomputations/Llama-3-70B-Gradient-524k-adapter

1048k バージョン LoRA: https://huggingface.co/cognitivecomputations/Llama-3-70B-Gradient-1048k-adapter

# #マージコード:

https://gist.github.com/ehartford/731e3f7079db234fa1b79a01e09859ac

以上が58 行のコードは Llama 3 から 100 万コンテキストまで拡張可能、あらゆる微調整バージョンが適用可能の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。