11
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【LLMOps】Vertex AI Gemini(ADC)を、LangfuseのPlaygroundで実行

Last updated at Posted at 2025-10-20

株式会社ブレインパッドの津久井です。

現在は、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」

スクリーンショット 2025-10-17 13.42.03.png

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」で、以下を入力(接続名等はあくまで例)

スクリーンショット 2025-10-17 13.56.57.png

追加したLLM接続で、Geminiが実行可能になります。

スクリーンショット 2025-10-17 13.40.37.png

コストも、OTEL経由で連携されています。

スクリーンショット 2025-10-17 13.41.06.png

あとがき

LLMアプリケーションは開発検証の他にモデルアップデート等避けられないイベントが
あったり、今後実験管理は欠かせないものとなっています。
(Vertex AI Geminiのモデルバージョンのライフサイクルは、概ね1年..)

Langfuseに関しては(実プロダクトのトレースは未実施で)プロンプトやモデルの
検証用途ですが、今後コアに利用していき、実ユースケースに沿った利用方法も
都度記載していければと思います。

11
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?