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
Azure Durable Functions で作った NL2SQL Agent の精度向上...
Search
TonyTonyKun
July 22, 2026
Technology
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/aidevday2026
AI Dev Day 2026 のセッション資料です。
https://aidevday.com/
TonyTonyKun
July 22, 2026
More Decks by TonyTonyKun
See All by TonyTonyKun
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
850
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/jat08
thara0402
0
440
これでバッチリ!Azure マルチテナントアーキテクチャ設計のコツ/jat06
thara0402
0
780
Azure Load Testing を使って Azure Functions Flex Consumption の HTTP Trigger のパフォーマンスとコストを最適化してみよう/global-azure2025
thara0402
0
370
Prompty を使って生成 AI アプリケーション開発のプロンプトを管理する/jat03
thara0402
0
97
Azure OpenAI Service で意図せず PTU モデルをデプロイして高額請求されてしまった件/jat04
thara0402
0
110
「Durable Task Scheduler」をチョイ見せ!/jat05
thara0402
0
76
Azure App Service on Linux の Sidecar に Phi-3 を配置してインテリジェントなアプリケーションを作ってみよう/jazug-anniv14
thara0402
0
1.5k
サイクルガードサービス AlterLock の問い合わせ対応業務に Azure OpenAI Service を活用した話/jazug46
thara0402
0
1k
Other Decks in Technology
See All in Technology
設計の世代交代を乗り越える、14年続くAndroidアプリの開発戦略
sansantech
PRO
1
120
KAEN Company Deck
kaen
PRO
0
290
Sony-DroidKaigi2026
sony
1
310
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
0
940
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
330
AI-DLCって実際どう? 〜聞きたいこと全部聞いてみる〜
news_it_enj
0
220
20260903 Tokyo Jazug Night #62 | Azure エンジニアよ、 その環境は本当にセキュアか?
olivia_0707
1
610
Bet AI Day 2026丨バクラク Autopilot、業務システムの再設計
layerx
PRO
2
1.1k
こんなアーキテクチャ図は嫌だ BEYOND THE TIME: 半年後の自分へ贈る15のメッセージ / 15 of Anti-pattern in AWS Architecture Diagrams
naospon
3
220
AIエージェントを雇う前に決める5つのこと
knishioka
1
150
AIとペアプロを始める。人とのペアプロをやめる。ペアプロの良さを改めて知る。もっと好きになった。 / Rediscovering Pair Programming
honyanya
1
190
Webとヘルスデータ
yukukotani
0
170
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
490
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
660
My Coaching Mixtape
mlcsv
0
300
The Pragmatic Product Professional
lauravandoore
37
7.4k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
430
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
520
How to Ace a Technical Interview
jacobian
281
24k
4 Signs Your Business is Dying
shpigford
187
23k
Transcript
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話 2026.07.24 AI Dev
Day 2026
自己紹介 名前 原 敏之 個人 X (Twitter) : @TonyTonyKun ROMANCE
DAWN for the new world • https://gooner.hateblo.jp/ Microsoft MVP for Microsoft Azure 2017 〜 コミュニティ Japan Azure User Group (JAZUG) Japan Azure Travelers 仕事 株式会社ネクストスケープ Copyright© 2026, JAZUG All Rights Reserved. 2
JAZUG のご紹介 3 Copyright© 2026, JAZUG All Rights Reserved.
JAZUG のご紹介 Japan AZure User Group ( 略称 : じゃずゆーじー)
コミュニティ活動概要 Microsoft Azure を通じて、技術、交流、実ビジネスを楽しむ “ちょっと興味がある=ゆるふわな方“ から “実ビジネスで使うんだよね” な方まで大歓迎!ゆるふわコミュニティです。 X ハッシュタグ:#jazug イベント情報は Connpass にて 4 Copyright© 2026, JAZUG All Rights Reserved.
全国に広がる JAZUG の輪 1 2 5 7 4 3 1
JAZUG 札幌 (きたあず) 2 JAZUG 仙台 3 JAZUG 名古屋 (なごあず) 4 JAZUG 大阪 (関西Azure研究会) 5 JAZUG Fukuoka 6 JAZUG Shizuoka 7 JAZUG 四国 (しこあず) 8 JAZUG for Women 6 5 Copyright© 2026, JAZUG All Rights Reserved.
Connpas メンバー数、もうすぐ6000人です! 6 Copyright© 2026, JAZUG All Rights Reserved.
過去動画は YouTube で配信中 7 Copyright© 2026, JAZUG All Rights Reserved.
公式グッズは SUZURI で販売中 8 Copyright© 2026, JAZUG All Rights Reserved.
東京での主な活動 Tokyo Jazug Night 月1回ペースで平日の夜に開催 次回の第62回は、2026/9/3(木)に品川で開催予定 JAZUG for Women 不定期で開催されるオフライン女性限定の勉強会
Global Azure 年1回世界中の Azure コミュニティが同じ日にイベントを開催 JAZUG 周年イベント 毎年9月-10月に開催される JAZUG x周年を祝うお祭り 今年の16周年は、2026/10/3(土)に品川で開催予定 Copyright© 2026, JAZUG All Rights Reserved. 9
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話 10 Copyright© 2026,
JAZUG All Rights Reserved.
モチベーション チャットで自然言語を入力するだけでデータベースの情報を 取得できる仕組みが欲しい UI 今月の売上は? NL2SQL 質問をクエリに変換して実行 チャット 1億円です。 DB
クエリ結果を回答に変換 NL2SQL (Text to SQL) は、生成 AI を利用して自然言語を SQL に変換する技術です。 SQL を書けない人でもデータベースから情報を取得でき、また SQL に詳しいエンジニア の作業効率も大きく向上できることが期待されています。 Copyright© 2026, JAZUG All Rights Reserved. 11
アーキテクチャ Azure Durable Functions + Durable Task Scheduler Azure Durable
Functions チャットから質問を送信 チャットに回答を返却 Orchestrator Activity Agent 選択 GetAgentToRun (Function Calling) AOAI NL2SQL Agent 実行 NL2SQL Agent AOAI SQL Query 実行 Execute SQL Agent 回答生成 SynthesizeAgentCallResults Durable Task Scheduler Copyright© 2026, JAZUG All Rights Reserved. Cosmos DB SQL Database AOAI 12
Azure Durable Functions を採用した理由 Durable Functions AI Agent の構築パターンに fan-out
/ fan-in をマッピングしやすい 非同期にタスクを並列実行させる処理をアプリケーションのレイヤー だけでなく、インフラのレイヤーまで含めて統制できる Durable Task Scheduler より優れたスケーラビリティの実現 • LLM からのレスポンスに時間がかかりやすいため 可観測性の向上 • 実行されるアクティビティが LLM によって動的に決定されるため 13 Copyright© 2026, JAZUG All Rights Reserved.
(参考) Durable Task Scheduler の Dashboard Timeline Sequence 14 Copyright©
2026, JAZUG All Rights Reserved.
まず最初に思いつくアプローチ 生成 AI を使って自然言語から SQL クエリを生成する LLM LLM 自然言語による質問 クエリ生成
クエリ実行 クエリ結果 SQL DB 回答生成 ※ クエリ生成では、データベースのテーブル定義やカラムの意味をシステムプロンプトとして与える。 生成 AI に丸投げするアプローチでは、クエリ変換の精度とセキュリティに課題がある • • 精度 • 正解率は約50% • テーブル選択や集計条件の誤りにより、意図したクエリを生成できない • インデックスの考慮不足により、大量データのパフォーマンスが懸念される セキュリティ • 機微情報の漏洩リスクがある Copyright© 2026, JAZUG All Rights Reserved. 15
RAG + SQL View のアプローチで課題解決 RAG(クエリテンプレート) + SQL View を組み込む
Description Parameter Query 売上を取得する 日付(年月日) SELECT * FROM Sales WHERE 日付 = @date 予算を取得する 日付(年月) SELECT * FROM Budget WHERE 日付 = @date LLM LLM 自然言語による質問 テンプレート 検索(RAG) クエリ実行 SQL DB (View) クエリ結果 回答生成 View は安全な公開用スキーマ →ユーザーに見せたくない列を除外する 検索 ・ベクトル検索 ・キーワード検索 ・スコア統合(RRF) パラメータ抽出・検証 ・パラメータ抽出 質問から条件抽出 ・パラメータ検証 必須有無 型や範囲など Copyright© 2026, JAZUG All Rights Reserved. 判定・評価 クエリ生成 セキュリティ検証 検索候補が質問に適合し ているかを LLM で判定 テンプレートのパラメー タを埋め込む ・SQL 構文チェック ・インジェクション対策 16
“質問の意図を正しく解釈すること” が重要 正解率は約70%に向上、セキュリティも担保できたが・・・ 精度向上の壁は、質問の意図を正しく解釈できていないことだった 質問の意図を正しく解釈する →メモリエンジニアリング(コンテキストや会話履歴の参照) →ナレッジの拡充(業務用語の辞書など) →曖昧な質問の場合は聞き返す(対象や期間など) Azure Durable
Functions チャットから質問を送信 チャットに回答を返却 Orchestrator Activity Agent 選択 GetAgentToRun (Function Calling) AOAI NL2SQL Agent 実行 NL2SQL Agent AOAI SQL Query 実行 Execute SQL Agent 回答生成 SynthesizeAgentCallResults Durable Task Scheduler Copyright© 2026, JAZUG All Rights Reserved. Cosmos DB SQL Database AOAI SQL クエリの結果をもとに質問に回答する →クエリの結果が知りたいわけではない →求める回答を生成するナレッジの拡充 17
まとめ Azure Durable Functions により、Agent のワークフローを柔軟 に構築できた RAG + SQL
View により、NL2SQL の精度と安全性を向上できた 重要なのは SQL を生成させる精度だけではなく、LLM が正しい 情報にたどり着ける仕組みを設計すること そして最後に残る課題は、質問の意図を正しく理解すること 18 Copyright© 2026, JAZUG All Rights Reserved.