記事公開日
Foundry Localを試してみた

この記事のポイント
2026年4月に一般提供開始(GA)されたFoundry Localを、公式で用意されているサンプルをもとに実際の挙動を試してみました。
- Foundry Localの主な特徴:
クラウドへの依存やAzureサブスクリプションなしでデバイス上で実行できる「完全ローカル動作」を軸に、実行環境を自動判別する「ハードウェアの自動高速化」や、既存コードを容易に流用できる「OpenAI互換API」を備え、セキュアかつ手軽にAIをアプリへ組み込める点が特徴です。 - 実際の動作確認:
サンプルを実際に実行してみました。簡単な質問であれば自然な日本語で回答してくれましたが、少し複雑になると想定した回答にはなりませんでした。
はじめに
Foundry Localは、Azureサブスクリプションなしで、デバイス上で完全にローカル動作するAIモデルを実行できるものです。
今回は、このFoundry Localが2026年4月に一般提供開始されたので、公式で用意されているサンプルをもとに実際に試してみました。
1. Foundry Local の特徴とは
まず、Foundry Localの特徴ですが、詳細は公式サイトを参照いただくとして、ここでは概要のみ記載します。
- 超軽量で組み込みやすい(軽量ランタイム)
アプリへの追加容量を約20MBに抑えつつ、モデル管理から推論までをカバー。容量制限が厳しいアプリにも直接AIを組み込めます。 - 厳選・最適化されたモデル群(キュレーションモデルカタログ)
QwenやWhisperなど、一般のPC向けに圧縮・最適化された高品質モデルが揃っています。バージョン管理により、特定のバージョンへの固定や自動更新も可能です。 - 面倒な設定不要の高速化(ハードウェアの自動高速化)
実行環境のGPU/NPU/CPUを自動で検出し、最適な処理を自動選択します。開発者側でハードウェア判別用のコードを書く必要がありません。 - 全自動のモデル管理(スマートモデル管理)
初回利用時に端末に最適なモデルを自動ダウンロードし、ローカルに保存(キャッシュ)することで、次回以降の高速起動を実現します。 - 最小限のコード修正で移行可能(OpenAI互換API)
OpenAIのAPIリクエスト・レスポンス形式に対応しているため、既存のOpenAI向けアプリのコードをわずかに変更するだけで流用できます。 - 柔軟な実行方式(オプションのローカルサーバー)
基本はサーバーを立てずアプリ内で直接推論を実行しますが、LangChain等との連携や複数プロセスから利用したい場合は、ローカルサーバーとして起動することも可能です。
2. 試したサンプル
今回試したサンプルは、一番ベースとなるチャットの応答を生成するもの(native-chat-completions)です。
環境がそろっていれば、GitHubリポジトリからソースコードを入手してすぐに試すことができました。(今回はPythonで試しました。)
ただ、今回の検証にあたって2点だけコードを修正しました。
1:モデルを『qwen2.5-0.5b』から『qwen2.5-7b』に変更し、少しパラメータ数の大きい(または、より精度の高い)モデルにしました。
2:content = chunk.choices[0].delta.contentとなっていますが、choicesが空で返ってくるケースがあるため取得前にチェック処理を入れました。
実際に試してみた結果は以下の通りです。
messages = [
{"role": "user", "content": "日本の文化の特徴は何ですか?100文字程度で教えてください。"}
]
<結果>
Assistant: 日本の文化は、伝統的な茶道や花見、着物着用などと現代的なアニメやゲーム文化を融合させた独特性を持っています。尊敬と調和が重視され、季節感や自然との調和にも特徴があります。
いい感じですね!日本語の回答も自然な文脈になっていると思います。
ただ、推論など複雑なことをしようとすると、残念ながら想定通りの動きとはなりませんでした。
以下のように指示を変えてみました。
messages = [
{
"role": "system",
"content": (
"あなたは最強のじゃんけんボットです。「じゃんけんぽん!」の合図で「グー」「チョキ」「パー」のいずれかを出してください。"
"「グー」「チョキ」「パー」以外の回答は不要です。"
"じゃんけんのルールは「グー」は「チョキ」に勝ちます。「チョキ」は「パー」に勝ちます。「パー」は「グー」に勝ちます。"
"ユーザーが次に出す手を予測して勝てる確率が高い手を出してください。ユーザーの次の手が「グー」と予想したら「パー」を出してください。ユーザーの次の手が「チョキ」と予想したら「グー」を出してください。ユーザーの次の手が「パー」と予想したら「チョキ」を出してください。"
"過去のユーザーが出した手は次の通りです。「グー」「チョキ」「パー」「グー」「チョキ」「パー」「グー」「チョキ」"
),
},
{"role": "user", "content": "じゃんけんぽん!"}
]
<結果>
Assistant:グー
残念!「グー」「チョキ」「パー」と続いているので、「パー」を予想して「チョキ」を出してもらいたかったのですが「グー」と回答しました。
一応、何度か試してみましたが「グー」が返ってきてしまう結果となりました。想像ですが、履歴の「チョキ」に対して勝つ手を回答してしまっているのではないかと思います。
3. まとめ
もし「このサービスについて知りたい」「Azure 環境の構築・移行」「AI アプリの開発相談」などのリクエストがございましたら、弊社お問い合わせフォームまでお気軽にご連絡ください。複雑な内容に関するお問い合わせの場合には直接営業からご連絡を差し上げます。また、よろしければ以下のリンクもご覧ください!
< QES 関連ソリューション/ブログ>
※Foundry Local、およびこのブログで使用されるその他の Microsoft 商標は、米国およびその他の国々における Microsoft Corporation の商標または登録商標です。


