【Strata 0.2.9】DeepSeek V4.1-FlashのUnsloth版に対応|UD-IQ1_Sの導入方法と使い方をRTX 5060 Tiで解説

手元のPCで大規模なMoEモデルを動かす推論エンジン「Strata」が、0.2.9(2026年10月31日リリース)で「DeepSeek V4.1-Flash」のUnsloth版に対応しました。

Strataは0.2.4からDeepSeek V4.1-Flashを動かせるようになっていましたが、低ビットのセットはISTA-DASLab版だけでした。0.2.9からは、Unslothが公開している1ビット系の「UD-IQ1_S」と「UD-IQ1_M」も、セットアップで選べます。

今回はRTX 5060 Ti 16GB、RAM 64GBのPCでUD-IQ1_Sを導入しました。導入して使うまでの流れを、このPCの画面で説明します。

  • UD-IQ1_Sはダウンロードが241GB、UD-IQ1_Mは258GBです。ISTA-DASLab版をすでに持っていれば、共通のファイルを再利用できるので、ダウンロードは約119GB減ります
  • 導入は strata launch の案内画面で選ぶか、strata launch --family deepseek41 --model ud-iq1_s を実行するだけです
  • UD-IQ1_Sは今回のPC(Windows、RTX 5060 Ti)で動きました。日本語の回答、画像入力、ツール呼び出しを確認し、生成速度は毎秒5〜7トークンでした
  • 公式の評価では、統計的な指標はUD-IQ1_MがISTA-DASLabの2.25bpw版より良く、61課題のテストは2.25bpw版のほうが高得点でした

DeepSeek V4.1-FlashとUnsloth版

DeepSeek V4.1-Flash-1017

DeepSeek V4.1-Flash-1017は、DeepSeekが公開しているMoE(Mixture of Experts)モデルで、ライセンスはMITです。40層それぞれに384個のエキスパートがあり、全部で1万5,360個になります。1トークンを書くたびに、各層から6個を選んで使います。テキストのほか、画像も読み取れます。

「1017」が付くモデルは、もとのV4.1-Flashを小幅に更新したバージョンです。DeepSeekが公開した比較では、Terminal-Bench 4.0が31.2から42.3に、DeepSWE v1.1が74.2から77.0に上がっています。

Unsloth版のUD-IQ1_SとUD-IQ1_M

Unslothはモデルを量子化したGGUFファイルを公開している開発チームです。「UD」は「Unsloth Dynamic」の略で、モデル全体を同じ形式にせず、部分ごとに量子化の形式を変えています。

セットエキスパートの形式アテンションの形式モデル本体のサイズ
UD-IQ1_SIQ1_S、IQ2_XXSQ6_K122GB
UD-IQ1_MIQ1_S、IQ2_XXS、IQ2_XS、IQ2_SQ6_K140GB

UD-IQ1_SはISTA-DASLabの1.75bpw版、UD-IQ1_Mは2.00bpw版に近いサイズです。

Unslothのモデルページには、最小の1ビット版でもRAM 128GB以上のPCで動かすよう案内があります。これはUnslothのllama.cpp向けプルリクエストやUnsloth Desktopで動かす場合の案内です。Strataではメモリに載らない部分をSSDから読み込むので、もっと少ないRAMでも動きます。

StrataでのVRAM・RAM・SSDの使い分け

Strataでは、DeepSeek専用のエンジン strata-dsv41 がモデルを動かします。モデルのデータの扱いは次のとおりです。

データ扱い
アテンションなどの重みVRAMに置く
エキスパートVRAMに入るだけ置く
残りのエキスパートCPUで計算する。よく使うものをRAMに置き、入らない分は必要になったときにSSDから読む
n-gram表(Engram、111GB)NVMe SSDに置き、1トークンごとに数行ずつ読む
先読み用の小さなモデル(DSpark、8GB)効果がある場合だけ自動で使う

RAMに置くエキスパートの量は、Strataが自動で決めます。

