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
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
Search
Mitsuzono Hiroto
April 20, 2024
Technology
1
740
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
2024/4/20 Global Azure 2024 in Fukuoka
Mitsuzono Hiroto
April 20, 2024
Tweet
Share
More Decks by Mitsuzono Hiroto
See All by Mitsuzono Hiroto
ここらでGPSマルチユニットが如何に使いやすいか本気で説明するから聞きなさい
mitsuzono
0
1.5k
Application insightsを用いてAzure AD B2Cをより使いこなす
mitsuzono
0
630
Application Insights と KQL
mitsuzono
0
590
LINE Messaging API メッセージ送受信とアカウント連携まわり
mitsuzono
0
120
Application Insights と Cosmos DB ―たかがTips、そう思ってないですか?―
mitsuzono
0
79
近頃若者のサーバー離れが深刻化しています
mitsuzono
0
1.1k
新卒、ヘルキャンプとデスマーチへの挑戦
mitsuzono
0
480
Other Decks in Technology
See All in Technology
龍昌餃子で理解するWebサーバーの並行処理モデル - 東葛.dev #9
kozy4324
1
100
Kotlinで型安全にバイテンポラルデータを扱いたい! ReladomoラッパーをAIと実装してみた話
itohiro73
3
260
よくわからない人向けの IAM Identity Center とちょっとした落とし穴
kazzpapa3
1
110
どうなる Remix 3
tanakahisateru
0
250
AI-ready"のための"データ基盤 〜 LLMOpsで事業貢献するための基盤づくり
ismk
0
120
The Twin Mandate of Observability
charity
1
390
30分でわかる!!『OCI で学ぶクラウドネイティブ実践 X 理論ガイド』
oracle4engineer
PRO
1
110
어떤 개발자가 되고 싶은가?
arawn
1
440
InsightX 会社説明資料/ Company deck
insightx
0
200
Design and implementation of "Markdown to Google Slides" / phpconfuk 2025
k1low
1
130
CloudComposerによる大規模ETL 「制御と実行の分離」の実践
leveragestech
0
190
今日から使える AWS Step Functions 小技集 / AWS Step Functions Tips
kinunori
1
110
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.3k
Music & Morning Musume
bryan
46
6.9k
A better future with KSS
kneath
239
18k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Pragmatic Product Professional
lauravandoore
36
7k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Bash Introduction
62gerente
615
210k
Docker and Python
trallard
46
3.6k
Transcript
Kernel MemoryでAzure OpenAI Serviceと お手軽データソース連携 Global Azure 2024 in Fukuoka
Copyright © Alterbooth Inc. All Rights Reserved. 1
• 株式会社オルターブース エンジニア • 主な業務内容 • C#、Azure、GitHubを活用した Webアプリケーション開発 • クラウドネイティブな
アプリ開発に関するトレーニング 満園 裕人 Copyright © Alterbooth Inc. All Rights Reserved. 2
• Azure OpenAI Service • APIバージョンやSDK対応状況確認方法など • Kernel Memory •
(関連)Semantic Kernelについて • Kernel Memoryとは • 処理フロー • 実行方法 • インデックスの保存方法 • 実際に触って確認 目次 Copyright © Alterbooth Inc. All Rights Reserved. 3
Azure OpenAI Service Copyright © Alterbooth Inc. All Rights Reserved.
4
• OpenAIなどが開発したAIモデルにREST APIでのアクセスを提供 • 多少の遅れはあるものの、最新のモデルを追従 • API仕様も共通形式で使用可能 • エンタープライズレベルでOpenAIを利用するのに適している •
APIキー認証だけでなく、Microsoft Entra IDによる認証 • プライベートネットワークとの統合 • Azureのサポート • マルチリージョン • コンテンツフィルタリング Azure OpenAI Service Copyright © Alterbooth Inc. All Rights Reserved. 5
更新の早いAzure OpenAI Serviceを使う上で APIバージョン(特にプレビュー)に注意しましょう! Copyright © Alterbooth Inc. All Rights
Reserved. 6
• REST APIリファレンス • https://learn.microsoft.com/ja-jp/azure/ai-services/openai/reference • バージョン一覧とSwagger定義のリンク記載がある APIバージョン Copyright ©
Alterbooth Inc. All Rights Reserved. 7
Copyright © Alterbooth Inc. All Rights Reserved. 8
• プレビュー版のライフサイクル説明ドキュメント • https://learn.microsoft.com/ja-jp/azure/ai-services/openai/api-version-deprecation • 機能ベースでの対応バージョン記載がある APIバージョン対応機能 Copyright © Alterbooth
Inc. All Rights Reserved. 9
• 最新のGAバージョンは2024-02-01(2024/4現在) • 最新のプレビューバージョンは2024-03-01-preview • 2024/7/1にいくつかのプレビュー版が廃止される予定(2024/4現在) • Azure SDKを使う場合は、SDK内のバージョン対応状況に注意 •
OpenAIClientOptionsクラスにAPIバージョン列挙体定義が存在 • https://github.com/Azure/azure-sdk-for- net/blob/main/sdk/openai/Azure.AI.OpenAI/src/Generated/OpenAIClientOptions.cs APIバージョンのライフサイクル Copyright © Alterbooth Inc. All Rights Reserved. 10
Kernel Memory Copyright © Alterbooth Inc. All Rights Reserved. 11
• https://github.com/microsoft/semantic-kernel • LLMとプログラミング言語を統合するSDK (…の前に)Semantic Kernel Copyright © Alterbooth Inc.
All Rights Reserved. 12
Semantic Kernel Copyright © Alterbooth Inc. All Rights Reserved. 13
• データベースへの呼び出しをラップし、ベクトル検索をサポート • Semantic Kernelプロジェクトの一部として開発されているものを指す • C#、Python、Java用のライブラリ • サポートされているストレージエンジンは言語によって異なる →
Kernel MemoryはSemantic Memoryの開発で得られたフィードバックに基 づいて構築されたサービス Semantic Memory Copyright © Alterbooth Inc. All Rights Reserved. 14
• https://github.com/microsoft/kernel-memory • データセットの効率的なインデックス作成に特化した、マルチモーダルAI サービス • サービスとして、あらゆる言語・ツール・プラットフォームから使用可能 • プラグインとしても使用可能 •
Semantic Kernelとシームレスに統合可能 • .NETライブラリとして使用可能 • データソースとの繋ぎ込みを行うためのモジュールが多数用意されている Kernel Memory Copyright © Alterbooth Inc. All Rights Reserved. 15
• データの展開 • 回答 Kernel Memoryの処理フロー Copyright © Alterbooth Inc.
All Rights Reserved. 16
• サービスとして実行する方法とサーバーレス実行と呼ばれる方法の2通りある • サービスとして実行 • コンテナーで単体で起動し、Webアプリ等からサービス起動しているKernel Memoryのエ ンドポイントへアクセスし、やり取りする • サーバーレス実行
• 同アプリ内でKernel Memoryの機能を実行(.NETのライブラリとして導入) Kernel Memoryの実行方法 Copyright © Alterbooth Inc. All Rights Reserved. 17
• https://github.com/microsoft/kernel- memory/blob/main/service/Service/README.md • インデックスデータはデフォルトではローカルディスク上に保持される (SimpleVectorDb) • 永続化したい場合はAzure AI Search等に出力することが可能
• サービスであれば環境変数のMemoryDbTypeに設定 • サーバーレスであればKernelMemoryBuilderのBuild時に指定 Kernel Memoryにおけるインデックスの保存方法 Copyright © Alterbooth Inc. All Rights Reserved. 18
• https://github.com/microsoft/kernel-memory/tree/main/infra • https://github.com/microsoft/kernel- memory/tree/main/examples/001-dotnet-WebClient 実際に触って確認する Copyright © Alterbooth Inc.
All Rights Reserved. 19
Copyright © Alterbooth Inc. All Rights Reserved. 20 ※イベント会場へ移動中にDocument Intelligenceも追加されていました
https://github.com/microsoft/kernel-memory/tree/main/infra
Copyright © Alterbooth Inc. All Rights Reserved. 21
Copyright © Alterbooth Inc. All Rights Reserved. 22 https://github.com/microsoft/kernel-memory/blob/main/infra/images/ACA-ApplicationUrl.png
Copyright © Alterbooth Inc. All Rights Reserved. 23
• Azure OpenAI Serviceまわりは更新がめちゃくちゃ早い • Azure OpenAI Serviceのモデル・APIバージョンの更新 • 関連ライブラリやサンプルの更新
• APIのpreviewバージョンを使用する場合は特に廃止タイミングに気をつけましょう • Kernel Memoryを使用すれば、自前AIアプリをデータソースと繋ぎこむこと がかなり楽になる • Azure OpenAI on your dataやAzure Machine Learningプロンプトフローで実現できない 要件や多少細かい部分の実装を行いたい場合におけるフルスクラッチの敷居が下がる まとめ Copyright © Alterbooth Inc. All Rights Reserved. 24
ご清聴ありがとうございました! Copyright © Alterbooth Inc. All Rights Reserved. 25