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
AIのAIによるAIのための出力評価と改善
Search
たまねぎ
June 25, 2025
Technology
3
880
AIのAIによるAIのための出力評価と改善
たまねぎ
June 25, 2025
Tweet
Share
More Decks by たまねぎ
See All by たまねぎ
[FlutterKaigi2024] Effective Form 〜Flutterによる複雑なフォーム開発の実践〜
chocoyama
1
13k
iOSDC2023:聴いて話すiOS 現実世界の「音」との連携
chocoyama
1
390
ハードウェア対応のリアル.pdf
chocoyama
0
110
20分でわかる!速習resultBuilder(iOSDC 2022)
chocoyama
7
3.7k
SwiftUIっぽくした話
chocoyama
1
720
SwiftUIとGraphQLでプロダクトの継続的な破壊に立ち向かう
chocoyama
6
2.7k
Other Decks in Technology
See All in Technology
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
210
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
630
Agile Leadership Summit Keynote 2026
m_seki
1
580
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
460
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
590
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
5
3.1k
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
210
今日から始めるAmazon Bedrock AgentCore
har1101
4
400
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.4k
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
160
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
270
Building an army of robots
kneath
306
46k
Typedesign – Prime Four
hannesfritz
42
2.9k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Google's AI Overviews - The New Search
badams
0
900
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Transcript
AIのAIによるAIのための出力評価と改善 AIの出力の質をあげる!チームの集合知を注入する方法
自己紹介 @_chocoyama(たまねぎ) 株式会社LayerX バクラク申請・経費精算チーム Flutterでモバイルアプリ作ってます よく使っているAI Coding Tools Claude Code,
Cursor 最近の悩み 老眼、鼻炎、知覚過敏と顔面周りのおぢ化が急速に進ん でいる © LayerX Inc. 2
「AIの出力の質をあげる!」 そもそも「質が上がった」ということをどう判断していますか?
AIの出力の質が上がったかどうか © LayerX Inc. 「ルールを追加したら、なんかいい感じに動いてそう」 「とりあえずルール見てくれてはいるから、なんかいい感じにやってくれてそう」 4
AIの出力の質が上がったかどうか →「なんかいい感じになってる」を脱しきれない もう少し主観的ではない形で評価したい! ※ 今日話す内容 x 完璧にうまくいっている o 試行錯誤しながら前に進んでいる ©
LayerX Inc. 「ルールを追加したら、なんかいい感じに動いてそう」 「とりあえずルール見てくれてはいるから、なんかいい感じにやってくれてそう」 5
弊チームのAI Codingの状況 © LayerX Inc. 1月ごろからCursor活用開始 ちょうどmdcファイルが使えるようになったぐらいのタイミング 元々活用していたTechDocumentsをそのままルールとしてimport なんとなくプロジェクトの文脈を理解してくれそう!という状態になる 一定レベルを超えない感覚があり、DesignDocやADRを一通りimportしてみるが、まぁまぁ...という感じ
Specっぽいのを入れてみたりしてみるが、良い感じにはならず... 6
改善したい! Tryしてみた
なんとなくの対策1:プロンプトの改善 © LayerX Inc. ルールの改善ではないため、根本的な基盤に対しては何も変化がない 個々の実装者のプロンプト力にも依存しており、再現性がない 8
なんとなくの対策2:ルールの追加や改善 © LayerX Inc. 足りてなさそうなルールの追加 ちゃんとワークしているのかよくわからない 「追加したルール見てくれてるから多分良さそう」から脱しきれない ルール設定のベストプラクティスへの準拠やAIによるルール改善を試す 対応内容によっては、明らかにアウトプット品質が低下 低下しなかったとしても、何が変わったのかイマイチわからない
9
なんとなくの対策3:AI Coding Agentの変更 © LayerX Inc. 「Claude Code使ってるとルールそんなに整備しなくてもいい感じだよ」 ルールの呪縛から逃れられるのであれば、それが一番楽 Cursor,
Cline, Roo Code → Claude Codeに切り替え 確かに良くなった感じがするが、うまくいかないこともまだまだ多い Flutter/Dartは弱い?プロジェクトが複雑すぎる? 10
そもそもルールがワークしてるか 把握できていない
何か対応を入れようとしてみても... その対応を入れたことで、どういった変化が 出るかがいまいち見えない 変わらないならまだしも、出力を悪化させる のは避けたい気持ちも生まれる 積極的にルールいじる動きになれない © LayerX Inc. 12
計測してみよう
どう計測するか LLMのアウトプットってシステマチックに評価できるもの...? © LayerX Inc. x「モデルの性能」自体を評価するような計測 o 実ユースケースに近い、アウトプットされたコードを評価するような計測 実行のたびに大きく結果が変わる 結果はテキストデータになるため、評価はある程度定性的に判断するしかない
14
世のプロダクトはどうやって評価している? © LayerX Inc. LangSmith がそれに近いアプローチをしている ※ LangSmith: LLMアプリケーションを構築するためのプラットフォーム 以下の組み合わせを構成し、LLMのアウトプットを評価
Datasets:評価対象となるもの(何を検証するか) Evaluators:出力を評価する関数(どう採点するか) Human:人が採点 Heuristic:ルールベースで採点 LLM-as-judge:LLMが採点 Pairwise:バージョンを比較して判定 15
エージェントに対する評価の方法 © LayerX Inc. Final Response:最終的なレスポンスだけを評価する ブラックボックス的にテキストレスポンスを評価することになるので、LLM-as-judge Evaluatorが効果的 「時間がかかる」 「内部の動作を評価していない」
「評価指標の定義が難しい」という欠点がある Single Step:エージェントのステップを単独で評価する 高速で実行でき、アプリケーションの失敗箇所を特定しやすい 「エージェントの全体像が把握できない」 「後半ステップのデータセット作成が困難」という欠点がある Trajectory:期待された経路をたどったかどうかを評価する エージェントが取った全てのステップを評価するアプローチ 複数の正しいパスがある場合に評価しづらい 16
今回試した組み合わせ → これを動かすための仕組みを用意した © LayerX Inc. 評価方法:Final Response Datasets:実装コード Evaluators:LLMが主体となり、人が最終チェック
17
構成 © LayerX Inc. Datasets Creator:Datasetsを生成する Evaluator:生成されたDatasetsを評価する 18
構成 © LayerX Inc. 簡単にするために、Datasets CreatorとEvaluatorをプロンプト化 このプロンプトを渡して、Agentに作業を委譲 19
構成 © LayerX Inc. 毎回プロンプト作るのも面倒→プロンプト生成作業もAgentに委譲 「プロンプト生成プロンプト」を用意 「担保したいこと」からDatasets CreatorとEvaluatorを自動生成 20
動作イメージ Claude CodeのCustom Slash Commandでプロンプ ト生成用プロンプトを実行 /create-benchmark で起動 © LayerX
Inc. 21
Datasets Creator 検証対象となるDatasets (実装コード)を生成する ためのタスクを定義したフ ァイル AIにはこれをプロンプトと して渡して、Datasetsを生 成してもらう ©
LayerX Inc. 22
Evaluator 生成されるDatasets(実装コード) をどう評価するか定義したファイル 最終的に、AIにこれを読ませながら成 果物の評価を行ってもらう © LayerX Inc. 23
評価の実行 Datasets Creatorと Evaluatorの内容に問題がな いことを確認 /benchmark で起動 LLMのアウトプットは一定 にはならない 複数回並列実行して総合的に判
断(Claude CodeのTaskツール で実現) © LayerX Inc. 24
結果 © LayerX Inc. 25
できるようになったこと © LayerX Inc. 「なんかよさそう」 「なんかイマイチ」という状態を客観的に評価できるようになった 変更前後の差分を見ることで、対応内容に価値があるかを判断しやすくなった (今後)モデルを変えるだけで、どういった変化が現れるか検証しやすくなった 26
実際に改善できたこと
1. ユビキタス言語の理解 © LayerX Inc. Claude Codeに乗り換えてから、ユビキタス言語の理解が足りてない気がする → ドメイン用語の理解度チェックのベンチマークを追加 28
1. ユビキタス言語の理解 © LayerX Inc. CLAUDE.mdにユビキタス言語の情報を追加 29
2. 定型的な実装の安定化 © LayerX Inc. すでに存在する実装パターンがあるが踏襲してくれない 30
2. 定型的な実装の安定化 © LayerX Inc. 実装の手順を記述したPlaybookを追加し、 CLAUDE.md にそのindex情報を追加 (コンテキストサイズを抑えるためimportまではしない) 31
課題 © LayerX Inc. 実行時間が長い コスト面を考えるとCIに載せられない try & errorも時間がないとできない(git worktreeなど活用して裏で回しておくことはできるが...)
これを実行する習慣は中々つかない 今回実験的にやってみているが、普段積極的にやるかと言うとやらない気がする... ここまで仕組み化はせず、プロジェクトで何個か挙動を確認するためのスニペットを持っておくぐらいでも十分 かも あくまでベンチマーク 実際の実装時に100%期待結果が出るとは限らない ある程度、個々のプロンプトにも左右される (が、近い将来"プロンプト力"のようなものは重要じゃなくなってくるかもしれない) 32
今後、より意味のあるものにするには 継続的に色々試していくぞ! © LayerX Inc. ベンチマークの作成と起動をオートにする 「うまくいかなかったこと」を溜めておく → これをトリガーに自律的に改善を回せたら良いかもしれない AIからの自動提案などと組み合わせる
それらの改善提案を適用すると、「Before/Afterでこうなるよ」を合わせて示す → 取り込むモチベーションになる 33
None
© LayerX Inc. 35