どのセットを選ぶか

Strataで選べるDeepSeek V4.1-Flashのセットは次の6つです。「必要なメモリ」はセットアップ画面に表示される値です。

セット提供元ダウンロード必要なメモリ(RAM+VRAM)必要な空き容量
UD-IQ1_SUnsloth241GB36GB約247GB
UD-IQ1_MUnsloth258GB40GB約264GB
IST-DAS 1.75bpwISTA-DASLab239GB34GB約245GB
IST-DAS 2.00bpwISTA-DASLab257GB40GB約265GB
IST-DAS 2.25bpwISTA-DASLab274GB44GB約280GB
UD-Q8_K_XLUnsloth508GB306GB−

ダウンロードの中身はモデル本体、n-gram表(111GB)、DSpark(8GB)です。n-gram表はUD-IQ1_S、UD-IQ1_M、ISTA-DASLab版でデータが同じなので、どれかを入れてあれば、別のセットを追加するときに再利用されます。

0.2.9のリリースノートには、UD-Q8_K_XLを基準にした品質の比較が載っています。1トークンごとに6エキスパートを使い、各セットを1回ずつ計測した値です。

指標UD-IQ1_SUD-IQ1_MIST-DAS 2.25bpw
KLダイバージェンス(小さいほど良い)0.1140.0870.110
1位の予測の一致率87.2%88.8%87.4%
perplexityの増加(小さいほど良い)+4.8%+3.0%+8.9%
61課題のテスト53問53問56問

61課題の内訳は次のとおりです。

課題UD-IQ1_SUD-IQ1_MIST-DAS 2.25bpw
文書からの検索(12問)111112
情報の抽出(13問)111313
答えられない質問(9問)999
要約(8問)867
コード(6問)656
JSON(3問)333
エージェントの作業(10問)566

エージェントの作業は3つのセットとも10問すべてが最後まで動き、不正なツール呼び出しやツールのエラーはありませんでした。

統計的な指標ではUD-IQ1_Mが最も良く、課題のテストではIST-DAS 2.25bpwが最も高得点です。ただし、どちらも1回ずつの計測で、UD-IQ1_Mの課題のテストだけ別のGPUで実行されています。なお、Strataのドキュメントに載っている2.25bpw版の値(perplexity +7.3%)は基準が違うので、上の表とは直接比べられません。

セットアップの説明文ではUD-IQ1_SとUD-IQ1_Mについて、短い回答やコード、ツール呼び出しは問題なかったものの、長く細かい作業では2.25bpw版より弱い可能性があると書かれています。UD-IQ1_Sの説明には、2.00bpw版か2.25bpw版が入るならそちらを選ぶようにとも書かれています。

ここまでの情報をもとにすると、選び方の目安は次のとおりです。

向いている場合セット
ディスクとメモリを節約して、まず動かしてみたいUD-IQ1_S
少し大きくても、統計的な指標が良いほうを使いたいUD-IQ1_M
ディスクに余裕があり、長い文書の処理も任せたいIST-DAS 2.25bpw

今回は最も小さいUnsloth版のUD-IQ1_Sを動かしました。UD-IQ1_Mは --plan の確認までで、動作は試していません。

必要なPC

項目目安
OSWindows、Linux(Macにも対応。Macでは画像入力は使えません)
グラフィックカードNVIDIA RTX 30、40、50シリーズなど。公式の計測は12GBのカードから
メモリUD-IQ1_SはRAMとVRAMの合計で36GB、UD-IQ1_Mは40GB
ストレージ約247GB(UD-IQ1_S)または約264GB(UD-IQ1_M)の空きがあるNVMe SSD

モデルはNVMe SSDに置きます。n-gram表とRAMに入らないエキスパートを1トークンごとに読むので、HDDには向きません。

検証環境

