Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Weaveを用いた生成AIアプリケーションの評価_モニタリンングと実践例.pdf

Keisuke Kamata
December 16, 2024
260

 Weaveを用いた生成AIアプリケーションの評価_モニタリンングと実践例.pdf

Keisuke Kamata

December 16, 2024
Tweet

More Decks by Keisuke Kamata

Transcript

  1. 2 ディープなデータ活用 の世界を支える・先導する • Deep Learning / 生成AI • ヘルスケア

    / タンパク質言語モデル サイエンスの中でのデータ分析の ポテンシャルを探求 • 動物実験 • 生体信号処理 新しいコンセプトのデータ活用を 普及させる • 因果推論 • オフラインABテスト Keisuke Kamata ヘルスケア業界における 幅広いデータ活用から社会を支える • 機械学習 • ヘルスケア/コロナ対策 @olachinkei 工学部・情報学研究科 Engagement Manager Lead Data Scientist Healthcare team lead Machine Learning Engineer
  2. 生成AI開発には幅広いアプローチがある 3 取り組んでいる企業の数 Low Model Customization OpenAI、Anthropic、Google、Amazon などの企業から 提供される既製モデルを使用します。モデルプロバイ ダーのAPIを用い、プロンプト・エージェントレベルの開

    発 Moderate Customization Llama などのオープンウェイトモデルを使用し、ファイ ンチューニング In-house Model Development 自社で基盤モデルをトレーニング モデルカスタマイズのレベル 高 低
  3. 4 Compound AI / AI Agent System • 生成AIの応用が進むにつれて、単一モ デルに依存したアプローチから、多数の

    コンポーネントを統合する Compound AI (複合AI)システムへのシフトが進んでい る • 特に2023年以降、自律的な意思決定を 行うAI agentシステムの開発に注目が 集まっている Compound AI systemの定義は、The Shift from Models to Compound AI Systems, 2024 Feb, BERKELEY ARTIFICIAL INTELLIGENCE RESEARCH 参照 システムはより複雑に ...
  4. 6 Compound AI / AI Agent Systemの評価 - 概論 システム全体の評価

    各ステップ・サブモジュールごと の評価 ステップ・ツールの 選択・軌跡の評価
  5. 7 Compound AI / AI Agent Systemの評価観点 1/3 システム全体の評価 システムに入力を与え、期待される回答や成果物が、特定の制約(例:レ

    イテンシーやコスト)を満たした上で得られるかを評価 メリット • タスク達成度を直接測定できるため、最終成果物に最も近い評 価が可能 課題 • システム全体の評価だけだと、内部プロセスが不透明で、失敗 の原因特定が困難 • 評価に時間がかかる場合があり、反復的な改善プロセスにおい て非効率的
  6. 8 Compound AI / AI Agent Systemの評価観点 2/3 システム内で行われる中間的な意思決定やアウトプット、レイテンシー、コ ストが適切であるかを、各ステップ単位で検証

    メリット • 問題箇所をピンポイントで特定可能 • 一度評価体系を構築すると、評価の実装が軽量化される 課題 • 各ステップに合わせた評価体系やデータセットの準備が必要で、 労力がかかる • 過去ステップ情報を考慮した評価データセットの設計が複雑になる 各ステップ・サブモジュールごとの評価
  7. ステップ・ツールの選択・軌跡の評価 9 Compound AI / AI Agent Systemの評価観点 3/3 タスク達成に至る一連のステップ(ツールの呼び出しや中間的な回答)を

    評価し、想定された手順通りに進んでいるかを検証します。例えば、ある 入力に対し、想定されるツール・ステップのシーケンス(例: [‘a1’, ‘b4’, …])を準備し、実際の選択結果が一致しているかを確認 メリット • 想定外のツール呼び出しや不要なステップが検出可能 • レイテンシーやコストに悪影響を及ぼす要因の特定が可能 • 使用されていないステップの削除によるシステムの複雑性解消 課題 • 複数の正解経路が存在する場合、評価基準の設定の難易度が 高い • 全行程の分析を行おうとした場合、煩雑で、評価プロセスの負 担増
  8. 15 MLOpsからLLMOpsまで: 幅広い開発ワークフローをカバーする 事前学習 継続事前学習 ファイン チューニング・評価 アプリケーション 構築・評価 アプリケーション

    モニタリング Models モデル構築と ファインチューニング Weave 生成AI アプリケーション開発 MLエンジニア ソフトウェア エンジニア 生成AIアプリケーションを 構築したいソフトウェア開発者 基盤モデルの構築や ファインチューニングを行いたい MLエンジニア 生成AI開発のフロー
  9. 16 import weave weave.init() @weave.op() def get_relevant_documents(question:str): return docs get_relevant_documents(question)

    企業向けの安全なデプロイメント W&Bクライアント フロントエンド W&Bサーバー お客様セキュリティー領域 W&Bセキュリティー領域 W&Bの基本的な使い方 @weave.op()デコレータひとつで生成AI APIの呼び出しに関連する すべてのコードがバージョン管理され、保存 ・共有されます
  10. 17 Weave: LLMチェインの TraceからEvaluationまで 生成AIワークフローで生成されるすべての情報を、実験から評価、本番環境まで整理 トレース • Weaveはすべての入力データと出力 データを自動的に記録 •

    簡単に操作できるトレースツリーに詳細 な情報を記録 • レイテンシ、コストの記録も可能 評価 • 独自の評価方法を定義し、さまざまなシ ナリオでパフォーマンスを測定 • システムの比較レポートの自動生成 • ヒューマンフィードバックも可能 幅広いインテグレーション and more… モデル・データ・ プロンプトのバージョン管理 • モデル、データセットの保存・バージョン 管理がWeave内で可能 • 読み出しも数行で実行可能
  11. 19 import weave from weave import Evaluation import asyncio weave.init('evaluation-project')

    evaluation = Evaluation( dataset=evaluation_dataset, scorers=[evaluation_func1, evaluation_func2] ) asyncio.run(evaluation.evaluate(function_to_evaluate)) Weave内での評価
  12. 21 Let’s be the first 🐧! Let’s share your practice🗒

    https://wandbai.notion.site/W-B-Models-Weave-22dad8882177429ba1e9f0f05e7ceac3?p vs=4