LLM workshop 2024
1.0.0
このチュートリアルは、大規模な言語モデル(LLMS)の構成要素、LLMSの仕組み、およびPytorchでゼロからそれらをコードする方法を理解することに関心のあるコーダーを対象としています。 LLMS、最近のマイルストーン、およびそれらのユースケースの紹介でこのチュートリアルを開始します。次に、データ入力パイプライン、コアアーキテクチャコンポーネント、事前供与コードを含む、小さなGPTのようなLLMをコーディングします。すべてがどのように適合し、LLMを冒険する方法を理解した後、オープンソースライブラリを使用して、前提条件の重みとFinetune LLMをロードする方法を学びます。
コード資料は、Scratch Bookの大規模な言語モデルのビルドに基づいており、Litgptライブラリも使用しています。
すべてのコードの例と依存関係がインストールされているすぐに、すぐに使用できるクラウド環境がこちらから入手できます。これにより、参加者は、特にGPUで、特に事前トレーニングおよび微調整セクションですべてのコードを実行できます。
さらに、セットアップフォルダーの指示を参照して、コンピューターをセットアップしてコードをローカルに実行します。
| タイトル | 説明 | フォルダ | |
|---|---|---|---|
| 1 | LLMSの紹介 | LLMSを紹介するワークショップの紹介、このワークショップでカバーされているトピック、および設定手順。 | 01_intro |
| 2 | LLM入力データの理解 | このセクションでは、テキストトークンザーとLLM用のカスタムPytorch Dataloaderを実装することにより、テキスト入力パイプラインをコーディングしています | 02_DATA |
| 3 | LLMアーキテクチャのコーディング | このセクションでは、LLMSの個々のビルディングブロックを調べて、コードで組み立てます。すべてのモジュールを細かく詳細にカバーするわけではありませんが、より大きな画像とそれらをGPTのようなモデルに組み立てる方法に焦点を当てます。 | 03_architecture |
| 4 | LLMを前処理します | パート4では、LLMSの事前削除プロセスをカバーし、コードを実装して、以前に実装したモデルアーキテクチャを冒移します。事前トレーニングは高価であるため、LLMがいくつかの基本的な文章を生成できるように、パブリックドメインで利用可能な小さなテキストサンプルでのみ脱線します。 | 04_pretraining |
| 5 | 前提条件の重みを積みます | 事前トレーニングは長くて高価なプロセスであるため、自己実現したアーキテクチャに前処理された重みをロードします。次に、LITGPTオープンソースライブラリを導入します。これは、トレーニングおよびフィニッシュLLMのためのより洗練された(まだ読みやすい)コードを提供します。 litgptで、事前に処理されたLLMS(llama、phi、gemma、mistral)の重量をロードする方法を学びます。 | 05_WeightLoading |
| 6 | Finetuning LLMS | このセクションでは、LLM Finetuning技術を紹介します。命令Finetuningのための小さなデータセットを準備します。これを使用して、LITGPTでLLMを獲得するために使用します。 | 06_FINETUNING |
(コード資料は、Scratch Bookからの大規模な言語モデルのビルドに基づいており、Litgptライブラリも使用しています。)