パーツ内容
GPUNVIDIA GeForce RTX 5060 Ti 16GB(ドライバー617.42)
CPUAMD Ryzen 9 9900X(12コア24スレッド)
メモリDDR5-5600 64GB(32GB×2)
ストレージNVMe SSD 2TB(PCIe 4.0)
OSWindows 11 Pro
Strataターミナル0.2.9(Control 0.1.55)、DeepSeekエンジン0.1.55
モデルDeepSeek-V4.1-Flash-1017 UD-IQ1_S
設定コンテキスト8K、速度はFaster

導入手順

今回はターミナル版を使いました。リリースノートでは、UD-IQ1_SとUD-IQ1_Mは「セットアップと strata launch の選択肢」と案内されています。アプリ版の画面は今回確認していません。

1. Strataを入れるか更新する

ターミナル版を初めて入れる場合は、PowerShellで次のコマンドを実行します。インストールの詳しい流れは前回の記事で紹介しています。

irm https://github.com/Niko1221/Strata/releases/latest/download/install.ps1 | iex

インストール後は新しいターミナルを開いてから strata コマンドを使います。すでに入っている場合は、次のコマンドで更新します。

strata update
strata --version

strata 0.2.9 (build 0.1.55; ...) と表示されれば準備完了です。DeepSeekのエンジンは別のパッケージで、次に strata launch でDeepSeekを起動したときに自動で更新されます。

2. --plan で事前に確認する

--plan を付けると、何も変更せずに、このPCでどのように動くかを確認できます。

strata launch --family deepseek41 --model ud-iq1_s --plan
strata launch --planの実行結果。UD-IQ1_Sは241GBのダウンロードで、モデル122GB、n-gram表111GB、DSpark 8GBの内訳と、VRAMとRAMへの配置が表示され、最後にNothing was changedと出ている

ダウンロードの内訳、使うエキスパートの数、RAMとSSDの使い方が表示されます。空き容量が足りないときは、次のような警告が出ます(UD-IQ1_Mで実行した例)。

[!] The download needs about 264 GB of free disk space and 53 GB are free where the files go.
    Use --models-dir on a bigger drive, or --gguf-dir for files you already have.

Strataは容量を10進数のGB(1GB=10億バイト)で数えるので、PowerShellで調べた値とは少し異なります。別のNVMe SSDに置く場合は、--models-dir で保存先を指定します。

3. strata launch でセットアップする

strata launch を実行すると、ターミナル上で案内画面が開きます。矢印キーで選んでEnterで進みます。プリセットを保存済みの場合は、最初の画面で「Set up from the beginning」を選びます。DeepSeekを選ぶと全部で10ステップになります。

Step 1:Model

Step 1 Modelの画面。Qwen3.8-Flash-NextとDeepSeek-V4.1-Flashのセットが一覧で並び、DeepSeek-V4.1-Flash UD-IQ1_Sを選択している。ダウンロード241GB、必要なメモリ36GB、fits・SSD 51GB (installed)と表示されている

一覧の下のほうにある「DeepSeek-V4.1-Flash UD-IQ1_S」を選びます。右端の列にはこのPCに収まるかどうかが表示されます。今回のPCは「fits · SSD 51 GB」でした。収まるものの、51GB分はSSDから読む見積もりと見られます。空き容量が足りないセットには「tight: needs more disk space」と出ます。

Step 2:Folder

Step 2 Folderの画面。モデルがすでにダウンロード済みで、Nothing more to downloadと表示され、保存先のパスが入力欄に入っている(ユーザー名はモザイク処理)

保存先にはNVMe SSD上のフォルダーを指定します。上の画像は導入後に撮ったので、「Already downloaded」と表示されています。

Step 3:Context

Step 3 Contextの画面。8K(推奨)、32K、64K、128K、256K、512K、1M、Customから選べ、512Kと1Mにはnot tested yetと表示されている

一度に扱えるコンテキストの長さです。推奨は8Kで、1Mまで選べます。512Kと1Mには「not tested yet」と表示されています。長くすると使うメモリが増え、長い会話の最初の回答も遅くなります。今回は8Kで動かしました。

