Tags
Tags are arbitrary key-value metadata attached to any LLM call. They appear in your Weflayr dashboard and let you slice cost, latency, and error analytics by any dimension you care about.
Flexible by design. Weflayr does not enforce a tag schema. Use any string keys and string values.
How to pass tags
Add a tags keyword argument to any instrumented call. The SDK strips it before forwarding to the upstream provider — no change to your prompt or request payload.
client.chat.completions.create(
model="gpt-4o-mini",
messages=[...],
tags={
"feature": "support-bot",
"customer_id": "cust_abc123",
"experiment": "prompt-v3",
},
)
Common patterns
By feature
feature: onboarding feature: support-bot feature: search feature: summarization
By environment
env: production env: staging env: development
By customer or tenant
customer_id: cust_123 tenant: acme-corp plan: enterprise
By experiment or version
experiment: prompt-v3 model_variant: gpt-4o ab_group: B
By pipeline step
pipeline: rag step: retrieval step: generation
Rules
- Keys and values must be strings
- Any number of tags per call
- Tags are stored as-is — they are not forwarded to the LLM provider
- Omitting
tagsentirely is equivalent totags={}