nikkie-ftnextの日記

イベントレポートや読書メモを発信

ついに、ようやく、LangSmithデビュー! OpenAIクライアントを使ったコードをTracing

はじめに

七尾百合子さん、お誕生日 125日目 おめでとうございます! nikkieです。

LangSmithを素振りするときが来ました。
一歩目を小さく踏み出します。

目次

LangSmith

www.langchain.com

LangSmith is a unified observability & evals platform where teams can debug, test, and monitor AI app performance — whether building with LangChain or not.

LangChain系は正直初期学習コストがあまりにも高い(LangChainのごく一部を知りたかったのに、LCELやらLangGraphやらLangSmithやら登場)ので距離をとっていたのですが、手元のLangGraphアプリの実行中の動作を理解する1ためにLangSmithを試す運びとなりました。
LangChainから切り離して始められると分かったので、LangSmithだけを試します
一度にたくさん新しいもの出てこないでよねっ!

過去に書いたスクリプトをLangSmithでトレースするぞ!

LangSmithだけのQuick Startを発見

docs.smith.langchain.com

OpenAIクライアントを使って書いたスクリプトに適用します!

LangSmithの設定

まずはアカウントを作成
積ん読していた書籍に、日本語で読める手順がありました(A.1)

defaultというTracing Projectが作成されています。

APIキーを発行しさえすれば、LangSmithにトレースが記録されます!
左のメニュー下「Settings」->「API Keys」->「Create API Key」2

環境変数の設定

.envファイルを作り、python-dotenvで読み込むことにしました。
.envの内容はQuick Startの手順3の通りです

LANGSMITH_TRACING=true
LANGSMITH_API_KEY="<your-langsmith-api-key>"
OPENAI_API_KEY="<your-openai-api-key>"

コード修正:OpenAIクライアントのラップ

Quick Startの手順5です。

+from langsmith.wrappers import wrap_openai

-client = OpenAI()
+client = wrap_openai(OpenAI())

たったこれだけです。

トレースできました!

なお、出力は全てがハルシネーションです!3

参考資料

LangChainが出している動画は分かりやすかったです。

Academyもやっていくようです(積ん読

academy.langchain.com

終わりに

LangSmithのアカウントを作りAPIキーを払い出して、OpenAIクライアントを使うスクリプトをLangSmithにもトレースしてみました。
LangSmithを使いこなせている気はしませんが、ここまでは簡単です!

OpenAI側も機能追加していて、OpenAIでもログは見られるんですよね。
https://platform.openai.com/logs?api=responses
LangSmithだけが持つよさは、まだまだ触ってみないと分からないかなという感覚です4


  1. 「動作中に何をやっているかをトラックしたい」Azure-Samples/deepresearch という DeepSeek-R1 による deep research 実装例を動かす - nikkie-ftnextの日記
  2. Quick Startの手順2にも案内があります
  3. 私はもう選ばなくなっていますが、差分を減らすためにいたしかたなくgpt-4o-miniのままとしています
  4. Quick startの手順6にある@langsmith.traceableは積み残しです