🗺️

Foundry LocalでオフラインSLMを使う。MAC OS-CPU

に公開

Foundry LocalってMACでも使えたのか

オペレーティング システム: Windows 10 (x64)、Windows 11 (x64/ARM)、Windows Server 2025、macOS。

https://learn.microsoft.com/ja-jp/azure/ai-foundry/foundry-local/get-started

ということで、飛行機内でも簡単なコード作成とか翻訳可能な環境を用意しようかと。
MACでの話です。

Foundry Localの準備

めっちゃ簡単です。コマンド3回叩くだけ。

brew tap microsoft/foundrylocal

brew install foundrylocal

foundry model run <Alias>

どんなモデルがあるかは下記のコマンド。

foundry model ls

Alias                          Device     Task               File Size    License      Model ID            
-----------------------------------------------------------------------------------------------
phi-4                          GPU        chat-completion    8.37 GB      MIT          Phi-4-generic-gpu   
                               CPU        chat-completion    10.16 GB     MIT          Phi-4-generic-cpu   
--------------------------------------------------------------------------------------------------------
mistral-7b-v0.2                GPU        chat-completion    4.07 GB      apache-2.0   mistralai-Mistral-7B-Instruct-v0-2-generic-gpu
                               CPU        chat-completion    4.07 GB      apache-2.0   mistralai-Mistral-7B-Instruct-v0-2-generic-cpu
-------------------------------------------------------------------------------------------------------------------------------------
phi-3.5-mini                   GPU        chat-completion    2.16 GB      MIT          Phi-3.5-mini-instruct-generic-gpu
                               CPU        chat-completion    2.53 GB      MIT          Phi-3.5-mini-instruct-generic-cpu
------------------------------------------------------------------------------------------------------------------------
phi-3-mini-128k                GPU        chat-completion    2.13 GB      MIT          Phi-3-mini-128k-instruct-generic-gpu
                               CPU        chat-completion    2.54 GB      MIT          Phi-3-mini-128k-instruct-generic-cpu
---------------------------------------------------------------------------------------------------------------------------
phi-3-mini-4k                  GPU        chat-completion    2.13 GB      MIT          Phi-3-mini-4k-instruct-generic-gpu
                               CPU        chat-completion    2.53 GB      MIT          Phi-3-mini-4k-instruct-generic-cpu
-------------------------------------------------------------------------------------------------------------------------
deepseek-r1-14b                GPU        chat-completion    10.27 GB     MIT          deepseek-r1-distill-qwen-14b-generic-gpu
-------------------------------------------------------------------------------------------------------------------------------
deepseek-r1-7b                 GPU        chat-completion    5.58 GB      MIT          deepseek-r1-distill-qwen-7b-generic-gpu
------------------------------------------------------------------------------------------------------------------------------
qwen2.5-0.5b                   GPU        chat-completion    0.68 GB      apache-2.0   qwen2.5-0.5b-instruct-generic-gpu
                               CPU        chat-completion    0.80 GB      apache-2.0   qwen2.5-0.5b-instruct-generic-cpu
------------------------------------------------------------------------------------------------------------------------
qwen2.5-1.5b                   GPU        chat-completion    1.51 GB      apache-2.0   qwen2.5-1.5b-instruct-generic-gpu
                               CPU        chat-completion    1.78 GB      apache-2.0   qwen2.5-1.5b-instruct-generic-cpu
------------------------------------------------------------------------------------------------------------------------
qwen2.5-coder-0.5b             GPU        chat-completion    0.52 GB      apache-2.0   qwen2.5-coder-0.5b-instruct-generic-gpu
                               CPU        chat-completion    0.80 GB      apache-2.0   qwen2.5-coder-0.5b-instruct-generic-cpu
------------------------------------------------------------------------------------------------------------------------------
qwen2.5-coder-7b               GPU        chat-completion    4.73 GB      apache-2.0   qwen2.5-coder-7b-instruct-generic-gpu
                               CPU        chat-completion    6.16 GB      apache-2.0   qwen2.5-coder-7b-instruct-generic-cpu
----------------------------------------------------------------------------------------------------------------------------
qwen2.5-coder-1.5b             GPU        chat-completion    1.25 GB      apache-2.0   qwen2.5-coder-1.5b-instruct-generic-gpu
                               CPU        chat-completion    1.78 GB      apache-2.0   qwen2.5-coder-1.5b-instruct-generic-cpu
