🚀 PrunaAI - AIモデルの最適化
PrunaAIは、AIモデルをより安価で、小型で、高速で、環境にやさしいものに変えることができます。AIモデルの圧縮技術を使って、パフォーマンスを維持しながらリソース使用量を削減します。

🔗 関連リンク
- このモデルが気に入ったら👍を押してください!
- 次に圧縮してほしいモデルを教えてください こちら
- 独自のAIモデルを簡単に圧縮するためのアクセスをリクエスト こちら
- 詳細を知るためのドキュメントを読む こちら
- DiscordでPruna AIコミュニティに参加し、フィードバックや提案を共有したり、助けを求めたりしましょう こちら
✨ 主な機能
PrunaAIはAIモデルを圧縮することで、以下のような利点を提供します。
- 低コスト化:リソース使用量を削減し、運用コストを抑えます。
- 小型化:モデルサイズを小さくし、メモリ使用量を減らします。
- 高速化:推論速度を向上させ、応答時間を短縮します。
- 環境配慮:エネルギー消費量を削減し、環境負荷を低減します。
📦 インストール
以下の手順で圧縮されたモデルを実行できます。
- 元のリポジトリ
google/gemma-2b
の要件を確認してください。特に、Python、CUDA、およびTransformersのバージョンを確認してください。
- 量子化関連のパッケージをインストールしてください。
pip install autoawq
- モデルをロードして実行します。
from transformers import AutoModelForCausalLM, AutoTokenizer
from awq import AutoAWQForCausalLM
model = AutoAWQForCausalLM.from_quantized("PrunaAI/google-gemma-2b-AWQ-4bit-smashed", trust_remote_code=True, device_map='auto')
tokenizer = AutoTokenizer.from_pretrained("google/gemma-2b")
input_ids = tokenizer("What is the color of prunes?,", return_tensors='pt').to(model.device)["input_ids"]
outputs = model.generate(input_ids, max_new_tokens=216)
tokenizer.decode(outputs[0])
📚 ドキュメント
結果

よくある質問
- 圧縮はどのように行われますか? モデルは
awq
を使って圧縮されます。
- モデルの品質はどのように変化しますか? モデルの出力品質は、元のベースモデルと比較して変化する可能性があります。
- モデルの効率性はどのように評価されますか? これらの結果は、NVIDIA A100-PCIE-40GBで、
model/smash_config.json
に記載された設定で取得され、ハードウェアのウォームアップ後に取得されます。圧縮されたモデルは、元のベースモデルと直接比較されます。効率性の結果は、他の設定(例:他のハードウェア、画像サイズ、バッチサイズなど)では異なる場合があります。圧縮されたモデルがあなたに有益かどうかを知るために、実際の使用条件で直接実行することをお勧めします。
- モデルの形式は何ですか? 私たちは
safetensors
を使用しています。
- どのようなキャリブレーションデータが使用されましたか? 圧縮方法に必要な場合、キャリブレーションデータとして
WikiText
を使用しました。
- Pruna Huggingfaceモデルの命名規則は何ですか? 測定された推論速度、推論メモリ、または推論エネルギー消費量が元のベースモデルの90%未満である場合、元のモデル名に "turbo"、"tiny"、または "green" を追加します。
- 自分のモデルを圧縮するにはどうすればいいですか? より多くの圧縮方法と特定のユースケースに対する技術サポートへのプレミアムアクセスをリクエストできます こちら。
- "first" メトリクスとは何ですか? "first" と記載された結果は、モデルの最初の実行後に取得されます。最初の実行は、CUDAのオーバーヘッドのため、その後の実行よりも多くのメモリを使用するか、遅くなる可能性があります。
- "Sync" と "Async" メトリクスとは何ですか? "Sync" メトリクスは、すべてのGPUプロセスを同期し、すべてのプロセスが実行されたときに測定を停止することで取得されます。"Async" メトリクスは、すべてのGPUプロセスを同期せずに、モデルの出力がCPUで使用できるようになったときに停止することで取得されます。これらの両方のメトリクスを提供するのは、ユースケースによってはどちらも関連する可能性があるためです。ユースケースでの効率性の向上を直接テストすることをお勧めします。
設定
設定情報は smash_config.json
に記載されています。
📄 ライセンス
圧縮されたモデルのライセンスは、元のモデルのライセンスに従います。このモデルのベースとなった元のモデル google/gemma-2b
のライセンスを使用する前に確認してください。pruna-engine
のライセンスは こちら で確認できます。
他のモデルを圧縮したい場合
- 次に圧縮してほしいモデルを教えてください こちら
- 独自のAIモデルを簡単に圧縮するためのアクセスをリクエスト こちら