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
280
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
840
Azure Durable Functions で作った NL2SQL Agent の精度向上に取り組んだ話/jat08
thara0402
0
420
これでバッチリ!Azure マルチテナントアーキテクチャ設計のコツ/jat06
thara0402
0
770
Azure Load Testing を使って Azure Functions Flex Consumption の HTTP Trigger のパフォーマンスとコストを最適化してみよう/global-azure2025
thara0402
0
360
Prompty を使って生成 AI アプリケーション開発のプロンプトを管理する/jat03
thara0402
0
95
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
モバイルアプリ開発概論2026
recruitengineers
PRO
6
650
Model Studio CLI × Token Plan
maigo999
0
190
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
260
少人数チームで実現する、大規模AWSサーバーレス基盤における"揺らがない"信頼性運用
maimyyym
1
110
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
私がブラウザを自作したくなった理由
supurazako
1
260
その“隠したつもり”が命取り ── 自前と平文をやめて「正解」に委ねる
kuroneko13
0
130
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
9.2k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
Apache Icebergインフラストラクチャ:ストレージ・カタログ・エンジンの選択肢とClouderaプラットフォームでの実装
tsugiyama
0
120
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
330
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
3
980
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
650
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
530
Six Lessons from altMBA
skipperchong
29
4.4k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
670
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
Everyday Curiosity
cassininazir
0
290
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Speed Design
sergeychernyshev
33
2k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.9k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
770
Designing Experiences People Love
moore
143
24k
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.