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

AI自体のOps 〜LLMアプリの運用、AWSサービスとOSSの使い分け〜

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

AI自体のOps 〜LLMアプリの運用、AWSサービスとOSSの使い分け〜

Avatar for みのるん

みのるん

March 04, 2025
Tweet

More Decks by みのるん

Other Decks in Technology

Transcript

  1. 公開情報 1 KDDI Agile Development Center Corporation $ whoami 御⽥

    稔(みのるん) @minorun365 テックエバンジェリスト KDDIアジャイル開発センター株式会社(KAG) クラウドや⽣成AIで内製開発を⾏いながら 技術の楽しさを広める活動をしています AWS Community Hero AWS Samurai 2023-2024 2024 Japan AWS Top Engineer 2024 Japan AWS All Certs Engineer Qiita 2024 Top Contributor
  2. 公開情報 4 KDDI Agile Development Center Corporation 今⽇はLLMOpsの話をします • LLMOps

    = Large Language Model Operationsの略 ◦ 雑に⾔うとDevOpsのLLMアプリ版 ◦ ⽣成AIアプリケーションの開発&運⽤サイクルをいい感じに回すための取り組みのこと (ツールやベストプラクティスなどをまとめてフワッと指すバズワード) ※似た⾔葉が多いので注意 ◦ MLOps, LLMOps︓ AI⾃体のOps ◦ AIOps︓ AI「で」⼀般的なアプリケーションのOpsを改善する取り組み 【参考】AIOps vs. MLOps vs. LLMOps(Weights & Biases社) https://wandb.ai/mostafaibrahim17/ml-articles/reports/AIOps-vs-MLOps-vs-LLMOps--Vmlldzo1MTQzODMz
  3. 公開情報 5 KDDI Agile Development Center Corporation なぜLLMOpsが必要か︖ • 開発中のデバッグが⾟い

    • リリースしたけど、使われ⽅が把握しづらい • 出⼒品質にユーザーが満⾜しているのか分からない
  4. 公開情報 7 KDDI Agile Development Center Corporation LLMアプリケーションのよくある実装要素 • 推論(Inference)︓

    単発のテキスト⽣成 • RAG(Retrieval-Augmented Generation)︓ 検索結果をコンテキストに含めて推論 • AIエージェント︓ ⾏動計画を推論したのち、ツールを⽤いて各タスクを実⾏ ➡ 特にAIエージェントは処理フローが複雑になりやすいので、 エラーが出たときどこの区間でミスが発⽣しているのか、可観測性がとても重要
  5. 公開情報 8 KDDI Agile Development Center Corporation LLMアプリの開発アプローチ • ローコード︓

    Dify、Bedrockフローなど • マネージドサービス︓ Bedrockナレッジベース/エージェントなど • コーディング⽤ライブラリ/フレームワーク︓ ◦ AWS SDK(Bedrock Converse API、マネージドサービス呼び出し) ◦ LangChain(⼈気処理を抽象化、マルチプロバイダー対応) ◦ LlamaIndex(LangChainよりシェアは低いが、RAGに強みをもつ) ➡ 選んだ開発フレームワークによって、採⽤しやすいLLMOpsツールが変わる︕
  6. 公開情報 10 KDDI Agile Development Center Corporation LLMOps その①「監視」 監視が必要な主要項⽬

    • メトリクス︓ リソースに関する特定の数値データ(例︓モデルの呼び出し回数) • ログ︓ システムコンポーネントの動作記録(例︓Python APIサーバーの実⾏ログ) • トレース︓ ⼀回のアプリケーション動作がたどる痕跡(例︓RAG処理のトレース)
  7. 公開情報 11 KDDI Agile Development Center Corporation AWSアカウント LLMOps その①「監視」

    「LLM処理」と「普通のアプリ部分」で監視ツールを使い分けよう︕ その他の機能 クライアント フロントエンド バックエンド • LLM • RAG • エージェント この辺はLLM特有の 監視を適⽤
  8. 公開情報 12 KDDI Agile Development Center Corporation LLMOps その①「監視」 「LLM処理」部分の監視に使われる主なツール

    • AWS CloudWatch︓ AWSネイティブの監視機能ファミリー ◦ メトリクス︓Bedrockのモデルに関するメトリクスを確認できる ◦ ログ︓Bedrockのモデル呼び出しログを記録できる(S3も選択可) • LangSmith︓ LLMアプリ特化の監視SaaS。LangChain社が提供する「先発品」 • Langfuse︓ LangSmithのオープンソース版といえる製品。 ⾃分のクラウド上にセルフホストがしやすい。SaaS版もあり ➡ LangSmith/Langfuseは、PythonアプリやLangChainアプリには計装しやすい。 (ローコードやマネージドサービスでは、詳細なトレースを取るのがかなり⼤変)
  9. 公開情報 14 KDDI Agile Development Center Corporation LLMOps その①「監視」 AWS

    CloudWatch(ログ) BedrockのModel Invocation Loggingを 事前に有効化しておく 👇
  10. 公開情報 15 KDDI Agile Development Center Corporation LLMOps その①「監視」 LangSmith(トレース)

    ※画像はLangChain社 公式Xアカウントより ⼀連の処理がたどった イベントの⼀覧 選択した箇所の ⼊⼒と出⼒
  11. 公開情報 18 KDDI Agile Development Center Corporation LLMOps その②「評価」 そもそも評価って何︖

    ⾃動 評価 ⼈⼒ 評価 (LLM-as-a-Judge) LLMアプリケーション 出⼒結果 • 正確性︓1.0 • ⽂脈回収︓ 0.65 • Good 👍 / Bad 👎 • 「xxx が⾜りない」 評価結果を 改善に活かす
  12. 公開情報 19 KDDI Agile Development Center Corporation LLMOps その②「評価」 評価エンジン

    • Ragas︓ 有名なOSS。もともとRAG⽤だったが、最近エージェントにも対応 • OpenEvals/AgentEvals︓ 最近LangChainが発表したOSS 評価結果のGUI管理ツール(内蔵エンジンもあり) • LangSmith/Langfuse︓ 評価結果をトレースと紐づけるには必須 オフライン評価ツール(エンジン+簡易GUI) • Bedrock Evaluations︓ モデルもしくはナレッジベースをバッチ評価できる
  13. 公開情報 21 KDDI Agile Development Center Corporation LLMOps その②「評価」 Ragas

    使いたい評価メトリクスと、 その判定をするLLMを指定 LLMアプリへの⼊出⼒を設定して 評価メソッドを実⾏ 評価スコアが出⼒される(0〜1)
  14. 公開情報 23 KDDI Agile Development Center Corporation LLMOps その②「評価」 Langfuse(Evaluation

    / Score) 👈 評価メトリクスをGUIで作成可能 評価結果のスコアをトレースに記録できる (評価⾃体は他のツールを使ってもOK)
  15. 公開情報 24 KDDI Agile Development Center Corporation LLMOps その②「評価」 Bedrock

    Evaluations 使いたいメトリクスを選択し、⼊⼒データをS3にJSONLで格納
  16. 公開情報 26 KDDI Agile Development Center Corporation プロンプト テンプレート LLMOps

    その③「プロンプト管理」 プロンプト管理とは︖ バージョン1 バージョン2 エンジニア が更新 プロダクトオーナー が更新 LLMアプリ チーム開発で、プロンプトの更新がデグれないように かつ更新履歴や差分がわかるように管理するための⼿法のこと
  17. 公開情報 27 KDDI Agile Development Center Corporation LLMOps その③「プロンプト管理」 プロンプト管理に使えるツール

    • Bedrockプロンプト管理︓ AWSのマネージドサービス。マネコン&APIともに対応 • LangSmith/Langfuse︓ GUI & SDKでプロンプトの管理が可能 • テキストファイルでGit管理︓ 触るのがエンジニアだけなら全然アリ ➡ ようは、クソ⻑い⾃然⾔語のプロンプトがアプリのコードに混ざるとしんどいので まずは分けて管理できればOK︕
  18. 公開情報 31 KDDI Agile Development Center Corporation まずはSaaS版を無料で使ってみよう︕ AWSアカウント クライアント

    フロントエンド バックエンド LLM機能 通常の監視 Langfuse (SaaS版) トレースしたい 関数をデコる