Step 4:Speed

Step 4 Speedの画面。Fasterがこのパソコンの既定値で、Full qualityも選べる

「Faster」は1トークンごとに使うエキスパートを6個から5個に減らす設定で、品質の変化は小さいとされています。VRAMが合計16GB以下のPCでは、こちらが既定です。すべて使う場合は「Full quality」を選びます。

Step 5〜6:Pictures・Parallel

Step 5は画像入力のオン・オフです。既定はオンで、モデルに付属する約1GBのファイルと約0.3GBのVRAMを使います。

Step 6は同時に処理するリクエスト数ですが、Strataのドキュメントによると、今のDeepSeekエンジンは1件ずつ処理します。推奨のまま進めます。

Step 7:Tuning

Step 7 Tuningの画面。Quick(5〜10分)、Thorough(10〜15分)、Skipから選べ、Skipを選択している

このPCに合う設定を測定して探す機能です。最初のカーソルは「Quick」にあるので、Enterだけで進むとチューニングが始まります。今回は既定の設定で動かすため、「Skip」を選びました。

Step 8〜9:Advanced・Access

Step 8はエンジンの細かい設定と、実際に実行するコマンドの確認画面です。ここではEnterが項目の編集になるので、変更がなければ n で次へ進みます。

Step 9は接続できる範囲です。「This computer only」のほか、ローカルネットワーク、Cloudflareトンネル、Tailscaleを選べます。このPCの中だけで使うなら「This computer only」のままで問題なく、APIキーも不要です。

Step 10:Save

Step 10 Saveの画面。モデル、コンテキスト、画像、速度、同時処理数、チューニング、アクセス、保存先の設定が一覧で表示され、プリセット名UD-IQ1_S 8Kが入力され、Save as a preset and launchを選択している(ユーザー名はモザイク処理)

設定を確認し、「Save as a preset and launch」でプリセットを保存して起動します。次回からは strata launch の最初の画面でこのプリセットを選ぶだけで起動できます。

4. ダウンロードと起動

ここから先は自動で進みます。

  1. DeepSeekエンジンの取得、または更新
  2. モデルファイルのダウンロード(途中で止めても続きから再開)
  3. SHA-256によるファイルの確認
  4. Strata用にモデルを準備(初回のみ)
  5. モデルの読み込みと、動作の確認
起動中の画面。Engine、Model、Settingsにチェックが付き、Startingの行にLoading the model… 19 sと表示されている(ユーザー名はモザイク処理)

今回のPCではISTA-DASLab版を入れてあったので、n-gram表とDSparkが再利用され、ダウンロードは約122GBで済みました。ここまでの所要時間は約1時間35分です(回線速度によって変わります)。なお、--plan の内訳にはファイルがあっても「241 GB」と表示されますが、実際には足りない分だけがダウンロードされました。

2回目以降は、ダウンロードと準備がなくなります。モデルの読み込みは、今回のPCでは約5分のときと約7分半のときがありました。

案内画面を使わず、コマンド1行で同じように起動することもできます。

strata launch --family deepseek41 --model ud-iq1_s

UD-IQ1_Mの場合は --model ud-iq1_m に置き換えます。

使ってみる

ブラウザーでチャットする

起動すると、http://127.0.0.1:8080/ でチャット画面が使えます。モニターで b を押しても開きます。今回の環境では英語で表示されました。

Strataのチャット画面。ローカルLLMのメリットを3つ、日本語の箇条書きで回答している。画面下に157 tokens、5.4 tok/sと表示されている

「ローカルLLMのメリットを3つ、簡潔に教えてください。」と聞いたところ、自然な日本語で答えました。157トークンを毎秒5.4トークンで生成しています。

入力欄の「Chat settings」では、思考の量やtemperatureなどを変更できます。

Chat settingsのパネル。ThinkingがOff、Low、Medium、Highから選べ、既定はHigh。Temperatureは1.00、Top-pは0.95、Top-kは20と表示されている

