Slide 1

Slide 1 text

Semantic Kernelの ネイティブプラグインで 知識拡張をしてみる 株式会社SAKURUG プロダクトDiv 草場 友光 .NET Conf 2024 後! C# Tokyo カンファレンス

Slide 2

Slide 2 text

自己紹介 • コミュニティ活動を通じて知識をアッ プデートしています。 • 2022/08-2025 Microsoft MVP (Developer Technologies) • tomo_kusaba

Slide 3

Slide 3 text

今日の目的 • LLMの知識拡張をするにはAI SearchやCosmos DBなどを 使用しベクトル化したデータの近似値を得る手法が一般的です。 • しかし、個人で使うにはどれも高い! • 追加の費用なくそれっぽい結果を得る方法はないか探って みた!

Slide 4

Slide 4 text

通常、RAGをするには • AI SearchやCosmos DBなどベクトル化したデータを格納す る場所が必要 • ざっくり右の様なアーキテクチャ (出展:https://speakerdeck.com/satakeyusuke19920527/deep-dive-to-voice-rag?slide=11 佐竹 祐亮)

Slide 5

Slide 5 text

あ、でもAI SearchとかCosmos DBとか 追加コストかけたくないんだよね!!

Slide 6

Slide 6 text

Semantic KernelのPluginで無理矢理 できないか? (本来の使い方じゃない) もともと、自宅サーバのWindows Server で動いてるのでその中で完結できれば最 高!

Slide 7

Slide 7 text

できらぁぁあああ!

Slide 8

Slide 8 text

どうやって? • Descriptionに要約文を書く • 本文をそのままreturnする • まさに、手動でがんばる • (弱点) 要約文にない意味合いのものは本文に書かれていても 引っかからない!

Slide 9

Slide 9 text

デモ

Slide 10

Slide 10 text

おしまい おしまい