公開日 2026.05.21 / テック比較ジャーナル編集部
LLMアプリを開発していると、「なぜこの回答になったのか分からない」「どこで処理が詰まったのか追えない」という壁にぶつかります。これを解決するのが観測性(オブザーバビリティ)ツールで、その代表格がLangSmithです。LangChainを開発する同社が提供し、LLMアプリのトレース・評価の事実上の標準として広く使われています。本記事では、LangSmithの機能、セットアップ手順、料金プラン、そして見落とされがちな無料枠の限界、Langfuseとの違いまでを初心者向けに解説します。
LangSmithは、LangChain社が提供するLLMアプリの観測性・評価プラットフォームです。AIへの入力(プロンプト)、出力(回答)、その間の処理過程(どのツールを呼んだか、何を検索したか)を「トレース」として記録し、ブラウザ上で可視化します。これにより、開発者は「どこで・なぜ・どんな結果が出たか」を後から追跡できます。主な機能は次の通りです。
導入は驚くほど簡単です。アカウント登録後、APIキーを発行し、環境変数を設定するだけでトレースが送られ始めます。
# 1. ライブラリを導入
pip install langsmith
# 2. 環境変数を設定
export LANGSMITH_TRACING=true
export LANGSMITH_API_KEY="ls-..." # 管理画面で発行
# 3. これだけで、LangChainを使ったコードは
# 自動でトレースが記録される
# LangChainを使わない場合は @traceable デコレータを付与
LangChainを使っているなら、上記の環境変数を設定するだけで追加コードはほぼ不要です。LangChainを使わないアプリでも、関数に @traceable を付ければトレースを送れます。
LangSmithでつまずきやすいのが「無料枠の限界」です。個人向けのDeveloperプランは無料で始められますが、月あたりのトレース数に上限があります。本番アプリは1リクエストで複数のトレースを生むため、ユーザーが増えると無料枠を一気に消費します。
| プラン | 対象 | 特徴 |
|---|---|---|
| Developer(無料) | 個人・お試し | 月一定数まで無料、超過は従量課金 |
| Plus | 小規模チーム | ユーザー単位の月額+トレース従量 |
| Enterprise | 大企業 | セルフホスト・SSO・専用サポート |
注意点は、トレースは「保存期間」も課金に関わること。長く保持するほどコストが上がります。まず無料枠で機能を試し、本番のトレース量を見積もってからプランを選ぶのが失敗しないコツです。
LangSmithの対抗馬としてよく挙がるのが、オープンソースのLangfuseです。
| 項目 | LangSmith | Langfuse |
|---|---|---|
| 提供形態 | 商用クラウド(クローズド) | OSS+クラウド |
| セルフホスト | △ Enterpriseのみ | ◎ 無料・無制限 |
| 導入の手軽さ | ◎ 即利用可 | ○ Docker構築が必要 |
| LangChain親和性 | ◎ 最高 | ○ 対応はしている |
| 向く人 | すぐ使いたい・LangChain利用者 | データを自社管理したい人 |
「手軽さとLangChain統合ならLangSmith」「データ主権とコスト管理ならLangfuse」が大まかな棲み分けです。Langfuseのセルフホスト手順はこちらの記事で詳しく解説しています。
LangSmithは、LLMアプリ開発の「ブラックボックス問題」を解決する観測性ツールの定番です。最大の魅力は、LangChainユーザーなら環境変数の設定だけですぐ使える手軽さ。トレース・評価・監視を一元化でき、開発から本番運用まで一貫して品質を管理できます。一方で、無料枠にはトレース数の上限があり、本番では有料プランが前提になる点は事前に押さえておきましょう。データを自社で管理したい場合はLangfuseという選択肢もあります。まずは無料枠で触ってみて、トレース可視化の便利さを体感するのがおすすめです。
LangChain社が提供するLLMアプリの観測性・評価プラットフォームです。AIへの入力・出力・処理過程をトレースし、デバッグや品質評価、データセット管理を一元的に行えます。LLMアプリ開発の事実上の標準ツールの一つです。
個人向けの無料プラン(Developer)があり、月あたり一定数のトレースまで無料です。それを超えると従量課金、またはチーム向けの有料プランが必要です。本格運用やチーム利用では有料プランが前提になります。
必須ではありません。LangChainを使っていれば数行の設定で連携できますが、使わないアプリでもSDKやトレース用のラッパーで利用できます。ただしLangChainとの親和性が最も高いのは事実です。