ホームページ >テクノロジー周辺機器 >AI >Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキスト

Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキスト

王林
王林転載
2023-05-28 21:40:111254ブラウズ

Google がオープンソース化していない PaLM が、ネチズンによってオープンソース化されました。

昨日、開発者が GitHub で PaLM モデルの 3 つのミニチュア バージョンをオープンソースしました。パラメーターは 1 億 5,000 万 (PalM-150m)、4 億 1,000 万 (PalM-410m)、および 10 億 (PalM) -1b)。

Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキスト

プロジェクトアドレス: https://github.com/conceptofmind/PaLM

これら 3 つのモデルは、コンテキスト長 8k の Google C4 データセットでトレーニングされました。将来的には、20 億のパラメータを持つモデルがトレーニングされる予定です。

Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキスト

#Google C4 データセットオープンソース PaLM

4 億 1,000 万のパラメーター モデルを使用して生成された例:

私の犬はとてもかわいいですが、他の犬と交流するのがあまり得意ではありません。この犬は新しい人が大好きで、他の犬と遊ぶのが好きです。犬。他の犬と一緒に公園に連れて行く必要があります。確かに子犬のような口臭がしますが、それは行きたくない方向に走り去ったときだけです。現在、私の犬はとてもひどい状態です。いたずらっ子です。公園で挨拶したいのですが、しばらくは自分の世話をしたいと思っています。口臭もあります。口腔矯正器具を付けてもらわなければなりません。3 か月になります。犬はこうなりました。口の周りに刺すような痛みがあります。犬はとても臆病で怖がっています。犬は人に対して攻撃的です。犬はとても遊び好きで、少し甘えん坊です。それが犬のせいなのか、それとも甘やかされているのかわかりません。彼は、 「おもちゃが大好きで、ただ遊びたいだけです。いつもおもちゃで遊んで、散歩にも行きます。彼は少し好き嫌いがあり、他の犬とはあまり仲良くありません。その犬は公園に行く小さな子犬です。彼ははとてもフレンドリーな犬です。口も口臭も悪くなかったです。

うちの犬はとてもかわいいのですが、他の犬と交流するのが苦手です。この犬は新しい人が大好きで、他の犬と遊ぶのが大好きです。他の犬たちと一緒に公園に連れて行かなければなりません。子犬のような息が少しありますが、それは行きたくない方向に走るときだけです。今、私の犬はとてもやんちゃです。彼は公園で挨拶したかったが、それよりもしばらく自分の世話をしたいと考えていた。彼には口臭もあります。彼に口腔矯正器具を買わなければならなくなってから 3 か月が経ちました。犬の口の周りには痛い噛み跡がいくつかあります。この犬はとても臆病で怖がりです。この犬はとても遊び好きで、少し甘えん坊です。それが犬のせいなのか、それとも単に甘やかされていただけなのかはわかりません。彼はおもちゃが大好きで、ただおもちゃで遊びたいだけなのです。彼はいつもおもちゃで遊んでおり、散歩にも出かけています。彼は少し好き嫌いがあり、他の犬とは仲良くできません。その犬は公園に行くただの子犬でした。彼はとてもフレンドリーな犬です。彼にはもう口臭の問題はありません。

パラメータは確かに少し小さいですが、生成される効果を説明するのはまだ少し難しいです...

これらのモデルは、多くの一般的なモデルと互換性があります。 Lucidrain リポジトリ ( Toolformer-pytorch 、 PalM-rlhf-pytorch 、および PalM-pytorch など)。

最新の 3 つのオープン ソース モデルはベースライン モデルであり、大規模なデータ セットでトレーニングされる予定です。

すべてのモデルは、FLAN の指示に従ってさらに調整され、flan-PaLM モデルが提供されます。

Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキストオープン ソースの PaLM モデルは、Flash アテンションと Xpos ロータリー エンベディングを通じてトレーニングされるため、より優れた長さの外挿が実現され、複数のクエリの単一キー値のアテンションが使用されます。より効率的なデコードを可能にします。

最適化アルゴリズムに関しては、分離された重み減衰 Adam W が使用されますが、Mitchell Wortsman の Stable Adam W の使用を選択することもできます。

現在、モデルはトーチ ハブにアップロードされており、ファイルは Huggingface ハブにも保存されています。

Torch ハブからモデルを正しくダウンロードできない場合は、.cache/torch/hub/ 内のチェックポイントとモデル フォルダーを必ずクリアしてください。それでも問題が解決しない場合は、Huggingface のリポジトリからファイルをダウンロードできます。現在、Huggingface の統合が進行中です。

すべてのトレーニング データは GPTNEOX タガーで事前にラベル付けされており、シーケンスの長さは 8192 にカットされています。これにより、データの前処理にかかるコストを大幅に節約できます。

これらのデータセットは寄木細工形式で Huggingface に保存されています。ここで個々のデータ チャンクを見つけることができます: C4 チャンク 1、C4 チャンク 2、C4 チャンク 3、C4 チャンク 4、および C4チャンク5。

