langsmith-trace

tarafından langchain-ai

LangSmith izleme ile çalışırken VEYA izlemeleri sorgularken BU BECERİYİ ÇAĞIRIN. Uygulamalara izleme eklemeyi ve izleme verilerini sorgulamayı/dışa aktarmayı kapsar. Şunları kullanır…

npx skills add https://github.com/langchain-ai/skills-benchmarks --skill langsmith-trace
Two main topics: **adding tracing** to your application, and **querying traces** for debugging and analysis. Python and Javascript implementations are both supported. Environment Variables
LANGSMITH_API_KEY=lsv2_pt_your_api_key_here          # REQUIRED
LANGSMITH_PROJECT=your-project-name                   # Optional: default project
LANGSMITH_WORKSPACE_ID=your-workspace-id              # Optional: for org-scoped keys

Authentication is REQUIRED: either set the LANGSMITH_API_KEY environment variable, or pass the --api-key flag to CLI commands (preferred):

langsmith trace list --project my-project --api-key $LANGSMITH_API_KEY

IMPORTANT: Always check the environment variables or .env file for LANGSMITH_PROJECT before querying or interacting with LangSmith. This tells you which project contains the relevant traces and data. If the LangSmith project is not available, use your best judgement to identify the right one.

CLI Tool

curl -sSL https://raw.githubusercontent.com/langchain-ai/langsmith-cli/main/scripts/install.sh | sh

<trace_langchain_oss> For LangChain/LangGraph apps, tracing is automatic. Just set environment variables:

export LANGSMITH_TRACING=true
export LANGSMITH_API_KEY=<your-api-key>
export OPENAI_API_KEY=<your-openai-api-key>  # or your LLM provider's key

Optional variables:

  • LANGSMITH_PROJECT - specify project name (defaults to "default")
  • LANGCHAIN_CALLBACKS_BACKGROUND=false - use for serverless to ensure traces complete before function exit (Python) </trace_langchain_oss>

<trace_other_frameworks> For anything other than LangChain/LangGraph, read the matching reference file in references/ before writing tracing code. Each reference covers install, env vars, setup snippet, and gotchas specific to that framework. The setup is rarely identical across frameworks — picking the wrong pattern (e.g. using @traceable when the framework has native OTel) creates duplicate/missing spans.

Decision order:

  1. Framework has a dedicated reference below → use it
  2. Framework has native OpenTelemetry but no dedicated reference → references/otel.md
  3. No framework, or unsupported framework → references/traceable.md
  4. Cannot run a LangSmith SDK at all → references/api.md (last resort)

Routing table:

If you're tracing…Read
OpenAI / Azure OpenAI / Anthropic / any plain LLM clientreferences/traceable.md
AutoGenreferences/autogen.md
CrewAIreferences/crewai.md
Google ADKreferences/google-adk.md
Google Gemini (google-genai SDK directly)references/google-gemini.md
Instructor (structured outputs)references/instructor.md
LiveKit Agents (voice AI)references/livekit.md
Mastra (TypeScript)references/mastra.md
Microsoft Agent Frameworkreferences/microsoft-agent-framework.md
Mistralreferences/mistral.md
n8n (self-hosted)references/n8n.md
OpenAI Agents SDKreferences/openai-agents-sdk.md
OpenCodereferences/opencode.md
OpenAI Codex CLIreferences/codex.md
Pipecat (voice AI)references/pipecat.md
PydanticAIreferences/pydantic-ai.md
Semantic Kernelreferences/semantic-kernel.md
Strands Agentsreferences/strands-agents.md
Temporal workflows (Go/Python/TS)references/temporal.md
Vercel AI SDKreferences/vercel-ai-sdk.md
Any other framework with native OTelreferences/otel.md
Multi-backend OTel fan-outreferences/otel.md (Collector section)
Raw REST (no SDK available)references/api.md

If the framework you need isn't listed here, check references/ — new integrations are added there, not inline. </trace_other_frameworks>

<traces_vs_runs> Use the langsmith CLI to query trace data.

Understanding the difference is critical:

  • Trace = A complete execution tree (root run + all child runs). A trace represents one full agent invocation with all its LLM calls, tool calls, and nested operations.
  • Run = A single node in the tree (one LLM call, one tool call, etc.)

Generally, query traces first — they provide complete context and preserve hierarchy needed for trajectory analysis and dataset generation. </traces_vs_runs>

<command_structure> Two command groups with consistent behavior:

