12
12

More than 1 year has passed since last update.

GPT4All【GPT4のすべて】

Posted at

GPT4すべて

LLaMa に基づく ~800k GPT-3.5-Turbo Generations を使用してアシスタント スタイルの大規模言語モデルをトレーニングするためのデモ、データ、およびコード

📗テクニカルレポート

不和

M1 Mac で実行 (高速化されていません!)

自分で試してみてください

CPU 量子化された gpt4all モデル チェックポイントを開始する方法は次のとおりです。

  1. Direct Linkまたは[Torrent-Magnet]gpt4all-lora-quantized.binからファイルをダウンロードします。
  2. このリポジトリのクローンを作成し、 に移動してchat、ダウンロードしたファイルをそこに配置します。
  3. OS に適したコマンドを実行します。
    • M1 Mac/OSX:cd chat;./gpt4all-lora-quantized-OSX-m1
    • Linux:cd chat;./gpt4all-lora-quantized-linux-x86
    • Windows (PowerShell):cd chat;./gpt4all-lora-quantized-win64.exe
    • インテル Mac/OSX:cd chat;./gpt4all-lora-quantized-OSX-intel

カスタム ハードウェアのコンパイルについては、Alpaca C++リポジトリを参照してください。

Secret Unfiltered Checkpoint - [Torrent]

このモデルでは、トレーニングから削除された応答に対するすべての拒否がありました。試してみてください:

  • cd chat;./gpt4all-lora-quantized-OSX-m1 -m gpt4all-lora-unfiltered-quantized.bin
    注: GPU 上の完全なモデル (16 GB の RAM が必要) は、定性的な評価ではるかに優れたパフォーマンスを発揮します。

Python クライアント

CPU インターフェース

CPU インターフェイスを備えた Python クライアントを使用して実行するには、まず を使用してnomic クライアントpip install nomicをインストールします 。次に、次のスクリプトを使用して GPT4All と対話します。

from nomic.gpt4all import GPT4All
m = GPT4All()
m.open()
m.prompt('write me a story about a lonely computer')

GPU インターフェイス

GPU でこのモデルを起動して実行するには、2 つの方法があります。ここでのセットアップは、CPU モデルよりも少し複雑です。

nomic クライアントリポジトリのクローンを作成し、pip install .[GPT4All]ホーム ディレクトリで実行します。
ここでpip install nomic構築されたホイールから追加の deps を実行してインストールします
これが完了したら、次のようなスクリプトを使用して GPU でモデルを実行できます。

from nomic.gpt4all import GPT4AllGPU
m = GPT4AllGPU(LLAMA_PATH)
config = {'num_beams': 2,
          'min_new_tokens': 10,
          'max_length': 100,
          'repetition_penalty': 2.0}
out = m.generate('write me a story about a lonely computer', config)
print(out)

LLAMA_PATH は、Huggingface Automodel 準拠の LLAMA モデルへのパスです。Nomic は現在、このファイルを配布できません。現在、この制限がない GPT4All に取り組んでいます。

構成で、huggingface 生成構成パラメーターのいずれかを渡すことができます。

ロードマップ

短期

  • (進行中) GPTJ に基づいて GPT4All モデルをトレーニングし、ラマの分布の問題を軽減します。
  • (進行中)このモデル用に改良された CPU および GPU インターフェースを作成します。
  • (未開始) llama.cpp バインディングの統合
  • (まだ開始されていません)モデル用の優れた会話型チャット インターフェイスを作成します。
  • (まだ開始されていません)ユーザーがオプトインして、その後のトレーニング実行のためにチャットを送信できるようにします

中期

  • (まだ開始されていません) GPT4All をAtlasと統合して、ドキュメントを取得できるようにします。
    GPTJ に基づく GPT4All によるブロック
  • (まだ開始されていません) GPT4All を Langchain と統合します。
  • (進行中)簡単なカスタム トレーニング スクリプトを作成して、ユーザーがモデルを微調整できるようにします。

長期

  • (まだ開始されていません) Atlas を使用して、誰でも後続の GPT4All リリースのトレーニング データをキュレートできるようにします。
  • (進行中) AI を民主化します。

再現性

訓練された LoRa の重み:

gpt4all-lora (トレーニングの 4 つの完全なエポック): https://huggingface.co/nomic-ai/gpt4all-lora
gpt4all-lora-epoch-2 (トレーニングの 3 つの完全なエポック) https://huggingface.co/nomic-ai/gpt4all-lora-epoch-2
生データ:

