0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

LangtraceというLLMOpsサービスを最近知ったのですが、日本語の記事がなかったので、ちょっと触ってみて記事化しました。

Langtraceとは

LLMの運用監視サービス。2行書くだけでOK。運用監視に必要な情報を収集してくれます。

from langtrace_python_sdk import langtrace

langtrace.init(api_key=<your_api_key>)

Scale3 Labsという会社のサービスで、langchainとは関係ないみたい。

主要なLLMをサポートしているようです。
Untitled.png

ChromaDB、Pinecone、weavite等の検索Vectorサービスのトレースもサポートしているようです。

アイコン画像は公式HPより引用

Scale3 Labsとは

Scale3 Labsは、Web3インフラストラクチャ向けの先進的なDevOpsプラットフォームを提供する企業です。

2022年10月に5.3百万ドル(約7億円)のシード資金調達に成功しています。

同社のHPからは、Google等の有力企業からサポートと評価を得ていることが伺えます。

競合比較

LLMOpsサービスとしてLangsmithやlangfuse等がありますが、何が違うのでしょうか。

特徴/機能 LangSmith Langtrace
提供元 langchain Scale3 Labs
提供開始 2023/7 (非公開ベータ), 2024/2 (GA) 2024/2
提供形態 フルマネージド(Enterpriseプランでセルフホスト可能) オープンソース、セルフホスト可能
主な機能 開発、コラボレーション、テスト、デプロイ、モニタリング トレースとメトリクスの収集と分析
サポートするLLM LangChain、OpenAI、Anthropic、Cohereなど OpenAI、Anthropic、Perplexity、Groq、Cohere、LangChain、LlamaIndexなど
トレース管理 トレースの共有、バージョン管理、コメント機能 OpenTelemetry標準に基づくトレースの収集と分析
データセット管理 データセットの作成、評価、ファインチューニング用データセットの構築 トレースデータを用いたデータセットの作成と評価
コラボレーション機能 チームメンバーとのコラボレーション、アノテーションキュー フィードバックループの確立、ゴールデンデータセットの作成
デプロイ機能 LangServeを使用したワンクリックデプロイ -
モニタリング機能 コスト、レイテンシ、品質のモニタリング トレースとメトリクスの可視化と分析
セキュリティ トレースデータはGCP us-central-1に保存、データは暗号化 セルフホスト可能、OpenTelemetry標準に基づくトレース
価格 Plus: $39/人月、Enterprise: 要相談 無料(現在はフィードバック収集のため)
ドキュメント 公式ドキュメントが豊富 オープンソースコミュニティによるドキュメント
SDKサポート Python、TypeScript Python、TypeScript
統合 LangChain、OpenAI、Anthropic、Cohereなど LangChain、OpenAI、Anthropic、Cohere、LlamaIndex、Pinecone、ChromaDBなど

LangSmithは、エンタープライズ向けのフルマネージドプラットフォームとして、開発からデプロイ、モニタリングまでを一貫してサポートする一方、Langtraceはオープンソースでセルフホスト可能なツールとして、トレースとメトリクスの収集と分析に特化しています。

Langtraceはオープンソース、セルフホスト可能という点でlangfuseと共通していますが、setupの容易性とベクター検索DBを含めたトレース情報の提供という点で違いがあるようです。

Langtraceやってみた

個人開発でトレンドの技術情報を毎朝配信するpodcastを自動配信で運営していて、langgraphでworkflow構築して中でLLM使っていて、Langtraceがlanggraphもサポートしているので、試しに入れて動かしてみました。

動かしてみるとエラーが発生しました。pydanticを使っているとv2を使ってないとエラーになるみたいです。

File "/home/test/hello-zundamon-aiagent-podcast/.venv/lib/python3.11/site-packages/langgraph/graph/state.py", line 161, in add_node
return super().add_node(node, action)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/test/hello-zundamon-aiagent-podcast/.venv/lib/python3.11/site-packages/langtrace_python_sdk/instrumentation/langgraph/patch.py", line 59, in traced_method
for field, value in attributes.model_dump(by_alias=True).items():
                    ^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'FrameworkSpanAttributes' object has no attribute 'model_dump'

pydantic v2にupdateしたら解消しました。

trace

特に何もしてないのですが、langgraphのworkflowを動かしてみるとLLMの入力と出力が記録されてました。いいですね。

www.langtrace.ai_project_clxtkmj3c0001knsde4s6kdkl_traces_(2).png

gpt-4o、cohere、perplexityは自動で記録されているのを確認しました。geminiのLLM入出力が記録されていなかったですが、将来対応予定とのことです。楽しみに待ちましょう。

また、langgraphのnode毎のstateが自動でログに記録されているので便利です。

www.langtrace.ai_project_clxtkmj3c0001knsde4s6kdkl_traces_(1).png

metrics

入力と出力のtoken数とコスト、リクエスト回数、リクエストLatencyが時系列で表示されます。(昨日いれたばっかりなので時系列グラフが生きてくるのはこれからですね)

www.langtrace.ai_project_clxtkmj3c0001knsde4s6kdkl_metrics.png

使ってみた感想

簡単に初めてみたいというにはとても良いと思いました。何か悪さしてはずしたい時も、コードを2行削除するだけですみますし。

本番配信はgithub actionsのworkflowをcron実行で回しているのですが、エラーがおきた時にgithub actionsのログにらめっこしたり、手元で動かしていると中間ファイルを出力していて中間ファイルで入出力がわかるのですが、github actionsだと途中の状態を中間ファイルがわからず、見ようと思うとartifactで固めないと見れなかったりで、このあたりとても面倒くさいので、これあるととても助かると思いました。

今回は検索Vectorサービスのトレースはお試し出来なかったですが、何か無理やり理由見つけてサービスアップデートして試してみたいです。(これが本当の監視駆動開発!?)

おわりに

ビギナーエンジニア向けにトレンドの技術情報を毎朝配信するpodcastやってますので、まだ品質が安定していないところがありますが、よろしければpodcast登録してみてください。

ちなみに、今日はちょうど試験配信開局から1か月、25回目の配信でした。

参考リンク

Langtraceの公式ブログ

オープンソース開発

開発勢いがあり毎日のようにcommit&release tagが作られている。

0
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?