0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【LangSmith × Cloud Run】トレースが動かない!? → 実は「動いてた」話(3時間溶けました)

Posted at

😇 TL;DR(最初に結論)

LangSmith でのトレースは、LANGSMITH_TRACING=true が環境変数に設定されているだけで有効になります。
tracing_v2_enabled() 等をコードに書かなくても、自動で記録されるようになってました!

🧪 環境構成

  • FastAPI(Python 3.11)
  • LangGraph / LangMem
  • LangChain + LangSmith
  • Cloud Run(Dockerデプロイ)
  • PostgreSQL(AsyncPostgresStore)
  • CloudRun 環境変数にて LANGSMITH_* を設定
LANGSMITH_TRACING=true
LANGSMITH_ENDPOINT=(略)
LANGSMITH_API_KEY=(略)
LANGSMITH_PROJECT=(略)

🧩 やりたかったこと

LangSmith を使って、
Cloud Run 上で動いているエージェントの挙動(プロンプト最適化含む)をトレースしたい!

💥 ハマったポイント

  1. tracing_v2_enabled() が必要だと思って、run_agent() を書き換え
  2. from langchain_core.tracers import tracing_v2_enabled が ImportError に(←バージョン最新なのに)
  3. langchain-core のバージョン固定して入れ直す → ビルド失敗
  4. Dockerfile を微調整 → 何度も Cloud Run でデプロイ失敗
  5. PORT 8080 のエラーに騙されてヘルスチェックなどを疑う

🔍 原因はまさかの「勝手に有効になってた」

実は、LangSmith のトレース機能は 環境変数があれば自動で発火します。

LANGSMITH_TRACING=true
LANGSMITH_ENDPOINT=(略)
LANGSMITH_API_KEY=(略)
LANGSMITH_PROJECT=(略)

↑ これがあれば、LangChain SDK 側で自動的にフックされ、LangSmith に送信されます。
コードに tracing_v2_enabled() を書かなくても、勝手に記録されてる。

🧠 気づいたきっかけ

LangSmith に何も連携してない状態に切り戻したのに、LangSmith の GUI にログが上がってきていた。

「は???なんで???」

→ 環境変数がそのままだったことに気づき、真実が判明。

✅ 教訓まとめ

ハマりポイント 教訓
tracing_v2_enabled() を書いたのに ImportError そもそも書かなくていい
Cloud Run で PORT エラーが出る 起動に失敗してる原因はコード側(ImportErrorなど)かも
LangChain のバージョンを調整しまくる LangSmith のトレースには関係ない
トレースされない!と思い込んでコードを大幅変更 環境変数をまず疑うべし

🧘‍♂️ 結果と感想

3時間溶けたけど、
LangSmith が かなり優秀なトレース機能を持ってることが体験でよく分かった。
こんな感じで推論の流れを全て見れます。

image.png

パラメータの最適化にもかなり使えるので、LangChain + Cloud Run な構成では
開発時は LANGSMITH_TRACING=true にしておくのをオススメします。
※本番環境では、プライバシーの問題とかもあるので慎重に...。

💤 最後に

$ echo "このQiita記事は、僕のHP -1 からの復活ログである"
$ echo "少しでも誰かの時間とHPを救えたら幸いです🙏"
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?