株式会社ブレインパッドの津久井です。
現在は、AI SaaSのエージェントリンリーの開発リードを担当しています。
弊社プロダクト事業のエンジニアは 連続バズ師の @tomo-2525や @y-tsukasa、
Oracleアウトプット狂(いい意味で)の @take-yodaなど強力なエンジニアが日々
アウトプットをしていますが、
私はデータエンジニアリングに加えLangfuseを使ったLLMOpsを利用する機会が
多くなってきたので、ユースケースごとの課題と対応方法を今後記載していこうと思います。
Langfuseとは
各所で紹介されているので当記事では割愛しますが、
LLMのプロンプトの管理/評価/観測/Playgroundが全部入りのプラットフォームです。
各機能は連携しており、Playgroundで試したプロンプトのコストを可視化したり、
評価をすることも可能です。
※ Langfuse含め、各OSSの詳しい解説は、割愛します
課題と対応策
現在LangfuseのPlayground(と評価)では、Vertex AI Geminiは IAM認証情報の
JSONのみに対応しており、ADC(Application Default Credentials)には非対応です。
この課題は、LiteLLM proxyを経由することで対応が可能です。
(Traceされ、コストも算出してくれる)
対応手順
今回はmacでの、docker-composeの手順になります。
1.LangfuseのUIから、API Keyを払い出す
「Settings」→ 「API Keys」
2.LiteLLM proxyを、Langfuse公式の docker-compose.ymlに追加
LiteLLMは、ADCに対応しているので、ホスト(mac)のADCをマウントするだけで利用できます。
litellm-proxy:
image: ghcr.io/berriai/litellm:main-stable
restart: always
ports:
- "4000:4000"
volumes:
# Mac の ADC ファイルをそのままマウント(ホスト → コンテナ)
- ${HOME}/.config/gcloud/application_default_credentials.json:/gcloud/adc.json:ro
# LiteLLM 設定ファイル
- ./litellm_config.yaml:/app/config.yaml:ro
environment:
# ADC をこのパスで参照
GOOGLE_APPLICATION_CREDENTIALS: "/gcloud/adc.json"
# Vertex / Gemini 用のプロジェクト & リージョン
VERTEXAI_PROJECT: "*****" # GCP プロジェクトID
VERTEXAI_LOCATION: "global"
LITELLM_MASTER_KEY: "*******" # LiteLLMの管理用キーを設定可能
LANGFUSE_PUBLIC_KEY: "*******" # LangfuseのUIで払い出したAPI Key
LANGFUSE_SECRET_KEY: "*******"# LangfuseのUIで払い出したSecret Key
LANGFUSE_OTEL_HOST: "http://langfuse-web:3000" # Langfuseのコンテナのホスト指定
command: ["--config", "/app/config.yaml", "--port", "4000"]
3.LiteLLM proxyの設定(litellm_config.yaml)を、ローカルに作成
LiteLLMはLangfuseにも対応しており、2.の環境変数と下記のconfigを設定するだけで連携が可能です。
litellm_settings:
callbacks: ["langfuse_otel"]
model_list:
- model_name: gemini-2.5-pro
litellm_params:
model: vertex_ai/gemini-2.5-pro
vertex_project: (GCP プロジェクトID)
vertex_location: global
- model_name: gemini-2.5-flash
litellm_params:
model: vertex_ai/gemini-2.5-flash
vertex_project: (GCP プロジェクトID)
vertex_location: global
4.compose起動後、LLM接続を追加
「Playground」→「Add LLM Connection」で、以下を入力(接続名等はあくまで例)
追加したLLM接続で、Geminiが実行可能になります。
コストも、OTEL経由で連携されています。
あとがき
LLMアプリケーションは開発検証の他にモデルアップデート等避けられないイベントが
あったり、今後実験管理は欠かせないものとなっています。
(Vertex AI Geminiのモデルバージョンのライフサイクルは、概ね1年..)
Langfuseに関しては(実プロダクトのトレースは未実施で)プロンプトやモデルの
検証用途ですが、今後コアに利用していき、実ユースケースに沿った利用方法も
都度記載していければと思います。