langsmith
├── trace (operations on trace trees - USE THIS FIRST)
│   ├── list    - List traces (filters apply to root run)
│   ├── get     - Get single trace with full hierarchy
│   └── export  - Export traces to JSONL files (one file per trace)
│
├── run (operations on individual runs - for specific analysis)
│   ├── list    - List runs (flat, filters apply to any run)
│   ├── get     - Get single run
│   └── export  - Export runs to single JSONL file (flat)
│
├── dataset (dataset operations)
│   ├── list    - List datasets
│   ├── get     - Get dataset details
│   ├── create  - Create empty dataset
│   ├── delete  - Delete dataset
│   ├── export  - Export dataset to file
│   └── upload  - Upload local JSON as dataset
│
├── example (example operations)
│   ├── list    - List examples in a dataset
│   ├── create  - Add example to a dataset
│   └── delete  - Delete an example
│
├── evaluator (evaluator operations)
│   ├── list    - List evaluators
│   ├── upload  - Upload evaluator
│   └── delete  - Delete evaluator
│
├── experiment (experiment operations)
│   ├── list    - List experiments
│   └── get     - Get experiment results
│
├── thread (thread operations)
│   ├── list    - List conversation threads
│   └── get     - Get thread details
│
└── project (project operations)
    └── list    - List tracing projects

Key differences:

traces *runs *
Filters apply toRoot run onlyAny matching run
--run-typeNot availableAvailable
ReturnsFull hierarchyFlat list
Export outputDirectory (one file/trace)Single file
</command_structure>

<querying_traces> Query traces using the langsmith CLI. Commands are language-agnostic.

# List recent traces (most common operation)
langsmith trace list --limit 10 --project my-project --api-key $LANGSMITH_API_KEY

# List traces with metadata (timing, tokens, costs)
langsmith trace list --limit 10 --include-metadata --api-key $LANGSMITH_API_KEY

# Filter traces by time
langsmith trace list --last-n-minutes 60 --api-key $LANGSMITH_API_KEY
langsmith trace list --since 2025-01-20T10:00:00Z --api-key $LANGSMITH_API_KEY

# Get specific trace with full hierarchy
langsmith trace get <trace-id> --api-key $LANGSMITH_API_KEY

# List traces and show hierarchy inline
langsmith trace list --limit 5 --show-hierarchy --api-key $LANGSMITH_API_KEY

# Export traces to JSONL (one file per trace, includes all runs)
langsmith trace export ./traces --limit 20 --full --api-key $LANGSMITH_API_KEY

# Filter traces by performance
langsmith trace list --min-latency 5.0 --limit 10 --api-key $LANGSMITH_API_KEY    # Slow traces (>= 5s)
langsmith trace list --error --last-n-minutes 60 --api-key $LANGSMITH_API_KEY     # Failed traces

# List specific run types (flat list)
langsmith run list --run-type llm --limit 20 --api-key $LANGSMITH_API_KEY

</querying_traces>

All commands support these filters (all AND together):

Basic filters:

  • --trace-ids abc,def - Filter to specific traces
  • --limit N - Max results
  • --project NAME - Project name
  • --last-n-minutes N - Time filter
  • --since TIMESTAMP - Time filter (ISO format)
  • --error / --no-error - Error status
  • --name PATTERN - Name contains (case-insensitive)

Performance filters:

  • --min-latency SECONDS - Minimum latency (e.g., 5 for >= 5s)
  • --max-latency SECONDS - Maximum latency
  • --min-tokens N - Minimum total tokens
  • --tags tag1,tag2 - Has any of these tags

Advanced filter:

  • --filter QUERY - Raw LangSmith filter query for complex cases (feedback, metadata, etc.)
# Filter traces by feedback score using raw LangSmith query
langsmith trace list --filter 'and(eq(feedback_key, "correctness"), gte(feedback_score, 0.8))' --api-key $LANGSMITH_API_KEY

<export_format> Export creates .jsonl files (one run per line) with these fields:

{"run_id": "...", "trace_id": "...", "name": "...", "run_type": "...", "parent_run_id": "...", "inputs": {...}, "outputs": {...}}

Use --include-io or --full to include inputs/outputs (required for dataset generation). </export_format>

- **Start with traces** — they provide complete context needed for trajectory and dataset generation - Use `traces export --full` for bulk data destined for datasets - Always specify `--project` to avoid mixing data from different projects - Use `/tmp` for temporary exports - Include `--include-metadata` for performance/cost analysis - Stitch files: `cat ./traces/*.jsonl > all.jsonl`

