業界・業務から探す
導入目的・課題から探す
データ・AIについて学ぶ
News
Hakkyについて
ウェビナーコラム
◆トップ【AI・機械学習】
AI

執筆者:Handbook編集部

LangSmithとは?設定方法と機能についてわかりやすく解説

はじめに

LangChainは、LLMアプリケーションとエージェントのプロトタイプを簡単に作ることができます。 しかし、LLMアプリケーションを本番環境へ提供することは、意外と難しいものです。 高品質の製品を作るためには、プロンプト、チェーン、その他のコンポーネントを繰り返し作成する必要があります。

そこで、LLMのロギング、監視、デバッグ、テストなどのための一連のツールとしてLangSmithが公開されました。 LangSmithは、LLMアプリケーションのプロトタイプを本番環境で使用するのに十分な信頼性を持つレベルに引き上げるためのプラットフォームです。

LangSmithの設定方法

  1. LangSmithのアカウントを作成する。
  2. settingsページからAPIキーを作成する。
  3. パッケージをインストールする。
pip install -U langchain_openai # LangChainを使用する場合
pip install -U langsmith # LangChainを使用しない場合
  1. 環境変数を設定する。
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_ENDPOINT=https://api.smith.langchain.com
export LANGCHAIN_API_KEY=<your-api-key>
export LANGCHAIN_PROJECT=<your-project>  # if not specified, defaults to "default"

# The below examples use the OpenAI API, so you will need
export OPENAI_API_KEY=<your-openai-api-key>
  1. 以下のサンプルコードのようにLLMを実行する。
from langchain_openai import ChatOpenAI

llm = ChatOpenAI()
llm.invoke("Hello, world!")

以上で完了です。 LandSmithのプロジェクトページにアクセスすると実行結果を追跡できます。

"Hello, world!”の実行結果が記録されていることがわかります。

LangSmithの機能

ログ

LangSmithの最も主要な機能はプロンプトのログです。実行された結果は上の画像のように一覧に表示されます。 テーブルに表示できる主な情報は次のとおりです。

  • 入力
  • 出力
  • ステータス
  • データセット
  • 消費トークン数
  • 開始時刻
  • レイテンシー

他にも表示させたいものをColumnsから選択できます。

個々のレコードをクリックすると詳細ログが開けます。 ここでは入力プロンプトやその実行結果、エラーメッセージなどを確認することができます。

詳細画面右上のPlaygroundを押すと、プロンプトやパラメータのチューニングができます。

また、画面左にあるツリーからLangChainのそれぞれの段階で実際に送られたプロンプトとその結果を確認することができます。

モニタリング

LangSmith では Monitor 機能が搭載されており、実行数、成功率、レイテンシー、トークン消費量などを確認することができます。

データセットの作成

LangSmithでは、取得したログの入出力をデータセットとして保存することができます。 Datasets&amp;Testingのページからデータセットを作成し、一覧画面や詳細画面からデータセットに追加することができます。

モデルの評価

作成したデータセットを使用して、モデルの評価を行うことができます。 下記のサンプルコードのようにデータセットを指定して実行すると、Datasets&amp;Testingのページに結果が表示されます。

import langsmith

from langchain import chat_models, smith

# Replace with the chat model you want to test
my_llm = chat_models.ChatOpenAI(temperature=0)

# Define the evaluators to apply
eval_config = smith.RunEvalConfig(
    evaluators=[
        "cot_qa"
    ],
    custom_evaluators=[],
    eval_llm=chat_models.ChatOpenAI(model="gpt-4", temperature=0)
)

client = langsmith.Client()
chain_results = client.run_on_dataset(
    dataset_name="ds-flowery-switching-60",
    llm_or_chain_factory=my_llm,
    evaluation=eval_config,
    project_name="test-virtual-savior-97",
    concurrency_level=5,
    verbose=True,
)

まとめ

この記事では、LandSmithがLLMを本番環境で運用するための便利なツールを提供するプラットフォームで、以下のような機能があることを紹介しました。

  • ロギング
  • 監視
  • デバッグ
  • テスト

これらの機能を使うことで、容易にLLMの開発・メンテナンスができます。

参考文献

info
備考

LLM を業務で活用したり、自社のサービスに組み込みたくありませんか?Hakky では、AI を用いた企業独自のシステムを構築するご支援を行っています。 ソリューションサイト:https://www.about.st-hakky.com/chatgpt-solution

「どんなことが出来るのか」「いま考えているこのようなことは本当に実現可能か」など、ご検討段階でも構いませんので、ぜひお気軽にフォームよりお問い合わせくださいませ。

Hakkyへのお問い合わせ
2025年06月13日に最終更新
読み込み中...