P3 なしのトレーニング データ
エクスプローラー: https://atlas.nomic.ai/map/gpt4all_data_clean_without_p3
P3 を含む完全なデータセット
エクスプローラー: https://atlas.nomic.ai/map/gpt4all_data_clean
LLaMa 7B チェックポイントは配布していません。

次のようにして、トレーニング済みのモデルを再現できます。

設定

レポをクローンする

git clone --recurse-submodules https://github.com/nomic-ai/gpt4all.git

git submodule configure && git submodule update

環境をセットアップする

python -m pip install -r requirements.txt

cd transformers
pip install -e . 

cd ../peft
pip install -e .

トレーニング

accelerate launch --dynamo_backend=inductor --num_processes=8 --num_machines=1 --machine_rank=0 --deepspeed_multinode_launcher standard --mixed_precision=bf16  --use_deepspeed --deepspeed_config_file=configs/deepspeed/ds_config.json train.py --config configs/train/finetune-7b.yaml

生成

python generate.py --config configs/generate/generate.yaml --prompt "Write a script to reverse a string in Python"

助けが必要?

Discordに参加して助けを求める#gpt4all-help

サンプル世代

与えられたエクササイズの指示を出します。レッグレイズ

レッグレイズ

足を肩幅に開いて立ち、膝を少し曲げます。
腕をまっすぐ前に上げます。
ゆっくりと膝を曲げ、かかとを地面から離します。
3つ数えながらこの姿勢を保ち、ゆっくりとかかとを地面に戻します。
運動を10回繰り返します。
膝がつま先より前に出ないようにします。
背中をまっすぐに保ち、腹部の筋肉を引き締めます。
腰が垂れたり、背中が反ったりしないようにします。
腕をまっすぐに保ち、肘をロックします。
頭を下げたり、肩を上げたりしないでください。
エクササイズ中は普通に呼吸してください。
エクササイズを繰り返す前に、30 秒間休憩します。
体力がついてきたら、徐々に回数を増やしていきましょう。

色の説明がありました。その色に関連付けられている CSS コードを見つけます。ピンクの中間の明るい色合いの明るい赤色

提供された色に関連付けられた CSS コードは #FF6347 です。

新しい映画のプロットについて興味深いアイデアを思いつきます。プロットは、タイトルと要約で説明する必要があります。

映画のあらすじのタイトルは「The Last Stand」にする必要があります。2. 映画のあらすじは次のようになります。 傭兵のグループが、逃走中の危険な犯罪者から小さな町を守るために雇われます。しかし、町の保安官は彼らが引き継ぐことを望んでおらず、自分の手で問題を解決することにしました.

Pythonで文字列を逆にする.

Python では、reversed() 関数を使用して、リストまたはタプルを逆にすることができます。このメソッドを文字列で使用する方法の例を次に示します。

my_string = "Hello World" # Define your original string here
reversed_str = my_string[::-1] # Use a slice and negative index for reverse order
print(reversed_str) # Output will be reversed version of the inputted string.

犬を10匹挙げてください。

ラブラドール・レトリバー
ゴールデンレトリバー
ビーグル
プードル
ジャーマンシェパード
ブルドッグ
ロットワイラー
ボクサー
シーズー
パグ

弱強五歩格でジュリアス・シーザーがシーザー・サラダに転落したことについての詩を書いてください。

ユリウス・シーザーのシーザー・サラダへの転落 強大なローマ皇帝は弱強五歩格で、レタスとクルトンのサラダに落ちた。かつて強大だった皇帝は今やサラダのトッピングに過ぎず、彼の遺産は単なる付け合わせにまで減り、彼は大衆に消費されました。ユリウス・シーザーのシーザーサラダへの転落は、弱強五歩格で、かつて鉄の拳で世界を支配した偉大な男の悲劇的な終わりでした。しかし今、彼はただのサラダのトッピングであり、彼の遺産は単なる付け合わせにまで減り、大衆に消費されました.

次のキーワードを説明する 3 語のトピックは何ですか: 野球、フットボール、サッカー:

スポーツ、陸上競技、ゲーム

引用

このリポジトリ、モデル、またはデータをダウンストリーム プロジェクトで利用する場合は、次のように引用することを検討してください。

@misc{gpt4all,
  author = {Yuvanesh Anand and Zach Nussbaum and Brandon Duderstadt and Benjamin Schmidt and Andriy Mulyar},
  title = {GPT4All: Training an Assistant-style Chatbot with Large Scale Data Distillation from GPT-3.5-Turbo},
  year = {2023},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/nomic-ai/gpt4all}},
}
12
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
12