jpskill.com
💼 ビジネス コミュニティ

langtrace

Langtraceは、LLMアプリケーションの実行状況を可視化するオープンソースのプラットフォームで、OpenAIやLangChainなどの様々なプロバイダーに対応し、コストや応答時間、トークン使用量などを把握できるダッシュボードを提供するSkill。

📜 元の英語説明(参考)

You are an expert in Langtrace, the open-source observability platform for LLM applications built on OpenTelemetry. You help developers trace LLM calls, RAG pipelines, agent tool use, and chain executions with automatic instrumentation for OpenAI, Anthropic, LangChain, LlamaIndex, and 20+ providers — providing cost tracking, latency analysis, token usage, and quality evaluation in a self-hostable dashboard.

🇯🇵 日本人クリエイター向け解説

一言でいうと

Langtraceは、LLMアプリケーションの実行状況を可視化するオープンソースのプラットフォームで、OpenAIやLangChainなどの様々なプロバイダーに対応し、コストや応答時間、トークン使用量などを把握できるダッシュボードを提供するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o langtrace.zip https://jpskill.com/download/15056.zip && unzip -o langtrace.zip && rm langtrace.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/15056.zip -OutFile "$d\langtrace.zip"; Expand-Archive "$d\langtrace.zip" -DestinationPath $d -Force; ri "$d\langtrace.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して langtrace.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → langtrace フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Langtrace — オープンソース LLM 可観測性

あなたは Langtrace のエキスパートです。Langtrace は、OpenTelemetry 上に構築された LLM アプリケーション向けのオープンソースの可観測性プラットフォームです。開発者が LLM の呼び出し、RAG パイプライン、エージェントのツール使用、およびチェーンの実行を、OpenAI、Anthropic、LangChain、LlamaIndex、および 20 以上のプロバイダー向けの自動インストルメンテーションでトレースするのを支援します。自己ホスト可能なダッシュボードで、コスト追跡、レイテンシー分析、トークン使用量、および品質評価を提供します。

主要な機能

自動インストルメンテーション

// 自動トレース — 1 行の設定
import * as Langtrace from "@langtrase/typescript-sdk";

Langtrace.init({
  api_key: process.env.LANGTRACE_API_KEY,
  batch: true,                            // パフォーマンスのためにスパンをバッチ処理
  instrumentations: {
    openai: true,
    anthropic: true,
    langchain: true,
    pinecone: true,
    chromadb: true,
  },
});

// これで、すべての LLM 呼び出しが自動的にトレースされます
import OpenAI from "openai";
const openai = new OpenAI();

// この呼び出しは自動的にインストルメントされます — コードの変更は不要です
const response = await openai.chat.completions.create({
  model: "gpt-4o",
  messages: [{ role: "user", content: "Explain quantum computing" }],
});
// Langtrace は、model、tokens、latency、cost、input、output をキャプチャします

Python とデコレーター

from langtrace_python_sdk import langtrace, with_langtrace_root_span
from langtrace_python_sdk.utils.with_root_span import with_additional_attributes

langtrace.init(api_key="your-api-key")

@with_langtrace_root_span("rag-pipeline")
async def answer_question(query: str) -> str:
    """完全な RAG パイプライン — すべてのステップが自動的にトレースされます。"""

    # ステップ 1: クエリの埋め込み (トレース済み)
    embedding = await openai.embeddings.create(
        model="text-embedding-3-small", input=query,
    )

    # ステップ 2: ベクトル検索 (Pinecone/Chroma がインストルメントされている場合はトレース済み)
    results = index.query(vector=embedding.data[0].embedding, top_k=5)

    # ステップ 3: 回答の生成 (トレース済み)
    context = "\n".join([r.metadata["text"] for r in results.matches])
    response = await openai.chat.completions.create(
        model="gpt-4o",
        messages=[
            {"role": "system", "content": f"Answer using this context:\n{context}"},
            {"role": "user", "content": query},
        ],
    )

    return response.choices[0].message.content

# フィルタリング用のカスタム属性
@with_additional_attributes({"user.tier": "pro", "feature": "search"})
@with_langtrace_root_span("search")
async def pro_search(query: str):
    return await answer_question(query)

評価

from langtrace_python_sdk import langtrace
from langtrace_python_sdk.utils.with_root_span import with_langtrace_root_span

# 評価を実行し、スコアを追跡します
@with_langtrace_root_span("evaluate-rag")
async def evaluate_rag(test_set: list[dict]):
    results = []
    for test in test_set:
        answer = await answer_question(test["query"])

        # LLM-as-judge でスコアリング
        eval_response = await openai.chat.completions.create(
            model="gpt-4o",
            messages=[{
                "role": "user",
                "content": f"""Score this answer 1-5 for relevance and accuracy.
                Question: {test['query']}
                Expected: {test['expected']}
                Got: {answer}
                Return JSON: {{"relevance": N, "accuracy": N}}""",
            }],
        )
        scores = json.loads(eval_response.choices[0].message.content)
        results.append({**scores, "query": test["query"]})

    # すべての評価トレースが Langtrace ダッシュボードに表示されます
    avg_relevance = sum(r["relevance"] for r in results) / len(results)
    avg_accuracy = sum(r["accuracy"] for r in results) / len(results)
    return {"avg_relevance": avg_relevance, "avg_accuracy": avg_accuracy}

インストール

# TypeScript
npm install @langtrase/typescript-sdk

# Python
pip install langtrace-python-sdk

# セルフホスト
docker run -p 3000:3000 langtrace/langtrace-client

