synthetic-conversations-traces
收藏资源简介:
# Synthetic Multi-Turn Conversations OTel Trace Dataset ## Overview 720 synthetic OpenTelemetry (OTel) traces simulating multi-turn chat conversations between a user and an LLM assistant, covering 12 everyday advice topics. Each trace contains 30–50 turns. Conversations were generated using `llama-3-3-70b-instruct`: scripted user messages drive each turn while the model produces assistant responses live, with each turn recorded as an OTel span including the full accumulated message history. Designed for testing and developing observability tools that ingest generative-AI telemetry following the `gen_ai.*` semantic conventions. ## License Released under [CC-BY-NC-4.0](https://creativecommons.org/licenses/by-nc/4.0/). Also subject to the [Llama 3 Community License Agreement](https://ai.meta.com/llama/license/). By using this dataset, you agree to its terms. ## Topics 12 categories, 60 traces each (perfectly balanced): | Topic | Description | |-------|-------------| | `tech_support` | Troubleshooting computers, networks, and devices | | `recipe_planning` | Meal planning, cooking instructions, dietary adaptations | | `travel_planning` | Trip planning, budgeting, logistics | | `coding_help` | Learning programming, building projects | | `fitness_advice` | Exercise routines, training plans, nutrition | | `career_advice` | Job transitions, burnout, salary negotiation | | `home_improvement` | Renovations, repairs, energy efficiency | | `parenting_advice` | Child behavior, communication, responsibilities | | `financial_planning` | Retirement, debt, homebuying | | `pet_care` | Dog/cat ownership, training, vet care | | `learning_language` | Language study strategies and resources | | `mental_health` | Stress, anxiety, well-being strategies | ## Dataset Structure Each line of `synthetic.jsonl` is one trace: ```json { "trace_id": "career_advice_080", "span_count": 46, "collected_at": "2026-05-11T04:56:43.139567", "spans": [ ... ] } ``` Each span represents one conversation turn (one user message + one assistant response): ```json { "trace_id": "career_advice_080", "span_id": "turn_0", "name": "chat model", "kind": "SPAN_KIND_INTERNAL", "start_time": "2026-05-11T04:56:43.139567", "end_time": "2026-05-11T04:56:45.020964", "attributes": { "gen_ai.operation.name": "chat", "gen_ai.provider.name": "meta-llama", "gen_ai.request.model": "llama-3-3-70b-instruct", "gen_ai.input.messages": "[{\"role\": \"system\", ...}, {\"role\": \"user\", ...}]", "gen_ai.output.text": "It's generally recommended to have a financial safety net...", "gen_ai.usage.prompt_tokens": 407, "gen_ai.usage.completion_tokens": 107 }, "resource_attributes": { "service.name": "synthetic-trace-service" }, "status": { "code": 1, "message": "" } } ``` `gen_ai.input.messages` accumulates the full conversation history (system prompt + all prior turns) at every span. ## Statistics | | | |---|---| | Total traces | 720 | | Traces per topic | 60 | | Spans per trace | 30–50 | | Total spans | 28,791 | | Generation model | `llama-3-3-70b-instruct` | ## Usage ```python from datasets import load_dataset ds = load_dataset("json", data_files="synthetic.jsonl", split="train") trace = ds[0] print(trace["trace_id"]) # e.g. "career_advice_080" for span in trace["spans"]: print(span["attributes"]["gen_ai.output.text"]) ```



