モデル概要
モデル特徴
モデル能力
使用事例
🚀 granite-3.2-2b-instruct GGUF モデル
このモデルは、テキスト生成に特化したモデルで、ハードウェア能力やメモリ制約に応じて最適な形式を選択することができます。また、様々な言語に対応しており、多様なタスクを処理することが可能です。
🚀 クイックスタート
適切なモデル形式の選択
正しいモデル形式を選択するには、ハードウェア能力とメモリ制約を考慮する必要があります。
BF16 (ブレインフロート16) – BF16アクセラレーションが利用可能な場合に使用
- 高速な計算を目的とした16ビット浮動小数点数形式で、良好な精度を維持します。
- FP32と同様のダイナミックレンジを持ち、低いメモリ使用量です。
- ハードウェアがBF16アクセラレーションをサポートしている場合に推奨されます(デバイスの仕様を確認してください)。
- FP32と比較してメモリ使用量を削減した高性能推論に最適です。
📌 BF16を使用する場合: ✔ ハードウェアがネイティブでBF16をサポートしている場合(例:新しいGPU、TPU)。 ✔ メモリを節約しながらより高い精度が必要な場合。 ✔ モデルを別の形式に再量子化する予定の場合。
📌 BF16を避ける場合: ❌ ハードウェアがBF16をサポートしていない場合(FP32にフォールバックし、低速になる可能性があります)。 ❌ BF16最適化がない古いデバイスとの互換性が必要な場合。
F16 (浮動小数点数16) – BF16よりも広くサポートされています
- 16ビット浮動小数点数形式で、精度が高いですが、BF16よりも値の範囲が狭いです。
- FP16アクセラレーションをサポートするほとんどのデバイスで動作します(多くのGPUや一部のCPUを含みます)。
- BF16よりもわずかに数値精度が低いですが、一般的に推論には十分です。
📌 F16を使用する場合: ✔ ハードウェアがFP16をサポートしているが、BF16をサポートしていない場合。 ✔ 速度、メモリ使用量、精度のバランスが必要な場合。 ✔ GPUまたはFP16計算用に最適化された他のデバイスで実行している場合。
📌 F16を避ける場合: ❌ デバイスがネイティブでFP16をサポートしていない場合(予想よりも低速になる可能性があります)。 ❌ メモリ制限がある場合。
量子化モデル (Q4_K, Q6_K, Q8, など) – CPUと低VRAM推論用
量子化は、可能な限り精度を維持しながら、モデルサイズとメモリ使用量を削減します。
- 低ビットモデル (Q4_K) → 最小限のメモリ使用量に最適で、精度が低くなる可能性があります。
- 高ビットモデル (Q6_K, Q8_0) → より高い精度が必要で、より多くのメモリが必要です。
📌 量子化モデルを使用する場合: ✔ CPUで推論を実行し、最適化されたモデルが必要な場合。 ✔ デバイスのVRAMが少なく、フル精度のモデルをロードできない場合。 ✔ 適度な精度を維持しながらメモリ使用量を削減したい場合。
📌 量子化モデルを避ける場合: ❌ 最大精度が必要な場合(フル精度のモデルの方が適しています)。 ❌ ハードウェアに高い精度の形式(BF16/F16)に対応する十分なVRAMがある場合。
超低ビット量子化 (IQ3_XS, IQ3_S, IQ3_M, Q4_K, Q4_0)
これらのモデルは、極端なメモリ効率のために最適化されており、低電力デバイスまたはメモリが重要な制約となる大規模展開に最適です。
-
IQ3_XS:超低ビット量子化(3ビット)で、極端なメモリ効率を実現します。
- 使用ケース:Q4_Kでも大きすぎる超低メモリデバイスに最適です。
- トレードオフ:高ビット量子化と比較して精度が低くなります。
-
IQ3_S:最大限のメモリ効率のための小さなブロックサイズ。
- 使用ケース:IQ3_XSが過度に激しい低メモリデバイスに最適です。
-
IQ3_M:IQ3_Sよりも精度が高い中サイズのブロック。
- 使用ケース:IQ3_Sが制限的すぎる低メモリデバイスに適しています。
-
Q4_K:ブロック単位の最適化により、精度が向上した4ビット量子化。
- 使用ケース:Q6_Kが大きすぎる低メモリデバイスに最適です。
-
Q4_0:純粋な4ビット量子化で、ARMデバイス用に最適化されています。
- 使用ケース:ARMベースのデバイスまたは低メモリ環境に最適です。
要約表: モデル形式の選択
モデル形式 | 精度 | メモリ使用量 | デバイス要件 | 最適な使用ケース |
---|---|---|---|---|
BF16 | 最高 | 高 | BF16対応のGPU/CPU | メモリを削減した高速推論 |
F16 | 高 | 高 | FP16対応のデバイス | BF16が利用できない場合のGPU推論 |
Q4_K | 中程度の低精度 | 低 | CPUまたは低VRAMデバイス | メモリ制約のある環境に最適 |
Q6_K | 中程度 | 適度 | より多くのメモリを持つCPU | 量子化されたままでもより高い精度 |
Q8_0 | 高 | 適度 | 十分なVRAMを持つCPUまたはGPU | 量子化モデルの中で最も高い精度 |
IQ3_XS | 非常に低い | 非常に低い | 超低メモリデバイス | 極端なメモリ効率と低い精度 |
Q4_0 | 低 | 低 | ARMまたは低メモリデバイス | llama.cppはARMデバイス用に最適化できます |
含まれるファイルと詳細
granite-3.2-2b-instruct-bf16.gguf
- モデルの重みがBF16で保存されています。
- モデルを別の形式に再量子化したい場合に使用します。
- デバイスがBF16アクセラレーションをサポートしている場合に最適です。
granite-3.2-2b-instruct-f16.gguf
- モデルの重みがF16で保存されています。
- デバイスがFP16をサポートしている場合、特にBF16が利用できない場合に使用します。
granite-3.2-2b-instruct-bf16-q8_0.gguf
- 出力と埋め込みはBF16のままです。
- その他のすべてのレイヤーはQ8_0に量子化されています。
- デバイスがBF16をサポートし、量子化バージョンが必要な場合に使用します。
granite-3.2-2b-instruct-f16-q8_0.gguf
- 出力と埋め込みはF16のままです。
- その他のすべてのレイヤーはQ8_0に量子化されています。
granite-3.2-2b-instruct-q4_k.gguf
- 出力と埋め込みはQ8_0に量子化されています。
- その他のすべてのレイヤーはQ4_Kに量子化されています。
- メモリが限られたCPU推論に適しています。
granite-3.2-2b-instruct-q4_k_s.gguf
- 最小のQ4_Kバリアントで、精度を犠牲にしてメモリ使用量を削減します。
- 非常に低いメモリ設定に最適です。
granite-3.2-2b-instruct-q6_k.gguf
- 出力と埋め込みはQ8_0に量子化されています。
- その他のすべてのレイヤーはQ6_Kに量子化されています。
granite-3.2-2b-instruct-q8_0.gguf
- 完全にQ8に量子化されたモデルで、より高い精度を提供します。
- より多くのメモリが必要ですが、高い精度を実現します。
granite-3.2-2b-instruct-iq3_xs.gguf
- IQ3_XS量子化で、極端なメモリ効率のために最適化されています。
- 超低メモリデバイスに最適です。
granite-3.2-2b-instruct-iq3_m.gguf
- IQ3_M量子化で、中程度のブロックサイズでより高い精度を提供します。
- 低メモリデバイスに適しています。
granite-3.2-2b-instruct-q4_0.gguf
- 純粋なQ4_0量子化で、ARMデバイス用に最適化されています。
- 低メモリ環境に最適です。
- より高い精度が必要な場合はIQ4_NLを選択してください。
🚀 これらのモデルが役に立った場合
❤ もしこれが役に立ったら、「いいね」をクリックしてください! 量子対応のセキュリティチェックを備えたAI搭載のネットワークモニターアシスタントをテストしてください: 👉 無料のネットワークモニター
💬 テスト方法:
- チャットアイコンをクリックします(任意のページの右下にあります)
- AIアシスタントの種類を選択します:
TurboLLM
(GPT - 4 - mini)FreeLLM
(オープンソース)TestLLM
(実験的なCPU専用)
テスト内容
私は、AIネットワークモニタリング向けの小規模なオープンソースモデルの限界を追求しています。具体的には:
- 実際のネットワークサービスに対する関数呼び出し
- 以下の処理を行いながら、モデルをどれだけ小さくできるか:
- 自動化されたNmapスキャン
- 量子対応チェック
- Metasploit統合
🟡 TestLLM – 現在の実験的モデル(6 CPUスレッドでのllama.cpp):
- ✅ ゼロコンフィギュレーションセットアップ
- ⏳ 30秒のロード時間(推論は遅いですが、APIコストはかかりません)
- 🔧 協力者募集中! エッジデバイスAIに興味がある方、一緒に協力しましょう!
その他のアシスタント
🟢 TurboLLM – gpt - 4 - miniを使用して:
- リアルタイムのネットワーク診断
- 自動化された侵入テスト(Nmap/Metasploit)
- 🔑 無料のネットワークモニターエージェントをダウンロードすることで、より多くのトークンを取得できます。
🔵 HugLLM – オープンソースモデル(約80億パラメータ):
- TurboLLMよりも2倍のトークン
- AIによるログ分析
- 🌐 Hugging Face推論APIで動作します。
💡 テストするAIコマンドの例:
"私のウェブサイトのSSL証明書に関する情報を教えてください"
"私のサーバーが通信に量子セーフな暗号化を使用しているか確認してください"
"クイックなNmap脆弱性テストを実行してください"
✨ 主な機能
Granite - 3.2 - 2B - Instruct
モデル概要
Granite - 3.2 - 2B - Instructは、20億パラメータの長文脈AIモデルで、思考能力を微調整しています。[Granite - 3.1 - 2B - Instruct](https://huggingface.co/ibm - granite/granite - 3.1 - 2b - instruct)をベースに構築され、許容的なライセンスを持つ公開データセットと、推論タスク用に設計された内部生成の合成データの混合を使用してトレーニングされています。このモデルは、必要なときにのみ思考能力を適用できるように制御可能です。
基本情報
属性 | 详情 |
---|---|
開発者 | Graniteチーム、IBM |
ウェブサイト | Granite Docs |
リリース日 | 2025年2月26日 |
ライセンス | [Apache 2.0](https://www.apache.org/licenses/LICENSE - 2.0) |
サポート言語
英語、ドイツ語、スペイン語、フランス語、日本語、ポルトガル語、アラビア語、チェコ語、イタリア語、韓国語、オランダ語、および中国語。ただし、ユーザーはこれらの12言語以外の言語でこのGraniteモデルを微調整することができます。
想定用途
このモデルは、一般的な指示に従うタスクを処理するように設計されており、様々なドメインのAIアシスタントに組み込むことができます。
機能
- 思考
- 要約
- テキスト分類
- テキスト抽出
- 質問応答
- 検索拡張生成(RAG)
- コード関連タスク
- 関数呼び出しタスク
- 多言語対話ケース
- 長文書/会議の要約、長文書の質問応答などの長文脈タスク
📦 インストール
以下のライブラリをインストールします。
pip install torch torchvision torchaudio
pip install accelerate
pip install transformers
💻 使用例
基本的な使用法
これは、Granite - 3.2 - 2B - Instructモデルを使用する簡単な例です。
from transformers import AutoModelForCausalLM, AutoTokenizer, set_seed
import torch
model_path="ibm-granite/granite-3.2-2b-instruct"
device="cuda"
model = AutoModelForCausalLM.from_pretrained(
model_path,
device_map=device,
torch_dtype=torch.bfloat16,
)
tokenizer = AutoTokenizer.from_pretrained(
model_path
)
conv = [{"role": "user", "content":"You have 10 liters of a 30% acid solution. How many liters of a 70% acid solution must be added to achieve a 50% acid mixture?"}]
input_ids = tokenizer.apply_chat_template(conv, return_tensors="pt", thinking=True, return_dict=True, add_generation_prompt=True).to(device)
set_seed(42)
output = model.generate(
**input_ids,
max_new_tokens=8192,
)
prediction = tokenizer.decode(output[0, input_ids["input_ids"].shape[1]:], skip_special_tokens=True)
print(prediction)
出力例
thinking = True
以下は私の思考プロセスです。
1. まず、最初の10リットルの30%酸溶液の組成を理解しましょう。
- 酸の含有量 = 10リットルの30% = 0.30 * 10 = 3リットル
2. 最終的に50%の酸溶液を得たいとします。追加する70%酸溶液の体積を「x」リットルとしましょう。
3. 最終混合物(50%溶液)中の酸の量は、最初の酸含有量と追加された70%溶液からの酸の量の合計に等しくなければなりません。
- 最終混合物中の総酸量 = 0.50 * (10 + x)
4. 総酸含有量を表す方程式は次のようになります。
3(最初の溶液から) + 0.70 * x(追加された溶液から) = 0.50 * (10 + x)
5. 次に、「x」を解きましょう。
3 + 0.70x = 5 + 0.50x
0.70x - 0.50x = 5 - 3
0.20x = 2
x = 2 / 0.20
x = 10リットル
6. したがって、10リットルの70%酸溶液を最初の10リットルの30%酸溶液に加えると、50%の酸混合物が得られます。
以下は私の回答です。
この問題を解くには、10リットルの30%酸溶液に、50%の酸混合物を作るためにどれだけの70%酸溶液を加える必要があるかを決定する必要があります。以下のように計算します。
1. **初期の酸含有量**
- 最初の10リットルの溶液には3リットルの酸が含まれています(10リットルの30%)。
2. **目的の最終酸含有量**
- 最終的な混合物が50%の酸になることを望んでいます。
3. **方程式の設定**
- 追加する70%酸溶液の体積を「x」リットルとします。
- 最終混合物(最初の溶液の10リットルと追加された溶液の「x」リットルの合計)中の総酸含有量は、総体積(10 + x)の50%に等しくなければなりません。
- これにより、次の方程式が得られます。3(最初の溶液からの酸) + 0.70x(追加された溶液からの酸) = 0.50(10 + x)
4. **方程式の解き方**
- まず、方程式の右辺を簡略化します。0.50(10 + x) = 5 + 0.50x
- 次に、方程式は次のようになります。3 + 0.70x = 5 + 0.50x
- 両辺から0.50xを引きます。0.20x = 2
- 両辺を0.20で割ります。x = 2 / 0.20
- x = 10リットル
5. **結論**
- 最初の30%溶液から50%の酸混合物を得るには、10リットルの70%酸溶液を加える必要があります。
したがって、最終的な答えは、最初の10リットルの30%酸溶液に10リットルの70%酸溶液を加える必要があるということです。
thinking = False
この問題を解くには、体積と濃度の概念を使います。追加する70%酸溶液の量を「x」リットルとしましょう。
まず、最初の10リットルの溶液に含まれる酸の量を求めましょう。
最初の溶液中の酸 = 10リットルの30% = 0.30 * 10 = 3リットル
ここで、最終的に(10 + x)リットルの総体積で50%の酸溶液を得たいとします。最終体積をVとしましょう。
最終酸濃度 = 50%
最終酸量 = Vの50% = 0.50 * V
最初の酸量と最終酸量がわかっているので、方程式を設定することができます。
最初の酸量 + 追加された溶液からの酸量 = 最終酸量
3リットル + (xの70%) = 0.50 * (10 + x)
次に、xを解きましょう。
0.70x + 3 = 0.50 * 10 + 0.50x
0.70x - 0.50x = 0.50 * 10 - 3
0.20x = 5 - 3
0.20x = 2
x = 2 / 0.20
x = 10リットル
したがって、最初の10リットルの30%酸溶液に10リットルの70%酸溶液を加えると、50%の酸混合物が得られます。
📚 ドキュメント
評価結果
モデル | ArenaHard | Alpaca - Eval - 2 | MMLU | PopQA | TruthfulQA | BigBenchHard | DROP | GSM8K | HumanEval | HumanEval+ | IFEval | AttaQ |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Llama - 3.1 - 8B - Instruct | 36.43 | 27.22 | 69.15 | 28.79 | 52.79 | 72.66 | 61.48 | 83.24 | 85.32 | 80.15 | 79.10 | 83.43 |
DeepSeek - R1 - Distill - Llama - 8B | 17.17 | 21.85 | 45.80 | 13.25 | 47.43 | 65.71 | 44.46 | 72.18 | 67.54 | 62.91 | 66.50 | 42.87 |
Qwen - 2.5 - 7B - Instruct | 25.44 | 30.34 | 74.30 | 18.12 | 63.06 | 70.40 | 54.71 | 84.46 | 93.35 | 89.91 | 74.90 | 81.90 |
DeepSeek - R1 - Distill - Qwen - 7B | 10.36 | 15.35 | 50.72 | 9.94 | 47.14 | 65.04 | 42.76 | 78.47 | 79.89 | 78.43 | 59.10 | 42.45 |
Granite - 3.1 - 8B - Instruct | 37.58 | 30.34 | 66.77 | 28.7 | 65.84 | 68.55 | 50.78 | 79.15 | 89.63 | 85.79 | 73.20 | 85.73 |
Granite - 3.1 - 2B - Instruct | 23.3 | 27.17 | 57.11 | 20.55 | 59.79 | 54.46 | 18.68 | 67.55 | 79.45 | 75.26 | 63.59 | 84.7 |
Granite - 3.2 - 8B - Instruct | 55.25 | 61.19 | 66.79 | 28.04 | 66.92 | 64.77 | 50.95 | 81.65 | 89.35 | 85.72 | 74.31 | 85.42 |
Granite - 3.2 - 2B - Instruct | 24.86 | 34.51 | 57.18 | 20.56 | 59.8 | 52.27 | 21.12 | 67.02 | 80.13 | 73.39 | 61.55 | 83.23 |
トレーニングデータ
全体的に、私たちのトレーニングデータは主に2つの主要なソースから構成されています:(1) 許容的なライセンスを持つ公開データセット、(2) 推論能力を向上させるために内部で合成生成されたデータ。
インフラストラクチャ
私たちは、IBMのスーパーコンピューティングクラスタであるBlue Velaを使用してGranite - 3.2 - 2B - Instructをトレーニングしています。このクラスタにはNVIDIA H100 GPUが搭載されており、数千のGPUでモデルをトレーニングするための拡張可能で効率的なインフラストラクチャを提供します。
倫理的考慮事項と制限
Granite - 3.2 - 2B - Instructは、Granite - 3.1 - 2B - Instructをベースに構築されており、許容的なライセンスを持つオープンソースデータと一部の独自データの両方を利用してパフォーマンスを向上させています。前のモデルを基盤としているため、[Granite - 3.1 - 2B - Instruct](https://huggingface.co/ibm - granite/granite - 3.1 - 2b - instruct)に適用されるすべての倫理的考慮事項と制限事項が引き続き関連しています。
リソース
- ⭐️ Graniteの最新情報を学ぶ: https://www.ibm.com/granite
- 📄 チュートリアル、ベストプラクティス、およびプロンプトエンジニアリングのアドバイスで始める: https://www.ibm.com/granite/docs/
- 💡 最新のGranite学習リソースを学ぶ: https://ibm.biz/granite - learning - resources
📄 ライセンス
このモデルは[Apache 2.0](https://www.apache.org/licenses/LICENSE - 2.0)ライセンスの下で提供されています。



