見出し画像

DifyとLangfuseを連携させてみよう!


オープンソースのLLMエンジニアリングプラットフォーム

LangfuseはLangsmithと同様にDifyのv0.6.12で連携ができるようになりました。(LangsmithとDifyの連携方法についてはこちらの記事を参照ください)
LangfuseとLangsmithとの大きな違いとしては、Langfuseはオープンソースで提供されているためセルフホスティングすることが可能という点です。

Langfuse

本記事ではLangfuseのCloud版とDifyの連携方法を紹介しますが、もちろんセルフホストしたLangfuseとの連携も可能であるためこちらも連携方法が確認できたら記事にしようと思います。
Langsmithとの連携を試されたことがある方は、LangfuseのCloud版との連携する際の流れは基本的に同じなのでスムーズに進められると思います。

Langfuseの準備をしよう!

Langfuseのアカウント作成

Langfuseのアカウントを作成します。LangfuseのHPにアクセスし、「Sign up」からアカウントを作成しましょう。

「Sign up」の画面から、アカウントを作成します。アカウントを作成したらログインしましょう。
「Data Resion」は”EU"と"US"から選べますがお好きな方をお選びください。

アカウント作成画面

APIキー、ホスト名を取得

Difyとの連携にはAPIキー、ホスト名が必要になります。まずはプロジェクトを作成します。
メニュー画面の「Create new peoject」から「+ New project」を選択してください。

メニュー画面

Project nameに任意の名前をつけて「Create」をクリックしてください。

プロジェクト作成画面

メニュー画面の左下から作成したプロジェクトを選択し、歯車アイコンの「Setting」を選択してください。

Settingを選択した後の画面

前述のSetting画面から「+ Create new API keys」をクリックしてAPIキーを作成してください。
API Keys画面が表示されるので以下の3点をメモしてください。
・Secret Key
・Public Key
・Host

API Keys画面

ここまでで、Langfuseの準備は完了です。

DifyにLangfuseを設定しよう!

Langfuseの準備が完了したので、Difyで作業に移ります。
今回のDifyの環境は以下の通りです。

実行環境

Windows11(RAM 32GB)
WSL2 ubuntu
Dify v0.6.15(OSS)
cursor

LangfuseのAPIキー、ホスト名を設定

Difyを起動して適当にチャットボットを作成しましょう。(作成されたことないからはこちらを参照ください。)
チャットボットを作成したら、画面左のメニューから「概要」を選択します。

チャットボットの作成画面

「概要」の画面が表示されたら、画面右上の「Tracing app performance」から、Langfuseの「config」を選択します。

概要画面

「Config Langfuse」画面がポップアップされるので、LangfuseのSecret Key,Public Key,Hostを設定して「Save & Enable」をクリックしてください。

「Config Langfuse」画面のポップアップが閉じて「Tracing」が「IN SERVICE」となっていれば設定完了です!

IN SERVICEとなって緑色のランプが点灯

動作確認をしてみよう!

DifyにLangfuseの設定が完了したので動作確認をしてみます。

チャットボットに質問を投げかける

Difyで作ったチャットボットに質問文を投げかけてみましょう。

今回はラーメンの作り方を聞いてみる

Langfuseで出力をチェックしてみる

Langfuseのメニュー画面からTracesを選択して、Traces画面を表示してください。Traces画面からチャットした時間付近のメッセージを選択してください。

Traces画面

実行結果を選択すると、Difyからの入力と出力の結果が表示されます。
これで動作確認は完了です。

実行結果

おわりに

今回は前回のLangSmithとの連携に続いて、DifyとLangfuseを連携と簡単なケースでの動作確認を行いました。冒頭でも書きましたがLangfuseはオープンソースで提供されているツールであるため、セルフホスティングすることでデータを管理しやすくなります。オープンソース版のLangfuseとDifyの連携もチャレンジしてみたいですね!
本記事でご紹介した通り、Cloud版との連携は簡単にできますので是非お試しください!