Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Semantic Kernelの最新状況及び入門
Search
tomokusaba
July 26, 2024
Programming
490
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Semantic Kernelの最新状況及び入門
Semantic Kernelの最新状況及び入門
.NETラボ 勉強会 2024年7月
https://dotnetlab.connpass.com/event/323373/
tomokusaba
July 26, 2024
More Decks by tomokusaba
See All by tomokusaba
Microsoft Build Keynoteふりかえり
tomokusaba
0
97
GitHub Copilot CLIでWebアクセシビリティを改善した話
tomokusaba
0
510
GitHub Copilot CLI で考える複数エージェント設計
tomokusaba
0
200
GitHub Copilot appで変わる GitHub Copilot CLI開発体験
tomokusaba
1
1.3k
アクセシビリティはすべての人のもの
tomokusaba
0
420
GitHub Copilot Dev Days
tomokusaba
0
190
GitHub Copilot CLI と VS Code Agent Mode の使い分け
tomokusaba
0
200
Azure PortalなどにみるWebアクセシビリティ
tomokusaba
0
490
薬屋のひとりごとからみるプロジェクトにおけるコミットの方法
tomokusaba
1
73
Other Decks in Programming
See All in Programming
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
150
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
130
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
0
160
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
110
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
840
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
760
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
320
Inside Stream API
skrb
1
650
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
500
さぁV100、メモリをお食べ・・・
nilpe
0
130
AIエージェントの隔離技術の徹底比較
kawayu
0
460
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.2k
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
200
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
420
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
170
We Are The Robots
honzajavorek
0
240
Leo the Paperboy
mayatellez
7
1.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
Scaling GitHub
holman
464
140k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Transcript
Semantic Kernelの最新状況 及び入門 株式会社SAKURUG プロダクトDiv 草場 友光 .NETラボ勉強会2024年7月
自己紹介 • コミュニティ活動を通じて知識をアッ プデートしています。 • 2022/08-2025 Microsoft MVP (Developer Technologies)
• tomo_kusaba
宣伝 【VISION】ひとの可能性を開花させる企業であり続ける VISIONに共感できる仲間募集中。
注意 • 個人の見解・解釈が多分に入っています。 • 見解の相違・事実誤認などありましたらご指摘ください。 • #dotnetlabでtweetすると左側に表示されます
今日の目的 • .NETのSemantic Kernelが安定版になってしばらく経ちまし た。 • 最新のSemantic Kernelの状況及び改めて今、Semantic Kernelを入門する方法をリポジトリーを見ながら探っていきた いと思います。
• やらないこと:実際にコードを動かしてみたり詳細な実装について 話すこと
現在のリポジトリ構成をみる • https://github.com/microsoft/semantic- kernel/tree/main
Semantic Kernelとは • 既存のアプリケーションにAIエージェントを簡単に追加することの できるオープンソースのミドルウェア • C#、Java、Pythonに対応 • プラグインの自動呼び出しに対応
似た目的で使用できるフレームワーク・ツール • LangChain • AI Studio • Azure FunctionのOpenAI拡張
LangChain • Pythonのみの対応 • LLMを扱う上では素晴らしいツール • LLMの発展に対して迅速な対応する反面、今現在安定版がリリー スされていない、破壊的変更が多い、バグが多いなどのトラブル が多い •
AIそのもの検証にはとても相性がよい!
AI Studio • Microsoft Build 2024でGA • OpenAI以外のMetaなどのLLMやPhi-2などのSLMなどさま ざまな言語モデルに対応 •
Azure AI SearchやプロンプトフローなどAIツールチェーンと して設計されている • GUIベースでフローを確認できたり可観測性もバッチリ。 • TeamsへのカスタムエンジンCopilotもPubulic Previewな どできることが増えてきた!
Azure FunctionのOpenAI拡張 • Azure OpenAI Serviceの機能と動作をFunctionに簡単に 統合できる一連のトリガーとバインドが実装されている。 • 呼び出すLLMがAzure OpenAIに限定できる場合に有用な手
段 • スケールしやすい • AIの実行がFunctionでよい場合・・・もともとマイクロサービス 的に作っている場合は気にならないはず。モノシリックで作ってい る場合なぜAzure OpenAI ServiceだけがAzure Function の実行なのか??くらい
Semantic Kernelの始め方 • https://github.com/microsoft/semantic- kernel/tree/main/dotnet/notebooks • まずは、Jypyter Notebooksから • 前提:.NET
8 と VS Code と Polygot 拡張
Microsoft Learn ドキュメント • ただし、現在は英語のみ (7/3日本語追加!) • ドキュメントに掲載されているコードは https://github.com/microsoft/semantic- kernel/tree/main/dotnet/samples/LearnResources
に掲載 • Logic AppsやOpenAPIプラグインの追加方法などより実践的 な実装方法についての記述がされているなど一通り読むべき
コード例がコンセプトごとに整理された • Microsoft LearnからもGitHubへのリンクがある。 • ChatCmpletionとかDIやPluginなどコンセプトごとに整理さ れて見やすくなった。
より、実践的デモアプリ • https://github.com/microsoft/semantic- kernel/tree/main/dotnet/samples/Demos
どんな機能が使えるんだっけ(コア) サービス C# Python Java 備考 プロンプト ◦ ◦ ◦
ネイティブ関数とプラグイン ◦ ◦ ◦ OpenAPIプラグイン ◦ ◦ ◦ 関数の自動呼び出し ◦ ◦ ◦ テレメトリログを開く ◦ △ × フックとフィルター ◦ ◦ ◦
どんな機能が使えるんだっけ(AIサービス) サービス C# Python Java 備考 テキストの生成 ◦ ◦ ◦
チャット入力候補 ◦ ◦ ◦ GPT-4 テキスト埋め込み ◦ ◦ ◦ Text-Embeddings テキストから画像へ ◦ × × Dall-E 画像からテキストへ ◦ × × テキストから音声へ ◦ × × 音声からテキストへ ◦ × × Whisper
どんな機能が使えるんだっけ (AIサービスエンドポイント) サービス C# Python Java 備考 OpenAI ◦ ◦
◦ Azure OpenAI ◦ ◦ ◦ Ollama, LLM Studio.. ◦ ◦ ◦ Hugging Face Inference API △ × ×
どんな機能が使えるんだっけ (Memory Connectors) サービス C# Python Java 備考 Azure AI
Search ◦ ◦ ◦ Chroma ◦ ◦ × DuckDB ◦ × × Milvus △ ◦ × Pinecone ◦ ◦ × Postgres ◦ ◦ × Qdrant ◦ △ × Redis ◦ △ × Sqlite ◦ × △ Weaviate ◦ ◦ ×
Microsoft Learnを見てみる時間
参考文献 • Microsoft/semantic-kernel https://github.com/microsoft/semantic- kernel/tree/main • セマンティック カーネルの概要 https://learn.microsoft.com/ja-jp/semantic- kernel/overview/?WT.mc_id=DT-MVP-5004827
• Semantic Kernel Discord コミュニティ https://aka.ms/sk/discord
おしまい おしまい