top of page



LLMアプリの評価データをバージョン管理する - Langfuseのデータセットバージョニングで実験の再現性を確保する
先週と同じ条件で実験したいのに、データセットを更新したから再現できない」「精度が下がったけど、データのせいかモデルのせいか分からない」——LLMアプリの評価データ管理でこんな課題を感じたことはないでしょうか。
Langfuse v3.151.0で強化されたデータセットバージョニング機能を使えば、評価データの変更とモデルの変更を分離して管理し、実験の再現性を確保できます。UIからはバージョンを選択するだけ、SDKからは特定時点のデータセットを指定して取得可能。チーム全体で安心してデータセットを改善し続けられます。
2 日前読了時間: 6分


Langfuse の Observation レベル評価:「どのステップが悪いのか」をスコアで特定できるようになった
こんにちは。ガオ株式会社の黒澤です。 Langfuse v3.153.0 で [PR #11861]( https://github.com/langfuse/langfuse/pull/11861 ) がマージされ、LLM-as-a-Judge を Observation 単位で実行できるようになりました。本記事ではその背景と使い方をまとめます。 課題:Trace 全体への評価では「どこが悪いか」がわからない LLM アプリの評価で、こんな状況に陥ったことはありませんか。 RAG アプリの LLM as a Judge スコアが下がった。でも、ドキュメント検索が悪いのか、回答生成が悪いのか、判断できない。 これは、従来の Langfuse の評価機能が Trace(エンドツーエンドのリクエスト全体) を評価単位としていたためです。 Before:Evaluator は Trace 全体にしか設定できなかった Langfuse で LLM as a Judge Evaluator を作成すると、評価対象は Trace 全体の最終出力のみでした。
3 日前読了時間: 4分


Google ADKで作ったエージェントに Langfuseのトレースにプロンプトを紐付ける方法
Google ADK(Agent Development Kit)のトレースに Langfuse のプロンプト情報を紐付ける方法を解説します。これにより、プロンプトごとのコスト・レイテンシ分析や A/B テストが可能になります。 なぜ紐付けが必要なのか 紐付けができないと何が困るか ・プロンプトごとのコスト・レイテンシを分析できない ・A/B テストでプロンプトバージョンを比較できない ・どのプロンプトが本番で使われているか追跡できない GoogleADKInstrumentor だけでは不十分 GoogleADKInstrumentor を使えば、Google ADK のトレースを Langfuse に送信できます。 from openinference.instrumentation.google_adk import GoogleADKInstrumentorGoogleADKInstrumentor().instrument() しかし、これだけではプロンプト紐付けがされません。 Langfuse ダッシュボード └──
2月4日読了時間: 4分


Langfuseのプロンプト変更制限 解説(Protected Prompt Labels)
本ブログでは、Langfuseを複数人で運用する環境下において、「プロンプトを誰でも変更されるのが不安」「うっかり本番用のラベルを動かしてしまった」というヒヤリハットや、「誰でも本番環境を変更できてしまう」というガバナンス上の課題を感じていたチームにとって、必須の機能をご説明します!
1月25日読了時間: 3分


LangfuseのExperiments Compare ViewのBaseline機能を解説
プロンプトを修正した後、「なんとなく良くなった」という感覚だけでリリースしていませんか?Langfuseの最新機能「Experiments Baseline」を使えば、変更前後の挙動を定量的に比較し、予期せぬ品質低下(デグレ)を即座に可視化できます。本記事では、Python SDK V3を用いた具体的な実装手順と、リグレッションテストの自動化フローを徹底解説します。
1月9日読了時間: 12分


Langfuse に機能を追加してマージされるまで:日本語コントリビュートガイド
LLM オブザーバビリティプラットフォーム「Langfuse」に機能を追加して、PR がマージされるまでの過程を紹介します。環境構築でハマったポイントや解決方法もまとめているので、日本語でのコントリビュートガイドとしてもお使いください。 この記事で得られること Langfuse 開発環境のセットアップ手順 実際に遭遇したエラーと解決法 セルフホスト/クラウドモードの違いと切り替え方 PR 作成時のベストプラクティス コントリビュートの背景 セルフホスト環境で Langfuse を使っていて、Vertex AI の認証に Application Default Credentials(ADC) を使いたかったのですが、その機能がありませんでした。AWS Bedrock には既に ADC 対応があったので、Vertex AI にも同様の機能を実装することにしました。 成果 : PR #11039 がv3.140.0でマージされました 🎉 (私の PR #10915 が取り込まれたもの) まずは公式ドキュメントを読もう Langfuse には充
2025年12月18日読了時間: 6分


Deep Dive Comparison: Langfuse MCP Server vs. Dify Langfuse Plugin in Dify
This article presents a focused comparison between the newly released Langfuse MCP Server and the existing Dify Langfuse Plugin, specifically for prompt management within Dify workflows. The core purpose is to help Dify users choose the optimal tool. The MCP Server is positioned as the official gateway to Langfuse's full feature set, including specialized tools for Chat prompt creation (createChatPrompt) and label management (updatePromptLabels).
2025年12月10日読了時間: 4分


DifyでLangfuse MCPサーバーとLangfuseプラグインを徹底比較してみた
Langfuse MCPサーバーは、プロンプト管理をDifyから統一されたHTTP API経由で操作するための公式エンドポイントとしてリリースされました。これにより、Chatプロンプトの作成やラベルの厳密な管理(updatePromptLabels)など、Langfuseのフル機能にアクセスできる点が特長です。しかし、Difyの仕様上、同じサーバーURLで複数のLangfuseプロジェクトを同時に扱えず、またプロンプト取得時の変数置換機能も内蔵されていません。
一方、弊社が開発したDify Langfuseプラグインは、Difyユーザー特有のニーズに対応しています。特に、Get Promptツールに変数置換機能が組み込まれているため、プロンプトテンプレートの動的な利用がDifyのコード実行ブロックなしで実現でき、ワークフローを簡略化できます。また、認証設定をブロックごとに行えるため、複数のLangfuse組織・プロジェクトを同時に運用する柔軟性があります。
2025年12月8日読了時間: 5分


Google Cloud IAP保護下Langfuseトークン動的更新の実装ガイド
Google Cloud IAP保護下のLangfuseで課題となる、トークンの有効期限切れ(1時間)への対策を解説。Python SDKを利用し、httpxとOpenTelemetry ExporterでIAPトークンを動的に更新・維持する実装方法を紹介します。
2025年12月5日読了時間: 12分


Langfuseのマルチモーダル対応:画像・音声ファイルのトレース添付機能がGAに
はじめに LLMアプリケーション開発において、テキストだけでなく画像や音声などのマルチモーダルなデータを扱うケースが増えています。Langfuseは2024年8月に初めてマルチモーダルトレースのサポートを発表し、同年11月には画像、音声、PDFなどの添付ファイルにも対応する完全なマルチモーダルサポートを実現しました。 当該機能は長らくpreviewとされていましたが、先日GAとなったようです(※中の人がSlackでそう言ってました)。 そこで本記事では、Langfuseのマルチモーダル機能の概要、具体的な使い方、そして利用時の注意点について解説します。 Langfuseマルチモーダル機能の概要 たとえば画像ファイルを含んだトレースを送信した場合、LangfuseのWebUI上では以下のように表示されます。 このように、LLMを呼び出す際に画像データが含まれていた場合、テキストデータだけでなく画像データも同時に確認でき、改善活動の効率が大いに向上します。 (※余談ですが、gpt-4oは寿司ネタにそこまで詳しくないのかもしれません。上記画像にタコにみ
2025年12月2日読了時間: 6分


音声AIエージェントLiveKit × Langfuse連携 ~トレース分離問題の解決~
LiveKit Agentsは、WebRTCベースの音声AIアプリケーション開発フレームワークです。STT+LLM+TTSパイプラインでも約2.33秒という高速な応答を実現でき、プリエンプティブ生成やストリーミングTTSなどの最適化技術により自然な会話が可能です。
しかし、Langfuseを使った観測可能性の実装時に、各アクティビティ(agent_session、user_turn、agent_turnなど)が独立したトレースとして記録される問題が発生しました。これは非同期処理でOpenTelemetryのコンテキストが適切に伝播されないことが原因です。
解決策として、プログラム起動時にカスタムトレースIDを生成し、NonRecordingSpanを使ってグローバルコンテキストとして明示的に設定しました。これにより、すべてのスパンが同一トレースIDを継承し、階層化されたトレース構造を実現できました。非同期処理を多用するアプリケーションでは、コンテキストの明示的な管理が重要です。
2025年12月1日読了時間: 11分


A2A × ADKの"観測粒度"を設計する - Langfuse & Cloud Trace でトレース構造を可視化 -
はじめに 2025年4月9日、GoogleがAgent2Agent(A2A)プロトコルを発表 してから半年以上が経過し、多くの開発者がマルチエージェントシステムの構築に取り組んでいます。 A2Aは複雑なコンポーネント構成とエージェント間通信を持つため、 処理フローをトレースとして可視化することがLLM Opsにおいて重要 です。 本記事では、LangfuseとCloud Traceを使用してA2A × ADKエージェントの挙動を観測し、実用的な分析のための観測粒度の最適化方法を解説します。 実装環境 使用したライブラリ 本記事で使用したライブラリとそのバージョンは以下の通りです。 requirements.txt google-adk[a2a] google-genai langfuse python-dotenv opentelemetry-instrumentation-google-genai opentelemetry-exporter-gcp-logging opentelemetry-exporter-gcp-monitoring..
2025年10月22日読了時間: 13分


もうRAG評価で迷わない!Ragas最新メトリクス解説と実践的改善ガイド
RAGを作ったものの、「性能をどう客観的に評価すればいいか分からない」「ハルシネーションが起きる」といった課題に直面していませんか?この記事では、RAG評価の定番ライブラリRagasの主要メトリクスを徹底解説。検索と生成の品質を定量的に測定し、具体的な改善アクションに繋げる実践的ノウハウを掴めます。データに基づいたRAG改善の第一歩を踏み出しましょう。
2025年10月2日読了時間: 10分


Strands Agents と ADK でリモートMCPサーバーを使ったAgentを作り、その処理をLangfuseで可視化する
はじめに 本記事では、Strands Agents とADK の二つのフレームワークを使用したシンプルなエージェント (両方ともLangfuse のMCPサーバーを使う) が、Langfuseを使ってどのように可視化されるのかをクイックに紹介する記事です。最近のアップデート...
2025年9月7日読了時間: 5分


TerraformでLiteLLM ProxyをGoogle Cloud上に構築する
はじめに 近年、LLMアプリケーションの開発において、複数のLLMプロバイダーを使い分ける必要性が高まっています。 OpenAIのGPT、AnthropicのClaude、GoogleのGeminiなど、それぞれ異なる特徴を持っており、それぞれの特徴に合わせてLLMを使い分...
2025年9月3日読了時間: 14分


Dify Langfuseプラグインがv0.0.2にアップデート!プロンプトの変数置換に対応
LLMアプリケーション開発プラットフォーム「Dify」と、LLMオブザーバビリティツール「Langfuse」を連携させるためのカスタムプラグイン「Dify Langfuse Plugin」が、v0.0.2にアップデートされました。 今回のアップデートの目玉は、 Langfuseからプロンプトを取得する「Get Prompt」ツールに、プロンプト内の変数を動的に置換する機能が追加された 点です。これにより、Difyのワークフロー上で、より柔軟かつ再利用性の高いプロンプト管理が実現可能になります。 本記事では、この新しいアップデート内容を中心に、Dify Langfuseプラグインの魅力と使い方を詳しくご紹介します。 リリース情報はこちらからご確認いただけます。 GitHub Release v0.0.2 Dify Langfuseプラグインとは? Dify Langfuseプラグインは、Difyのワークフロー内からLangfuseで管理しているプロンプトを直接呼び出したり、検索・更新したりするためのカスタムツールです。 このプラグインを使うことで、
2025年9月2日読了時間: 3分


Langfuseの新しい連携元「mcp-use」
mcp-useを使ったLLM AgentからLangfuseへのtrace連携方法解説
2025年8月21日読了時間: 3分


Langfuseで解決する 自動化ツール n8n のプロンプト課題
本記事は こちらの記事 の続編 (アップデート版) となります。 (改めて) n8nとは何か、プロンプト管理の課題 n8nは「nodemation」の略称で、ドラッグ&ドロップ操作や各ノードの設定によってワークフローを作成できる自動化ツールです。300以上の組み込みノードを...
2025年8月15日読了時間: 2分


自動化ツール n8n と Langfuse の連携
n8nとは何か n8nは「nodemation」の略称で、ドラッグ&ドロップ操作や各ノードの設定によってワークフローを作成できる自動化ツールです。300以上の組み込みノードを提供しており、Slack、Gmail、Notion、カレンダー、Webhookなど、様々なサービスと...
2025年6月27日読了時間: 4分


Langfuseにおける個人情報(PII)のマスキング
LangfuseにおけるPIIマスキングの必要性 チャットボットのようなアプリケーションでは、ユーザーが意図せず個人情報(PII)を入力してしまう可能性があります。 個人情報保護 の観点から、これらの情報がLangfuseのトレースにそのまま出力されるのは望ましくありません。 そこで、トレース上で 個人情報 をマスキングした状態で確認できるよう、どのような手段が考えられるか検証しました。 個人情報(PII)の定義と具体例 具体的に 個人情報(PII) に該当する項目は、一般的に以下のものが挙げられます。 氏名 住所 電話番号 メールアドレス 顔写真 身分証番号(運転免許証、パスポートなど) 生年月日 社会保障番号 クレジットカード情報 銀行口座情報 今回はテキスト入力ベースのアプリケーションを想定しているため、顔写真のような画像データは検証対象外とします。 LangfuseにおけるPIIマスキング手法の検討 Langfuseの公式サイトで紹介されている Masking of Sensitive LLM Data を参考に、マスキング手法を検討し
2025年6月24日読了時間: 9分
bottom of page