Foundry Localはお手軽ローカルLLM コマンドと.NET向けSDKのどちらでも便利

184 Views

July 18, 25

スライド概要

Azure OpenAI Service Dev Day 2025のLTで発表した資料です

profile-image

会社勤めのSE・プログラマです。個人としての情報発信も行っており、このアカウントはその用途で使用します。同一ID「suusanex」でGitHub・はてな等でも発信しています。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

Foundry Localはお手軽ローカルLLM コマンドと.NET向けSDKのどちらでも便利 2025/7/18 須藤(suusanex)

2.

自己紹介  ID:suusanex( connpass・Twitter・GitHub共通)  名前:須藤圭太  サイエンスパーク株式会社という独立系ソフトウェアベンダーに所属  会社でのテックブログ  自社製品開発・継続保守する製品開発を10年ほど・受託開発は5年ほど  小規模開発チームでPM・プログラマ・プラットフォームエンジニア・テックリード 的な事まで何でもやってます  C#・Windows開発がメインでC++もいける  Developer Technologies .NETでMicrosoft MVPを受賞しました  C# Tokyoコミュニティでイベント開催  Windowsアプリ開発のネタが多い

3.

Foundry Local  Build 2025で発表された  ローカルLLMのモデルのリスト・キャッシュDL・OpenAI API互換のlocalhostエ ンドポイント公開まで全部やってくれる  コマンドプロンプトですぐにチャット可能  .NET向けSDKもある  どっちも使ってみたら手軽に使えて便利だったぞ、という話を、実際のコマン ドやコードを添えて紹介します  Buildで見たし、すでに使ってみたから使い方も知ってる、という人には退屈かも

4.

インストールからチャットまで  コマンド数個でローカルLLMとのチャットまで到達  インストール:winget install Microsoft.FoundryLocal  使えるモデルをリスト表示: foundry model list  モデルを指定して実行:foundry model run <モデル名>

5.

インストールからチャットまで   指定したモデルのキャッシュが無ければDLし、モデルを実行してチャットできる状態 になる  >foundry model list Alias Device Task File Size License Model ID ----------------------------------------------------------------------------------------------phi-4 GPU chat-completion 8.37 GB MIT Phi-4-cuda-gpu (略)  >foundry model run Phi-3-mini-4k-instruct-cuda-gpu Downloading Phi-3-mini-4k-instruct-cuda-gpu...[####################################] 100.00 % [Time remaining: about 0s] 42.8 MB/s (略)  Interactive mode, please enter your prompt > ローカルLLMでチャットしたいだけならこれでOK、手軽!

6.

自作プログラムから呼べる?  コマンドプロンプトでの呼び出しはお手軽I/Fであって必須じゃない  Foundry Localが公開しているのは、OpenAI API互換のエンドポイントなので、 自作プログラム等から普通に呼び出し可能  Foundry Local自体の操作については、C#(.NET)向けのSDKがあるのでコマンド を呼ばなくてもOK  Microsoft.AI.Foundry.Local

7.

SDK(Microsoft.AI.Foundry.Local)の使い方 はコマンドと同じでシンプル サービス起動 _manager = new FoundryLocalManager(); await _manager.StartServiceAsync();  モデルキャッシュ一覧取得 var cachedModels = await _manager.ListCachedModelsAsync()   モデル全リスト取得 var catalogModels = await _manager.ListCatalogModelsAsync()  モデルダウンロード await _manager.DownloadModelAsync(modelId);  モデルロード var model = await _manager.LoadModelAsync(modelId);  エンドポイントは _manager.Endpoint

8.

まとめ  Foundry Localは「お手軽に」ローカルLLMを使える  キャッシュ共通化など色々良いところはあるが、まずお手軽さが強い  C#(.NET)向けSDKがあり、OpenAI API互換のエンドポイント公開なので、割と すぐ使える  使ってみよう!