![見出し画像](https://assets.st-note.com/production/uploads/images/167352300/rectangle_large_type_2_54db201bca9cb29fec1b8c055e7fcf58.png?width=1200)
DifyにLangfuseを連携してLLMでLLMチャットボットを分析。〜RAGチャットボットの精度向上に貢献〜
はじめに
Difyは、チャットボットを迅速に構築できるため、受託開発や社内チャットボットの開発に使用されてます。
一方で、開発したチャットボットの運用管理やパフォーマンス分析といった側面も重要です。
今回紹介するのは、これらのニーズに応えるツール、Langfuseです。
![](https://assets.st-note.com/img/1733385161-R8yXt2aUkLYrzKeni07E5Dxw.png)
DifyとLangfuseを連携させることで、データに基づいた意思決定、継続的な改善、そして効果的なDifyチャットボットの運用管理を実現できます。
本記事では、DifyとLangfuseの連携方法を解説し、その活用例としてRAGチャットボットの分析を取り上げます。
Langfuseとは
Langfuseは、AIを使ったアプリケーションがどのように動いているか、きちんと仕事をしているかをチェックして、より良くするためのツールです。
Langfuseは、ユーザーがどんな質問をしたか、AIがどんな答えを返したか、どれくらい時間がかかったか、といった情報を記録します。さらに、AIの回答が適切だったかどうかも評価できます。
これらの情報を分析することで、
AIが間違った答えを返す原因を突き止めたり、
答えが返ってくるまでの時間を短縮したり、
AIの利用料金を節約したり、
よりユーザーフレンドリーなチャットボットに改良したり
といった改善を行うことができます。LangfuseはDifyと連携することで、チャットボットの動作状況を詳細に分析し、改善に役立てることが可能です。
Langfuseの基本的な用語
Langfuseでは、いくつかの重要な用語が使われます。今回はレストランでの食事に例えて解説してます。
トレース: ユーザーがAIに質問し、回答を得るまでの一連の流れを記録したものです。レストランで注文をしてから料理が提供されるまでの一連の流れだと考えてください。
セッション: ユーザーとAIの複数回のやり取りをまとめたものです。レストランで複数品注文し、食事をする一連の行為がセッションに当たります。
ユーザー: AIを利用するユーザーのことです。レストランに訪れたお客さんを想像してください。
イベント: トレースの中で発生した特定の出来事を記録したものです。例えば、AIが外部のデータベースにアクセスした、特定のエラーが発生した、といった出来事です。レストランで「お水ください」といった注文以外の依頼を想像してください。
メタデータ: トレースやイベントに追加できる補足情報です。ユーザーの属性(年齢、性別など)や、AIの動作環境など、分析に役立つ情報を自由に記録できます。レストランで顧客の好みなどの情報をメモしておくことを想像してください。
Langfuseの使い方
1.ダッシュボードの活用
Langfuseのダッシュボードでは、トレース数、エラー発生状況、処理時間、コストなど、チャットボットの運用状況を様々な角度から確認できます。
![](https://assets.st-note.com/img/1733481795-HvR9dMVgezK6CPL3EDoU0rhy.png?width=1200)
グラフや数値で表示されるため、視覚的に状況を把握し、問題点や改善点を見つけることができます。
2. Traces(トレース)
トレースは、チャットボットとの1回のやり取り(質問と回答)を記録したものです。例えると、レストランの注文内容、提供された料理、注文にかかった時間などが記録されているのがトレースです。
![](https://assets.st-note.com/img/1733481795-DFEIZhBfeXJs3kL7vYSyr0Nx.png?width=1200)
Langfuseでは、トレースを分析することで、個々のやり取りがどのように行われたかを詳細に把握できます。
![](https://assets.st-note.com/img/1733481795-4Gt13OSyHqTxowD5IdVcrMpR.png?width=1200)
3. Sessions(セッション)
セッションとは、関連する複数のトレース(質問と回答)をまとめたものです。例えると、レストランでコース料理を注文し、前菜からデザートまで食べる一連の流れが1つのセッションです。
![](https://assets.st-note.com/img/1733481795-VwQ3uI2cynFZvgXaf7brqphP.png?width=1200)
Langfuseでは、セッションを分析することで、ユーザーがチャットボットとどのように会話しているのか、全体の流れを把握できます。
![](https://assets.st-note.com/img/1733481795-XOkim2pM6gn5WbBlQsKDTeIq.png?width=1200)
4. Generations
Generationsは、AIが生成した回答を記録する場所です。AIがどのように回答を作成したのか、どのような単語を使ったのか、といった情報が記録されます。
![](https://assets.st-note.com/img/1733481795-zPawKF42DXBRMqbstLhlkfiQ.png?width=1200)
モデル名、プロンプト、生成されたテキスト、使用されたトークン数、コストなどの情報が含まれます。
![](https://assets.st-note.com/img/1733481795-WTgAnIFhod2KjsO8M3QpU1v6.png?width=1200)
5. Scores
スコアは、AIの回答の質を評価するための点数です。例えば、回答の正確さ、適切さ、分かりやすさなど、様々な観点から評価できます。
![](https://assets.st-note.com/img/1733481795-IV96XT2YgfR0eh7FznOWUvy4.png?width=1200)
Langfuseでは、AIを使って自動でスコアを付けたり、人間が手動でスコアを付けたりすることができます。これらのスコアを分析することで、AIの回答の質を向上させることができます。
6. Models(モデル)
Models機能では、どのAIが使われているか、そしてそのAIの利用状況と費用を追跡できます。AIが処理した文字数や、利用にかかった費用などが記録されます。
![](https://assets.st-note.com/img/1733481994-cKxdpIwRj9PrZ7MUYsNbuFVy.png?width=1200)
Langfuseには、OpenAIやAnthropic、Googleなど、主要なAIサービスの情報があらかじめ登録されています。そのため、これらのサービスを利用している場合は、Langfuseが自動的にAIの使用状況や費用を計算してくれます。
もし、上記以外のAIサービスを利用している場合でも、手動で情報を登録することで、Langfuseで追跡できます。
※noteメンバーシップ開設
Dify Baseでは、メンバーシップを開設しました。
2月ご入会の方限定で、1980円とさせていただきます。
3月からは2480円としますが、2月中にご入会いただいた方限定で、値上げ後も1980円でご購読いただけます。
記事拡充後もずっとお得にご覧いただけますので、ぜひ2月中にご登録ください。
DifyとLangfuseの連携設定
DifyとLangfuseの連携は、非常に簡単です。以下の手順に従って設定を進めてください。
この記事が気に入ったらチップで応援してみませんか?