先ほどの回答は思考を「Off」にしたものです。このときの「Thought」の欄は開いても中身がありませんでした。既定の「High」で計算問題を聞くと、次のようになりました。

思考をHighにして鉛筆とノートの計算問題を聞いた画面。Thoughtの欄に英語の思考が表示され、回答はおつり140円と正しく計算している

答えの140円は正解です。質問と回答は日本語ですが、思考は英語でした。

モニターで状態を見る

起動したターミナルにはモニターが表示されます。キーの1〜7で7つの画面を切り替えられます。

モニターのOverview画面。回答を生成中で、生成速度は毎秒5.0トークン、GPU負荷99%、VRAMは16GB中15.6GB、System RAMは62GB中45.5GBと表示されている

上の画像は回答の生成を始めたところです。VRAMは16GB中15.6GB、RAMは62GB中45.5GBを使っていました。ここに表示されるVRAM上のエキスパートは713個で、--plan の見積もり(約1,522個)より少なくなっています。

APIで使う

OpenAI互換の /v1/chat/completions とAnthropic互換の /v1/messages で使えます。アドレスとモデルIDは次のとおりです。

項目値
OpenAI互換のURLhttp://127.0.0.1:8080/v1
Anthropic互換のURLhttp://127.0.0.1:8080(/v1 は付けない)
モデルIDdeepseek-v4.1-flash

PowerShellの curl.exe で試す場合は、--% を付けると引用符の問題を避けられます。

curl.exe --% -s http://127.0.0.1:8080/v1/chat/completions -H "Content-Type: application/json" -d "{\"model\":\"deepseek-v4.1-flash\",\"reasoning_effort\":\"none\",\"max_tokens\":64,\"messages\":[{\"role\":\"user\",\"content\":\"Say hello in five words.\"}]}"

Windows PowerShell 5.1の Invoke-RestMethod では、日本語の回答が文字化けしました。次のように Invoke-WebRequest で受け取り、UTF-8として読み直すと正しく表示されます。

$body = @{ model = "deepseek-v4.1-flash"; reasoning_effort = "none"; max_tokens = 200; messages = @(@{ role = "user"; content = "日本で一番高い山は?一文で答えてください。" }) } | ConvertTo-Json -Depth 5
$res = Invoke-WebRequest http://127.0.0.1:8080/v1/chat/completions -UseBasicParsing -Method Post -ContentType "application/json; charset=utf-8" -Body ([Text.Encoding]::UTF8.GetBytes($body))
$r = [Text.Encoding]::UTF8.GetString($res.RawContentStream.ToArray()) | ConvertFrom-Json
$r.choices[0].message.content
PowerShellで上のコマンドを実行した画面。最後に富士山です。と表示されている

APIの主な設定は次のとおりです。

  • 思考は既定でオンです。オフにするには reasoning_effort: "none" か chat_template_kwargs.enable_thinking: false を指定します
  • 思考の量は low(50)、medium(62)、high(75、既定)、max(100)、または1〜100の数値で指定します
  • 思考の内容はレスポンスの reasoning_content に入ります
  • temperatureとtop_pの既定値は、APIではどちらも1.0です
  • ツール呼び出しはOpenAIの tool_calls とAnthropicの tool_use の形式で返ります
  • 同じ会話を続けるエージェント向けに、前の会話を保存しておき、読み直さずに再開します

コーディングエージェントにつなぐ

モニターの「7 Connect」ではOpenCode、Codex CLI、Claude Codeなどの設定を確認できます。c で設定をコピーし、w でバックアップを取って設定ファイルに書き込み、h でこのサーバーに実際にリクエストを送って確認します。

モニターのConnect画面。OpenCode、Codex CLI、Claude Codeなどが並び、Claude CodeのThis serverがPassed (2/2)になっている。プロンプトにpongと答え、get_weatherをParisで呼び出したと表示されている