langchain-ai tarafından daha fazla skill

langgraph-docs
langchain-ai
LangGraph dokümantasyonuna erişerek durum bilgisi olan ajanlar ve çoklu ajan iş akışları oluşturun. Resmi LangGraph Python dokümanlarını getirir; durum makineleri, grafik tabanlı ajan tasarımı ve insan-döngüde desenlerini kapsar. Sorgu türüne göre ilgili dokümantasyonu önceliklendirir: nasıl yapılır soruları için uygulama kılavuzları, teori için kavram sayfaları, uçtan uca örnekler için eğitimler ve teknik detaylar için API referansları. En alakalı 2–4 dokümantasyon URL'sini otomatik olarak seçer ve yanıtlamak için içeriklerini alır...
official
langgraph-human-in-the-loop
langchain-ai
Graf yürütmesini insan incelemesi, onayı veya doğrulaması için duraklatır, ardından girdileriyle devam eder. Üç bileşen gerektirir: bir checkpointer (InMemorySaver veya PostgresSaver), config içinde bir thread ID ve JSON-serializable interrupt payload'ları. interrupt(value) duraklatır ve verileri yüzeye çıkarır; Command(resume=value) devam ettirir ve bu değeri duraklatılan düğüme döndürür. interrupt() öncesindeki tüm kod devamda yeniden çalıştırılır, bu nedenle yan etkiler idempotent olmalıdır (insert değil upsert kullanın). Onay iş akışlarını destekler,...
official
web-research
langchain-ai
Web araştırması ile ilgili talepler için bu beceriyi kullanın; kapsamlı web araştırması yapmak için yapılandırılmış bir yaklaşım sunar.
official
langchain-oss-primer
langchain-ai
Herhangi bir LangChain, Deep Agents veya LangGraph ajan oluşturma projesine BAŞLANGIÇ NOKTASI. Diğer becerileri seçmeden veya herhangi bir şey yazmadan önce gerekli başlangıç noktası.
official
skill-creator
langchain-ai
Etkili beceriler oluşturmak için rehber; bu beceriler, uzmanlaşmış bilgi, iş akışları veya araç entegrasyonları ile ajan yeteneklerini genişletir. Kullanıcı…
official
social-media
langchain-ai
Platformaya özel sosyal medya gönderilerini, araştırma destekli içerik ve oluşturulan eşlik eden görsellerle hazırlar. LinkedIn gönderilerini (profesyonel tonla 1.300 karakter) ve Twitter/X thread'lerini (tweet başına 280 karakter, 1/🧵 formatı) destekler. Yazmadan önce araştırmayı bir alt ajana devretmeyi, ardından doğruluk ve alaka düzeyini sağlamak için bulguları okumayı gerektirir. generate_social_image aracıyla, küçük... için optimize edilmiş cesur, yüksek kontrastlı kompozisyonlarla otomatik olarak dikkat çekici sosyal görseller oluşturur.
official
deep-agents-memory
langchain-ai
Deep Agents için geçici, kalıcı ve hibrit yönlendirme seçeneklerine sahip takılabilir bellek ve dosya arka uçları. Dört arka uç türü: StateBackend (iş parçacığı kapsamlı, geçici), StoreBackend (oturumlar arası kalıcı), FilesystemBackend (yerel geliştirme için gerçek disk erişimi) ve CompositeBackend (farklı yolları farklı arka uçlara yönlendirir). FilesystemMiddleware altı dosya işleme aracı sağlar: ls, read_file, write_file, edit_file, glob, grep. CompositeBackend en uzun önek eşlemesini kullanarak yönlendirme yapar...
official
deep-agents-orchestration
langchain-ai
Alt ajanları yönetir, çok adımlı görevleri planlar ve hassas işlemler için insan onayı gerektirir. Görev aracı aracılığıyla uzmanlaşmış alt ajanlara iş dağıtır; özel alt ajanlar izole araç setlerini ve sistem yönlendirmelerini desteklerken, varsayılan "genel amaçlı" alt ajan ana ajan yapılandırmasını devralır. write_todos ile karmaşık iş akışlarını planlayıp takip eder, görevleri beklemede, devam eden ve tamamlanmış durumlar arasında düzenler; kalıcılık için bir thread_id gerektirir. Uygular...
official