------------------------------------------------------------------------------------------------------------------------------
phi-4-mini                     GPU        chat-completion    3.72 GB      MIT          Phi-4-mini-instruct-generic-gpu
----------------------------------------------------------------------------------------------------------------------
phi-4-mini-reasoning           GPU        chat-completion    3.15 GB      MIT          Phi-4-mini-reasoning-generic-gpu
                               CPU        chat-completion    4.52 GB      MIT          Phi-4-mini-reasoning-generic-cpu
-----------------------------------------------------------------------------------------------------------------------
qwen2.5-14b                    CPU        chat-completion    11.06 GB     apache-2.0   qwen2.5-14b-instruct-generic-cpu
-----------------------------------------------------------------------------------------------------------------------
qwen2.5-7b                     GPU        chat-completion    5.20 GB      apache-2.0   qwen2.5-7b-instruct-generic-gpu
                               CPU        chat-completion    6.16 GB      apache-2.0   qwen2.5-7b-instruct-generic-cpu
----------------------------------------------------------------------------------------------------------------------
qwen2.5-coder-14b              GPU        chat-completion    8.79 GB      apache-2.0   qwen2.5-coder-14b-instruct-generic-gpu
                               CPU        chat-completion    11.06 GB     apache-2.0   qwen2.5-coder-14b-instruct-generic-cpu

gpt-oss-20bを使ってみたかったのですが、gpt-oss-20bを使うには下記の要件があります。

16 GB VRAM 以上の Nvidia GPU。

翻訳

モデルの軽さ的にqwen2.5-1.5bを選びました。

qwen2.5-1.5b

これからコピペする 英語の文章を日本語にして
🤖
もちろん、お手伝いします。どのような文章を日本語に変換したいですか?
Figure 2:Illustration of our Test-Time Diffusion Deep Researcher (TTD-DR) framework, designed to mimic the iterative nature of human research through a draft. A user query initiates both a preliminary draft and a research plan. This evolving draft, along with the research plan, dynamically informs the generation of search questions and subsequent information retrieval to be timely and coherent, while reducing information loss. The retrieved information is then leveraged to denoise and refine the initial draft in a continuous feedback loop. The entire workflow is further optimized by a self-evolutionary algorithm to enhance the quality of the research plan, generated questions, answers, and the final report, demonstrating the synergistic power of diffusion and self-evolution in achieving superior research outcomes.
🤖
Figure 2: テストタイムディスプレイ・ディープレサーチ(TTD-DR)フレームワークのイラストレーション、人間の研究の循環的な性質を模倈するために生成されるプレミアムな草稿を作成します。ユーザークエリは両方のプレミアムな草稿と研究計画を開始します。この変化する草稿と研究計画は、検索問題の生成と次回の情報収集のための適切なタイミングと連続的で統一された情報を提供し、情報を失うことを減らすために動的に告知します。取得した情報を再びデノisingと修正のために使用して、最初の草稿が継続的なフィードバックループの中で強力に改善されます。全体のプロセスはさらに優化され、自己進化的アルゴリズムによって、研究計画、生成された質問、答え、そして最終報告の品質を向上させます、これはディスプレイと自己進化の協働により、優れた研究結果を達成するための優れた研究結果を達成します。

正直、日本語としてはよくわかりませんが、図とセットだとなんとなくわかる気がします。

Google翻訳

図2 :TTD-DR(Test-Time Diffusion Deep Researcher)フレームワークの図解。下書きを通して人間の研究の反復的な性質を模倣するように設計されています。ユーザークエリは、予備的な下書きと研究計画の両方を開始します。この進化する下書きは、研究計画と共に、検索質問の生成とその後の情報取得を動的に通知し、タイムリーで一貫性のあるものにするとともに、情報損失を削減します。取得された情報は、継続的なフィードバックループ内で初期下書きのノイズ除去と改良に活用されます。ワークフロー全体は、研究計画、生成された質問、回答、そして最終レポートの品質を向上させる自己進化アルゴリズムによってさらに最適化され、優れた研究成果の達成における拡散と自己進化の相乗効果を実証しています。

qwen2.5-coder-1.5b