分散トレーニング スクリプトには、提供された事前にラベル付けされた C4 データセットを使用せず、openwebtext などの別のデータセットをロードして処理する別のオプションがあります。

インストール

モデルを実行する前に、一連のインストールが必要です。

<code>git clone https://github.com/conceptofmind/PaLM.gitcd PaLM/pip3 install -r requirements.txt</code>

使用方法

Torch ハブを使用して事前トレーニングされたモデルを読み込むことで、追加のトレーニングや微調整を行うことができます:

<code>model = torch.hub.load("conceptofmind/PaLM", "palm_410m_8k_v0").cuda()</code>

さらに、次の方法で PyTorch モデル チェックポイントを直接ロードすることもできます:

<code>from palm_rlhf_pytorch import PaLMmodel = PaLM(num_tokens=50304, dim=1024, depth=24, dim_head=128, heads=8, flash_attn=True, qk_rmsnorm = False,).cuda()model.load('/palm_410m_8k_v0.pt')</code>

モデルを使用してテキストを生成するには、次のようにします。コマンドライン:

prompt - テキストを生成するためのプロンプト。

seq _ len - 生成されるテキストのシーケンス長。デフォルト値は 256 です。

temperture - サンプリング温度、デフォルトは 0.8

filter_thres - サンプリングに使用されるフィルターしきい値。デフォルト値は 0.9 です。

model - 生成に使用するモデル。 3 つの異なるパラメータ (150m、410m、1b): Palm_150m_8k_v0、palm_410m_8k_v0、palm_1b_8k_v0 があります。

<code>python3 inference.py "My dog is very cute" --seq_len 256 --temperature 0.8 --filter_thres 0.9 --model "palm_410m_8k_v0"</code>

パフォーマンスを向上させるために、推論では torch.compile()、Flash Attendance、および Hidet を使用します。

ストリーム処理などの機能を追加して世代を拡張したい場合、作者は汎用推論スクリプト「inference.py」を提供しています。

トレーニング

これらの「オープンソース Palm」モデルは、64 個の A100 (80GB) GPU でトレーニングされました。

モデルのトレーニングを容易にするために、作者は分散トレーニング スクリプト train_distributed.py も提供しています。

ハードウェア要件を満たすためにモデル レイヤーとハイパーパラメーターの構成を自由に変更できます。また、モデルの重みをロードしてトレーニング スクリプトを変更してモデルを微調整することもできます。

最後に、作者は特定の微調整スクリプトを追加し、将来的に LoRA を探索する予定であると述べました。

Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキスト

データ

データは、トレーニング中に使用される C4 と同様の build_dataset.py スクリプトを実行することで生成できます。さまざまなデータセットを前処理するデータセット方法。これにより、データに事前にラベルが付けられ、指定されたシーケンス長のチャンクに分割され、Huggingface ハブにアップロードされます。

例:

<code>python3 build_dataset.py --seed 42 --seq_len 8192 --hf_account "your_hf_account" --tokenizer "EleutherAI/gpt-neox-20b" --dataset_name "EleutherAI/the_pile_deduplicated"</code>

PaLM 2 が登場します

2022 年 4 月、Google は最初の 5,400 億ドルを正式に発表しましたPaLM の time パラメータ。他の LLM と同様に、PaLM はさまざまなテキストの生成および編集タスクを実行できます。

PaLM は、Google が Pathways システムを初めて大規模に使用してトレーニングを 6144 チップに拡張したもので、これはこれまでトレーニングに使用された TPU ベースのシステム構成としては最大です。

その理解力は抜群で、ジョークを理解するだけでなく、理解できないあなたに面白いポイントを説明してくれるのです。

Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキスト

ちょうど 3 月中旬、Google は PaLM 大規模言語モデル API を初めて公開しました。

Google は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキスト

これは、テキストの要約、コードの作成、さらには PaLM を ChatGPT のような会話型チャットボットにトレーニングするなどのタスクを完了するためにこれを使用できることを意味します。 。

今後開催される Google 年次 I/O カンファレンスで、ピチャイ氏は AI 分野における同社の最新開発について発表します。

最新かつ最先端の大規模言語モデルPaLM 2が間もなく発売されると言われています。

PaLM 2 には 100 以上の言語が含まれており、内部コード名「Unified Language Model」(統一言語モデル) で実行されてきました。また、コーディングや数学、クリエイティブライティングなどの広範なテストも実施します。

先月、Googleは、同社の医療LLM「Med-PalM2」が「専門医師レベル」で85%の精度で健康診断の質問に答えることができると発表した。

さらに、Google は、検索用の生成エクスペリエンスと同様に、大規模モデルでサポートされるチャット ロボットである Bard もリリースする予定です。

最新の AI リリースが Google の姿勢を正すことができるかどうかはまだわかりません。

以上がGoogle は PaLM をオープンソース化していませんが、ネチズンは PaLM をオープンソース化しています。数千億のパラメータのミニチュア バージョン: 最大はわずか 10 億、8k コンテキストの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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