今週、Meta のオープンソース Llama2 が AI コミュニティ全体で人気を博しました。 その結果、今年初めにOpenAIに復帰したテスラの元AIディレクター、アンドレイ・カルパシー氏でさえも黙ってはいられない状況になっている。彼は週末の時間を利用して、Llama2 に関する興味深いプロジェクト「llama2.c」を作成しました。 写真 GitHub アドレス: https://github.com/karpathy/llama2.c それは正確には何ですか?彼によると、「llama2.c」を使用すると、PyTorch でベビー Llama2 モデルをトレーニングし、依存関係のない純粋な C で約 500 行のファイルを使用して推論を実行できるとのことです。さらに、この事前トレーニング済みモデルは、M1 チップを搭載した MacBook Air で fp32 浮動小数点精度を使用して 18 tok/s の速度でストーリーをサンプリングできます。 Karpathy 氏は、「llama2.c」は、上級オープンソース コミュニティ開発者の Georgi Gerganov 氏によって作成され、MacBook で 4 ビット量子化を使用して第 1 世代の LLaMA モデルを実行できるllama.cppに触発されたものであると紹介しました。 「llama2.c」の場合、そのトレーニング コードはnanoGPTから変更されており、Llama2 アーキテクチャのモデルをトレーニングするために使用されます。コアは、以下に示すように run.c で記述された C 推論エンジンですが、現時点では製品レベルのライブラリではありません。以下は推論コードです。 写真 完全なコードアドレス: https://github.com/karpathy/llama2.c/blob/master/run.c この結果に Karpathy 氏は驚きました。それは、(M1) CPU 上の純粋なシングルスレッド C で、fp32 トランザクション レートでより小さな (O (~10MB)) モデルを推論できるという点です。 もちろん、彼は最小のLlama2モデル(70億パラメータ)で推論を実行しようとはしなかったが、非常に遅くなることは予想していたという。 写真 現在、Karpathy は、M1 MacBook Air 上で、fp32 浮動小数点精度と 100tok/s の速度で、15M パラメータを持つ 288 6 層 6 ヘッド モデルの推論を実行できます。 その後、Karpathy 氏はプロジェクトを更新し、「-O3」でコンパイルしました。これにより、M1 MacBook Air の tok/s が 18 から 98 に増加しました。これだけではありません。「-funsafe-math-optimizations」でコンパイルすると、tok/s が 315 に増加します。 gcc コマンドに文字を追加するだけで、速度が 17.5 倍に向上する可能性があるとのことです。 このプロジェクトの意義は何かと疑問に思うかもしれません。 Karpathy 氏の見解では、非常に小さなトランスフォーマーを使って興味深いことができる、より狭い領域 (ストーリーの生成など) がいくつかあるとのことです。 したがって、このような移植可能な純粋な C 実装は、適度なサイズのモデル (数千万のパラメータ) を簡単な方法で高いトランザクション レートで実行できるため、非常に便利です。 一部のネットユーザーは「llama2.c」の開発プロセスに非常に興味を持っています。多くの人がそのような考えを持っていますが、適切な時期を待っているだけです。彼らは、多くの作業が数日で完了できることに気づいていません。 Karpathy 氏は、float32 重みブロックとその上にある小さな推論コードを使用してストーリーを生成することに非常に興味があると答えました。そこで彼は土曜日の一日中(起きてから寝るまで)コードを書いてプロジェクトを機能させることに費やしました。 写真 さらに、カルパシー氏は解説ビデオも出す予定だと語った。 写真 プロジェクトの詳細これまでのところ、「llama2.c」プロジェクトは GitHub で 1.6k スターを獲得しており、急速に成長しています。 写真 以下はプロジェクトの運用手順の簡単な紹介です。 純粋な C でベビー Llama2 モデルを実行するには、次のモデル チェックポイントが必要です。 TinyStories データセットでトレーニングされた 15M パラメータ モデル (約 58MB) をダウンロードし、デフォルトのチェックポイント ディレクトリに配置します。 次に、C コードをコンパイルして実行します。 これは単なる生のトークンのストリームであることに注意してください。残念ながら、C コード (30 行のみ) を単純な変換ラッパーで実行する必要があります。 最後にテキスト ストリームが表示されます。 Karpathy の M1 MacBook Air では約 100 tok/s で動作しますが、これはスーパーネイティブ fp32 シングルスレッド C コードとしては悪くありません。サンプル出力を以下に示します。 写真 |
>>: フォレスター:生成型AIと会話型AIが2023年のトップ10新興テクノロジーを独占
AI が洞察を導き出し、意思決定を行う方法は謎に包まれていることが多く、機械学習の信頼性について懸...
1. インテリジェントビル通信システムの構成インテリジェントビル通信システムは、主に以下の部分で構成...
最近、Google Chinaは新たなPR活動を開始した。そのひとつは、Zhihuで「AIが私たちの...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
顔認識、音声認識、自動運転などが注目されるようになり、人工知能(AI)と社会や人間の生活の融合が急速...
1. マルチモーダル大規模モデルの歴史的発展上の写真は、1956年にアメリカのダートマス大学で開催さ...
11月21日、Deepmindは楽器とボーカルで音楽を生成できるLyriaというオーディオモデルをリ...
軍事情報は戦争と同様、不確実性の多い霧です。予測不可能で、予測不可能です。現在の人工知能の発展傾向か...
この記事では、Amazon EC2 P2 インスタンスをレンタルして使用する方法について簡単に説明し...
[[206395]]さまざまな興味の組み合わせに応じて必要な動画を検索できるのは、毎日無数の動画コン...