これからコピペする 英語の文章を日本語にして
🤖 どうぞ、お手伝いできるようお願いいたします。
Figure 2:Illustration of our Test-Time Diffusion Deep Researcher (TTD-DR) ・・・
🤖 図2:私たちのテストタイムディフォューション深層研究者(TTD-DR)フレームワークの illustration,これは人間の研究のイテラティブ性を模倣するために作られました。ユーザークエリは既存のプレミアムドraftと研究計画を同時に生成します。この発展的なdraftと研究計画は、リアルタイムで継続的に検索質問と情報を取得し、情報損失を最小限に抑えるために適切な情報を提供します。取り得た情報を再評価して初期の草案を継続的なフィードバックループの中で精確化します。これにより、全体的なワークフローがさらに優れた研究結果を達成するための自組織的なアルゴリズムを活用しています。

coderではないモデルと同じようなものかと思いましたが、情報が削られすぎかなと思いました。

qwen2.5-7b

これからコピペする 英語の文章を日本語にして
🤖 もちろんです。英語の文章を日本語に翻訳するお手伝いをさせていただきます。翻訳したい英語の文章をコピペして教えてくださいね。
Figure 2:Illustration of our Test-Time Diffusion Deep Researcher (TTD-DR)・・・
🤖 以下がその英語文章の日本語訳です:
図2:ユーザーの検索要求に基づいて、人間の研究の反復的な性質を模倣するための試験時拡散デプスラーニング研究者(TTD-DR)フレームワークの説明図です。ユーザーの検索要求は、初期稿と研究計画の両方を開始します。この進化する初期稿と研究計画は、タイムリーかつ整合性のある検索問題の生成と情報取得を動的に制御し、情報の損失を減らします。取得された情報は、連続的なフィードバックループの中で初期稿をノイズ除去と精緻化するために利用されます。さらに、自演化的アルゴリズムによって全体的なワークフローが最適化され、研究計画、生成された問題、回答、および最終報告書の品質が向上します。これにより、拡散と自演化的力が優れた研究結果を達成する力を示しています。

この翻訳では、専門用語や技術的な概念をできるだけ正確に表現しています。ただし、文脈や使用される具体的な技術によっては、異なる解釈や表現方法がある可能性もあります。必要であれば、詳細な部分について更に調整させていただきます。

いい感じ。

コード生成

qwen2.5-coder-1.5b

今日の特定時刻以降に作成されたノードを削除するcypherquery作成して
🤖 以下は、特定時刻以降に作成されたノードを削除するCypherクエリです。このクエリは、created_at プロパティが指定した日時より新しいノードを削除します。

MATCH (n:Node)
WHERE n.created_at < timestamp('2023-10-01T00:00:00Z')
DELETE n;

このクエリでは:

  • MATCH (n:Node):ノードをすべて選択します。
  • WHERE n.created_at < timestamp('2023-10-01T00:00:00Z')created_at プロパティが指定した日時より古いノードを絞り出します。
  • DELETE n:選択されたノードを削除します。

→使えそうなコードを書いてくれました。
ただ、「特定時刻以降に作成されたノードを削除する」と言っているのに、明らかに「特定時刻より前」を条件にしているのと、timestampに文字列の指定はできないみたいなのと、DELETEのコマンドが微妙に違いました。あと、意地悪で「今日」と入れてみたのですが、流石に日付は適当です。

正しくは、下記のようになるかなと。

MATCH (n:Node)
WHERE n.created_at > datetime('2025-08-08T00:00:00Z')
DETACH DELETE n;

ちなみに、cypherクエリではなくsqlで出してと言ったら、下記のようでした。
簡単なsqlくらいは生成してくれそうなのと、もう少しラリーすれば使えそうです。

今日の特定時刻以降に作成された レコードを削除するsql書いて

DELETE FROM 特レコード表 WHERE 特徴 = '特定の特徴';
DELETE FROM your_table_name
WHERE created_at > '2023-10-01 00:00:00';

使いそうなコマンド

ローカルにダウンロードしたモデルを見る

foundry cache list

ローカルにダウンロードしたモデルを削除

foundry cache remove <model>

まとめ

MACでもFoundry Local使えるし、簡単。
精度はモデル次第だと思うが、簡単なタスクなら十分補助してくれそう。

ヘッドウォータース

Discussion