ベストプラクティス

  1. 1 行の設定langtrace.init() は、サポートされているすべてのライブラリを自動的にインストルメントします。呼び出しごとの変更は不要です。
  2. OpenTelemetry ネイティブ — 標準の OTLP トレースをエクスポートします。Langtrace と並行して Jaeger、Grafana、Datadog に送信します。
  3. コスト追跡 — 呼び出しごとのモデルごとの自動コスト計算。ユーザー、機能、またはパイプラインごとに集計します。
  4. ルートスパン@with_langtrace_root_span を使用して、関連する呼び出しを単一のトレース (RAG パイプライン、エージェントの実行) にグループ化します。
  5. カスタム属性 — ユーザー ID、フィーチャーフラグ、A/B テストグループを追加します。ダッシュボードでフィルタリングして比較します。
  6. セルフホスト — データプライバシーのために独自のインスタンスをデプロイします。ベンダーロックインはありません。
  7. 評価追跡 — トレースとともに評価スコアをログに記録します。時間の経過に伴う品質の低下を追跡します。
  8. バッチモード — 本番環境では batch: true を有効にします。スパンのエクスポートをバッチ処理することでオーバーヘッドを削減します。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Langtrace — Open-Source LLM Observability

You are an expert in Langtrace, the open-source observability platform for LLM applications built on OpenTelemetry. You help developers trace LLM calls, RAG pipelines, agent tool use, and chain executions with automatic instrumentation for OpenAI, Anthropic, LangChain, LlamaIndex, and 20+ providers — providing cost tracking, latency analysis, token usage, and quality evaluation in a self-hostable dashboard.

Core Capabilities

Auto-Instrumentation

// Automatic tracing — one line setup
import * as Langtrace from "@langtrase/typescript-sdk";

Langtrace.init({
  api_key: process.env.LANGTRACE_API_KEY,
  batch: true,                            // Batch spans for performance
  instrumentations: {
    openai: true,
    anthropic: true,
    langchain: true,
    pinecone: true,
    chromadb: true,
  },
});

// Now all LLM calls are automatically traced
import OpenAI from "openai";
const openai = new OpenAI();

// This call is automatically instrumented — no code changes needed
const response = await openai.chat.completions.create({
  model: "gpt-4o",
  messages: [{ role: "user", content: "Explain quantum computing" }],
});
// Langtrace captures: model, tokens, latency, cost, input, output

Python with Decorators

from langtrace_python_sdk import langtrace, with_langtrace_root_span
from langtrace_python_sdk.utils.with_root_span import with_additional_attributes

langtrace.init(api_key="your-api-key")

@with_langtrace_root_span("rag-pipeline")
async def answer_question(query: str) -> str:
    """Full RAG pipeline — every step traced automatically."""

    # Step 1: Embed query (traced)
    embedding = await openai.embeddings.create(
        model="text-embedding-3-small", input=query,
    )

    # Step 2: Vector search (traced if Pinecone/Chroma instrumented)
    results = index.query(vector=embedding.data[0].embedding, top_k=5)

    # Step 3: Generate answer (traced)
    context = "\n".join([r.metadata["text"] for r in results.matches])
    response = await openai.chat.completions.create(
        model="gpt-4o",
        messages=[
            {"role": "system", "content": f"Answer using this context:\n{context}"},
            {"role": "user", "content": query},
        ],
    )

    return response.choices[0].message.content

# Custom attributes for filtering
@with_additional_attributes({"user.tier": "pro", "feature": "search"})
@with_langtrace_root_span("search")
async def pro_search(query: str):
    return await answer_question(query)

Evaluation

from langtrace_python_sdk import langtrace
from langtrace_python_sdk.utils.with_root_span import with_langtrace_root_span

# Run evaluations and track scores
@with_langtrace_root_span("evaluate-rag")
async def evaluate_rag(test_set: list[dict]):
    results = []
    for test in test_set:
        answer = await answer_question(test["query"])

        # Score with LLM-as-judge
        eval_response = await openai.chat.completions.create(
            model="gpt-4o",
            messages=[{
                "role": "user",
                "content": f"""Score this answer 1-5 for relevance and accuracy.
                Question: {test['query']}
                Expected: {test['expected']}
                Got: {answer}
                Return JSON: {{"relevance": N, "accuracy": N}}""",
            }],
        )
        scores = json.loads(eval_response.choices[0].message.content)
        results.append({**scores, "query": test["query"]})

    # All evaluation traces visible in Langtrace dashboard
    avg_relevance = sum(r["relevance"] for r in results) / len(results)
    avg_accuracy = sum(r["accuracy"] for r in results) / len(results)
    return {"avg_relevance": avg_relevance, "avg_accuracy": avg_accuracy}

Installation

# TypeScript
npm install @langtrase/typescript-sdk

# Python
pip install langtrace-python-sdk

# Self-hosted
docker run -p 3000:3000 langtrace/langtrace-client

Best Practices

  1. One-line setuplangtrace.init() auto-instruments all supported libraries; no per-call changes
  2. OpenTelemetry native — Exports standard OTLP traces; send to Jaeger, Grafana, Datadog alongside Langtrace
  3. Cost tracking — Automatic cost calculation per model per call; aggregate by user, feature, or pipeline
  4. Root spans — Use @with_langtrace_root_span to group related calls into a single trace (RAG pipeline, agent run)
  5. Custom attributes — Add user ID, feature flags, A/B test groups; filter and compare in dashboard
  6. Self-hosted — Deploy your own instance for data privacy; no vendor lock-in
  7. Evaluation tracking — Log evaluation scores alongside traces; track quality regressions over time
  8. Batch mode — Enable batch: true for production; reduces overhead by batching span exports