
Langfuse:本番のAIチャットボットを可視化する
公開日:
読了時間: 2 min
テーマ: テクノロジー
著者: Leandro Valencia
AIボットは返事をするが、正しいかは見えない。LLMのオブザーバビリティとは何か、オープンソースのLangfuseがコスト・エラー・品質をどう見せるかを解説します。
目次
月曜、クライアントからこう来ます。「ボットが、送料は無料だと客に言った。無料じゃない。」パネルを開くと、会話は残っています。見えないのは、なぜそう答えたかです。
有効だったプロンプトはどれか。検索はどの文書を渡したか。モデルなのか、渡した文脈なのか、金曜に誰かが出した変更なのか。それが分からなければ、直しは当てずっぽうです。
企業のチャットボットやWhatsAppの導線を作っていると、この場面は繰り返します。AIについて書かれたもののほとんどは、ボットの作り方です。本物の顧客と話し始めたあと、何をしているかを見る方法は、ほとんど書かれていません。まだその導線を組んでいるなら、前の記事はプロセスをチャットボットに変える方法です。ここからは、出したあとの話です。
AIボットの静かな三つの失敗
従来のボットは、音を立てて壊れます。落ちる、エラーを返す、誰かが気づく。AIボットは静かに壊れます。必ず何かを答えるからです。本番でいちばん多い失敗は、この三つです。
- 正しそうで、間違っている答え。 モデルは価格も規約も営業時間も、自信満々に作り出します。客が文句を言うまで、誰も気づきません。
- 原因の見えないコスト増。 上限のない会話履歴や、エージェントの中のループが、APIの請求を倍にします。請求書は月末に届き、もう削るものがありません。
- 悪くなったのに、誰も知らないプロンプト。 一つのケースを直そうとしてプロンプトを変えると、別の三つが壊れます。比べられる版がなければ、知らせてくるのはユーザーです。
原因は三つとも同じです。問題はモデルだけではありません。中で何が起きたかが見えないことです。
LLMのオブザーバビリティとは
飛行機のフライトレコーダーを考えてください。事故は止めません。何が起きたかを、一歩ずつ再現できるようにします。LLMのオブザーバビリティは、ボットに対してそれをします。すべての会話の、すべてのステップを残し、あとから見直せるようにします。
やりとりは、それぞれトレースとして残ります。「送料は無料ですか」なら、こうなります。
- トレース: 顧客のWhatsAppメッセージ(1.8秒 · 0.004米ドル)
- ナレッジベースの検索:見つかった文書
- モデルの呼び出し:実際のプロンプトとその版、返信、トークン
- ユーザーに送った返信
これがあれば、送料無料の一件は数分で片づきます。検索が期限切れのキャンペーンを返し、モデルはそれを今も有効な条件として扱っていた、と分かります。もう当てずっぽうではありません。直す場所が分かります。
マーケティングの出身なら、これは会話のアナリティクスです。誰が何を聞き、いくらかかり、どこまでうまくいったか。
Langfuseが担う範囲
Langfuseは、言語モデルを使うアプリケーションを追跡し、評価し、改善するための、MITライセンスのオープンソースのプラットフォームです。機能のそれぞれが、上の失敗のどれかに答えています。
| 機能 | 何をするか | どの失敗に答えるか |
|---|---|---|
| トレース | 会話の各ステップを、コストとレイテンシ付きで記録する | 「なぜそう答えたか分からない」 |
| プロンプト管理 | プロンプトを版管理し、前の版へ戻せる | 「いつから悪くなったか分からない」 |
| 評価 | 別のモデル、ルール、人のレビューで返信に点を付ける | 「正しそうだが、間違っている」 |
| 実験 | 出す前に、新しいプロンプトやモデルを実際のケースで試す | 「一つ直して、三つ壊した」 |
| ダッシュボード | コスト、レイテンシ、品質の推移と、アラート | 「請求が倍になった」 |
つながる先は、OpenAI、Anthropic、Google、LangChain、Vercel AI SDK、CrewAI、n8n、それにOpenTelemetryに対応したスタックです。料金のページには、Canva、Khan Academy、Hugging Faceといったチームが載っています。
2026年1月16日、ClickHouseがLangfuseを買収しました。プロジェクトはオープンソースのまま、セルフホストでき、ライセンスも同じMITです。発表のなかでClickHouseは、2025年末の時点でGitHubのスターが20,000を超えていたと書いています。買収はこのガイドを変えません。クラウドのエンドポイントは同じで、計測のコードも、クラウド向けと自前のサーバー向けで同じです。
いくらかかるか
| プラン | 価格 | 含まれる利用量 | 保持期間 |
|---|---|---|---|
| Hobby | 無料 | 月50,000ユニット、ユーザー2人 | 30日 |
| Core | 月29米ドル | 月100,000ユニット、ユーザー数の上限なし | 90日 |
| Pro | 月199米ドル | 月100,000ユニット、ユーザー数の上限なし | 3年 |
| セルフホスト | 無料(払うのはサーバー代) | プラットフォーム側の上限なし | 自分で決めた期間 |
価格は公式ページのもので、2026年10月に確認しました。Hobbyに追加ユニットはありません。枠を使い切ると、プランはそこで尽きます。CoreとProでは、最初の100,000ユニットが含まれ、それを超えた分は段階制で、100,000あたり8米ドルから請求されます。ユニットとは、トレースのデータの点です。トレース本体と、各ステップ、各評価です。
試すならHobbyで足ります。リージョンは、プロジェクトを作るときに選びます。クラウドがデータを置くのは、米国、欧州連合、日本のいずれかで、ベースURLはその選択で変わります。
10分で最初のトレース
最短の道は、すでにOpenAIを使っているPythonのボットです。n8nやLangChain、別のツールでも考え方は同じで、手順の詳細は連携のガイドにあります。
- アカウントを作る。 cloud.langfuse.comでプロジェクトを作り、公開鍵と秘密鍵の両方をコピーします。
- パッケージを入れる。
pip install langfuse openai
- 環境変数を置く。 下にあるのは欧州連合のURLです。別のリージョンを選んだなら、
https://us.cloud.langfuse.comかhttps://jp.cloud.langfuse.comを使います。
LANGFUSE_PUBLIC_KEY="pk-lf-..."
LANGFUSE_SECRET_KEY="sk-lf-..."
LANGFUSE_BASE_URL="https://cloud.langfuse.com"
OPENAI_API_KEY="sk-..."
- インポートを替え、会話をまとめる。 Langfuseには、OpenAIのクライアントをそのまま置き換える部品が入っていて、呼び出しを記録します。
propagate_attributesはユーザーとセッションに印を付け、UIが一つのチャットのやり取りをまとめられるようにします。すぐに終わるスクリプトでは、flush()が、プロセスが死ぬ前にデータを送り出します。
from langfuse import observe, propagate_attributes, get_client
from langfuse.openai import openai # antes: import openai
@observe()
def responder(mensaje: str, usuario_id: str, conversacion_id: str):
with propagate_attributes(user_id=usuario_id, session_id=conversacion_id):
respuesta = openai.chat.completions.create(
name="respuesta-bot",
model="gpt-4o-mini",
messages=[
{"role": "system", "content": "Eres el asistente de una tienda online."},
{"role": "user", "content": mensaje},
],
)
return respuesta.choices[0].message.content
print(responder("¿El envío es gratis?", "cliente-123", "chat-456"))
get_client().flush()
- パネルを開く。 Tracing に、プロンプト、返信、トークン、コスト、時間が付いたトレースが出ます。
session_idがあれば、そのユーザーの会話を最後まで追えます。
データを自前のサーバーに置きたいとき
Dockerでセルフホストできます。手元ではリポジトリをクローンし、docker-compose.yml のなかで CHANGEME と印の付いた秘密情報を確認してから、コンテナを起動します。
git clone https://github.com/langfuse/langfuse.git
cd langfuse
docker compose up
ドキュメントによれば、ウェブのコンテナは2分から3分ほどで http://localhost:3000 に用意できます。最初から入っている管理者ユーザーはありません。最初に開いた人が、サインアップします。本番のマシンでは、同じガイドがCPU 4コア以上とメモリ16GB以上を勧め、Composeは高可用性ではないと注意しています。始めたばかりの小さな会社なら、無料のクラウドプランのほうが、そのサーバーより安いことがほとんどです。
使う価値が出るとき
Langfuseに価値が出るのは、ボットが本物の顧客と話し始めたときからです。それより前は、ほぼ確実に要りません。
使うなら:
- ボットが顧客の相手をしている。あるいは価格、注文、サポートを扱っている。
- 他の会社のためにボットを作り、失敗したときに、何が起きたかを説明する必要がある。
- AIのAPIに月数ドルより多く払っていて、何に使ったか知りたい。
- プロンプトをよく変える。あるいは、編集する人が一人ではない。
まだ要らないなら:
- 自分用の試作か、週末の実験にとどまる。
- ボットの基盤が閉じていて、外のツールをつなげない。そのときは、基盤自身が出すログを見ます。
ほかの選択肢。 LangSmithとBraintrustは、近いところをカバーします。Langfuseとの実務上の違いは、オープンソースであり、データを自前のサーバーへ持っていけることです。
作るのは仕事の半分
AIボットを出すのは、午後ひとつで終わります。うまくいっているか分かることが、実験と、顧客が信頼できる製品とを分けます。
Langfuseは、モデルを賢くしません。もっと役に立つことをします。何が起きているかが見えるようにして、プロンプトも、文書も、コストも、証拠を前にして直せるようにします。入口のプランは無料です。顧客からの最初の文句のあとでは、何も見えないまま飛ばす言い訳は、もうありません。
Step-by-step guide
プロジェクトを作る
cloud.langfuse.com でサインインし、プロジェクトを作り、公開鍵と秘密鍵をコピーします。データが置かれるリージョンを選びます。
パッケージを入れる
ボットの環境で pip install langfuse openai を実行します。LangfuseがOpenAIのクライアントを置き換え、すべての呼び出しを記録します。
環境変数を設定する
プロセスが起動する前に、LANGFUSE_PUBLIC_KEY、LANGFUSE_SECRET_KEY、LANGFUSE_BASE_URL、OPENAI_API_KEY を定義します。
モデル呼び出しを包む
langfuse.openai から openai をインポートし、user_id と session_id を渡して、会話ごとにまとまるようにします。
UIでトレースを開く
Tracingを開き、呼び出しを見つけて、プロンプト、返信、トークン、コスト、レイテンシを読みます。短いスクリプトでは、終了前に flush を呼びます。
Frequently asked questions
Langfuseとは何ですか?
Langfuseは、言語モデルを使うアプリケーションを追跡し、評価し、改善するための、MITライセンスのオープンソースのプラットフォームです。会話の各ステップを記録し、プロンプトを版管理し、コスト、レイテンシ、品質を表示します。
Langfuseは無料ですか?
Hobbyプランは無料で、カードも求めません。月50,000ユニット、ユーザー2人、保持30日が含まれます。セルフホストもできます。ソフトは無料で、払うのはサーバー代です。
ボットがPythonでなくても使えますか?
はい。このガイドがPython SDKを使うのは、それが最短だからです。LangfuseにはJavaScript SDKもあり、LangChain、Vercel AI SDK、CrewAI、n8n、OpenTelemetryとの連携もあります。
チャットのトランスクリプトと何が違いますか?
トランスクリプトが見せるのは、ユーザーの発言と返信です。トレースには、そのとき有効だったプロンプト、検索が返した文書、答えたモデル、消費したトークン数、かかった時間も残ります。
セルフホストは必須ですか?
いいえ。試すときも、多くの小さな会社でも、無料のクラウドプランで足ります。セルフホストが意味を持つのは、量、データの所在地、クラウドの請求のどれかがサーバーを正当化するときです。
関連記事
興味を持ちそうな関連コンテンツを探し続けましょう

Opus 5.5 vs Sonnet 5.5:2026年Claudeモデル選び
Anthropicのモデル、Opus 5.5、Sonnet 5.5、Fable 5.1、Haiku 4.5を比較。それぞれの価格と強み、タスクに応じてどれを使うべきかを解説します。

ウィッチャー3 リマスターが教えるソフトウェア再生のヒント
「ウィッチャー3 リマスター」がpath tracingと新戦闘システムを伴って無料で登場。リマスターの発想がどんなソフトウェアにも第二の人生を与える方法を解説します。

Spec-Driven Development徹底ガイド:AI時代の開発手法
Spec-Driven Development(SDD)とは何か、なぜAIで再注目されているのか、BDD、DDD、MDE、API-Firstの4手法を例とともに解説します。
提携
私が毎日使っていて、このコミュニティがより良い条件で使えるツールです。