Claude Codeを選んで h を押すと、プロンプトとツール呼び出しの2つのチェックが成功し、「Passed (2/2)」になりました。今回確認したのはこのチェックまでで、Claude Codeで実際の作業はしていません。

エージェントで使うときは、コンテキストの長さに注意が必要です。Connect画面にはOpenCodeのシステムプロンプトとツールだけで約7.4Kトークンを使うと表示されています。既定の8Kではほとんど余裕がないので、エージェントで使う場合はStep 3か --context で長くします(今回は8K以外を試していません)。Claude Codeでは CLAUDE_CODE_MAX_CONTEXT_TOKENS をサーバーのコンテキスト長に、CLAUDE_CODE_MAX_OUTPUT_TOKENS を4096にするよう案内されます。

止める

モニターで q を押すと、次の確認が表示されます。

Leave the monitor?の確認画面。Keep serving in the background、Stop serving and free the memory、Stay in the monitorの3つから選べる

「Stop serving and free the memory」を選ぶと、モデルを読み込み解除してメモリを解放します。別のターミナルから止める場合は、次のコマンドです。

strata launch --stop

動作確認と速度の目安

動作確認

リリースノートには、Unsloth版のWindowsでの動作は未テストと書かれています。今回のPCでは次の項目を確認できました。

確認した内容結果
英語の質問(フランスの首都)「Paris」と回答
日本語の質問(日本で一番高い山)「富士山です。」と回答
コード(Pythonで文字列を反転する式)s[::-1] と回答
思考あり(17×23)思考のあとに「391」と回答
画像入力(赤い画像の色)「Red」と回答
Anthropic互換の /v1/messages正常に応答
ツール呼び出し(OpenAI互換)get_weather を呼び出し、結果を受け取って回答
ツール呼び出し(Anthropic互換)tool_use を正しく返却

生成速度

Fasterの設定で、思考はオフ、temperatureは0とし、各項目を3回測った中央値です。ほかのアプリも開いたままで計測しました。

内容プロンプトの長さ生成速度最初のトークンまで
短いチャット33トークン毎秒6.82トークン8.3秒
コード生成87トークン毎秒6.32トークン18.4秒
エージェント風の会話(1ターン目)2,110トークン毎秒6.05トークン46.8秒
エージェント風の会話(2ターン目以降)約2,500〜2,800トークン毎秒5.16トークン11.6秒

チャット画面で試したときの表示は、毎秒5.2〜5.4トークンでした。Qwen3.8-Flash-Next(前回の記事では毎秒約90トークン)と比べると、生成はかなりゆっくりです。241GBのモデルをRTX 5060 TiとRAM 64GBのPCで動かせることが利点で、短い質問やコードの相談なら、読みながら待てる速さでした。

エージェント用途では初回に長いプロンプトを読むので、答え始めるまでに時間がかかります。2ターン目以降は前の会話を再利用するので短くなります。

リリースノートやドキュメントに載っている公式の計測値は次のとおりです。構成が違うので、目安として見てください。

環境セット生成速度(毎秒)プロンプトの読み込み(毎秒)
Radeon AI PRO R9700×4UD-IQ1_S48〜88トークン1,204〜1,296トークン(4K)
RTX A6000×2UD-IQ1_M41〜82トークン304〜415トークン(4K)
M5 MaxUD-IQ1_S15.4〜18.5トークン230〜314トークン(3K)
DGX SparkUD-IQ1_S15〜26トークン(コード)377〜397トークン(約4K)
DGX SparkUD-IQ1_M7.6〜13トークン330〜345トークン(約4K)
RTX 5070 12GB、RAM 64GBIST-DAS 2.00bpw約4.7トークン121トークン(4K)

最後の行は一般的なPCに近い構成の参考値です。Unsloth版ではなく2.00bpw版の値です。速度はグラフィックカード、RAM、NVMe SSDの性能によって変わります。

コメント

タイトルとURLをコピーしました