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
RAGの簡易評価によるフィードバックサイクル実践 / Feedback cycle pract...
Search
Takeshi Kondo
July 11, 2024
Technology
2
4.6k
RAGの簡易評価によるフィードバックサイクル実践 / Feedback cycle practice through simplified assessment of RAGs
https://findy.connpass.com/event/323129/
Takeshi Kondo
July 11, 2024
Tweet
Share
More Decks by Takeshi Kondo
See All by Takeshi Kondo
SRE の考えをマネジメントに活かす / applying SRE ideas to management
chaspy
7
5.1k
定量データと定性評価を用いた技術戦略の組織的実践 / Systematic implementation of technology strategies using quantitative data and qualitative evaluation
chaspy
9
1.5k
エンジニアブランディングチームの KPI / KPI's of engineer branding team
chaspy
2
1.8k
「SLO Review」今やるならこうする / If I had to do the "SLO Review" again
chaspy
3
1.6k
開発者とともに作る Site Reliability Engineering / SREing with Developers
chaspy
10
7.7k
自己診断能力の獲得を目指して / Toward the acquisition of self-diagnostic skills
chaspy
1
4.5k
『スタディサプリ 中学講座』における E2E Test の運用と計測による改善 / Improved E2E testing through measurement
chaspy
0
4.2k
『スタディサプリ』における SLI/SLO の継続的改善 / Continuous improvement of SLI/SLO at StudySapuri
chaspy
1
3k
ポストモーテム運用を支える文化と技術 / Culture and Technology Supporting Postmortem Operations
chaspy
2
2.2k
Other Decks in Technology
See All in Technology
大幅アップデートされたRagas v0.2をキャッチアップ
os1ma
2
530
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
150
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.2k
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
280
2024年にチャレンジしたことを振り返るぞ
mitchan
0
130
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
310
KubeCon NA 2024 Recap / Running WebAssembly (Wasm) Workloads Side-by-Side with Container Workloads
z63d
1
240
オプトインカメラ:UWB測位を応用したオプトイン型のカメラ計測
matthewlujp
0
170
20241220_S3 tablesの使い方を検証してみた
handy
3
370
How to be an AWS Community Builder | 君もAWS Community Builderになろう!〜2024 冬 CB募集直前対策編?!〜
coosuke
PRO
2
2.8k
社外コミュニティで学び社内に活かす共に学ぶプロジェクトの実践/backlogworld2024
nishiuma
0
260
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
33
1.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Producing Creativity
orderedlist
PRO
341
39k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
2
170
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Transcript
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 RAGの簡易評価によるフィードバックサ イクル実践 Takeshi Kondo
(@chaspy) 現場で実践!RAG活用術 Lunch LT ― 運用して 分かった"つらみ"とその対策
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 Takeshi Kondo (@chaspy) Director
of Engineering StudySapuri K12 at Recruit Co., Ltd. 観葉植物 クラフトビール が好き 今日は友達増やしにきました! chaspy chaspy_ https://chaspy.me
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 スタディサプリプロダクトについて 国内小中高と 海外を担当しています
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 Agenda | 01 02
03 背景 RAG のフィードバックを得る方法 課題(つらみ)
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 簡易フィードバックの お願い ソースドキュメント へのリンク
社内の Feature Toggles 基盤のこと こういうのを作りました
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 アーキテクチャ 素敵な図はチームメンバーの aoi さん作のものをお借りしました。詳細はブログ
RAGを使って社内のGitHubリポジトリに散ら ばっているドキュメントを自然言語で検索できるSlack botを作りました - スタディサプリ Product Team Blog もご覧くださ い!
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 RAG の評価をする上での前提となる考え ➔ 現状ベータ版であり、ユーザからフィードバックを
高速に得て、改善を繰り返すかが重要 ➔ やりたいことは検索であり、ソースドキュメントに たどり着くことをゴールとしているので、高度な評 価指標は必要ない ◆ ※ドキュメントは monorepo で markdown + docsify な どの SSG でビルド & Amazon S3 で配信しているものが 多い
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 簡易的に評価する手法 • (1)回答に満足したかどうかを リアクションで促す
◦ 生成 AI のアウトプットに固定文を追加しているだけ • (2)ローカルで同一の API を実行し、求める検索結 果が得られたかどうかを確認する ◦ E2E でのリグレッションテスト相当 ◦ テストケースと回答のセット(質問/url)を csv で持つ
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (1)回答に満足したかどうかを リアクションで促す これです!!!
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (1)回答に満足したかどうかを リアクションで促す • 意外と押してくれる
◦ 将来、満足度を計測するのにも使えそう ◦ インターフェースが Slack だったからこその利点 ◦ チャンネルはウォッチしてるので満足していなさそうだっ たら @chaspy が回答していますw ▪ このタイミングで、ソースドキュメントの追加・編集をやっている
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (1)回答に満足したかどうかを リアクションで促す 回答は得られなかったが... 人間が回答しつつ、
ドキュメント追加
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (1)回答に満足したかどうかを リアクションで促す • フィードバックはタイミングと簡単さが重要
◦ google map の経路案内後の UI にヒントを得た ◦ タスクを終えて一息ついたタイミングで、押すだけ ▪ 逆にタスク中で邪魔なタイミングだと反感を買う
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (2)ローカルで同一の API を実行し、求める検索結果が 得られたかどうかを確認する
• 質問と期待するソース url のセットを csv で持つ ◦ Qall-k8sって何?,https://docs.xxx.com/xxxx/yyy/qall- k8s • 1行ずつ呼んで、api を呼び出し、最終回答に url が 含まれるかを確認するだけ
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (2)ローカルで同一の API を実行し、求める検索結果が 得られたかどうかを確認する
• ドキュメントが増えていくにつれて検索精度が落ち ることが予想される ◦ それに管理者側で事前に気付けるようにする ◦ 検索システムと割り切ることで、高度な評価をしない
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 課題(つらみ) • (1)コスト高い問題 •
(2)ソース url の伝播難しい問題 • (3)index 再生成うまくいってない問題
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (1)コスト高い問題 • 最初に日本リージョンを選んでしまったため、最新 モデルが使えるまで時間がかかる
◦ gpt-4-32k をしばらく使っていたが、冷静に考えると高い ▪ input ¥9.637 / 1000 token (Azure OpenAI) ◦ 調べると Input token 数がかなり多い ▪ 1回の問い合わせで10000token使っていた、つまり1回あたり100円
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (1)コスト高い問題 - 解決策 •
まず計測 - 回答時に token を出力 • 採用する検索結果を5件から3件に • 米国 Region で作り直そうと思ってたら先週日本 Region でも gpt-4o 使えるように ◦ ¥0.8031 / 1000 input token, 1/10 以下に • 最初から最新モデルが使えるリージョンで作ろう
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (2)ソース url の伝播難しい問題 ①
Metadata に url を付 与 ② field mapping を設定 ③ URL も返却せよと指示 しかし回答結果は不安定...
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (2)ソース url の伝播難しい問題 ③
URL も返却せよと指示 ->なくせた ちゃんとAPI Response 見ましょう リクエストボディで指定しないとレスポンスボデ ィに url は含まれてなかった! {“parameters”: { "fieldsMapping": {"urlField": "customUrl"}, }
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 (3)index 再生成うまくいってない問題 (未解決) •
当時試行錯誤していた際、blob のメタデータに付与した url が 間違っていたり、null のままだったりした • その場合、indexing すると別の index が生成されてしまう • index の Reset で解決するはずだが、AI Search で検索すると 過去の誤ったチャンクが引っかかってしまう...(なんで?) ◦ とはいえ E2E で実行して問題ないので、問題ないのかも
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 まとめ ➔ Slack 上で問い合わせる
RAG を使った Bot を作った ◆ 実質ドキュメント検索システムとして作っている ➔ 回答に をつけてもらったり、E2E でリグレッションテスト を実施することで評価している ◆ 簡易な評価でもフィードバックサイクルを回すのに十分役立っている ➔ 課題としてコストや、特有のソース url の伝播や、index の reset に関するつまづきを紹介しました
#RAG_findy 現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策 Thank you for listening!
Takeshi Kondo (@chaspy) Director of Engineering StudySapuri K12 at Recruit Co., Ltd. 今日紹介した課題は LT 発表決まってか ら解決しました!LT 駆動進捗 chaspy chaspy_ https://chaspy.me