@livekit/agents 1.0.44 → 1.0.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/dist/ipc/supervised_proc.cjs +1 -1
  2. package/dist/ipc/supervised_proc.cjs.map +1 -1
  3. package/dist/ipc/supervised_proc.js +1 -1
  4. package/dist/ipc/supervised_proc.js.map +1 -1
  5. package/dist/llm/llm.cjs +1 -1
  6. package/dist/llm/llm.cjs.map +1 -1
  7. package/dist/llm/llm.js +1 -1
  8. package/dist/llm/llm.js.map +1 -1
  9. package/dist/log.cjs +13 -9
  10. package/dist/log.cjs.map +1 -1
  11. package/dist/log.d.cts +1 -1
  12. package/dist/log.d.ts +1 -1
  13. package/dist/log.d.ts.map +1 -1
  14. package/dist/log.js +13 -9
  15. package/dist/log.js.map +1 -1
  16. package/dist/stream/index.cjs +3 -0
  17. package/dist/stream/index.cjs.map +1 -1
  18. package/dist/stream/index.d.cts +1 -0
  19. package/dist/stream/index.d.ts +1 -0
  20. package/dist/stream/index.d.ts.map +1 -1
  21. package/dist/stream/index.js +2 -0
  22. package/dist/stream/index.js.map +1 -1
  23. package/dist/stream/multi_input_stream.cjs +139 -0
  24. package/dist/stream/multi_input_stream.cjs.map +1 -0
  25. package/dist/stream/multi_input_stream.d.cts +55 -0
  26. package/dist/stream/multi_input_stream.d.ts +55 -0
  27. package/dist/stream/multi_input_stream.d.ts.map +1 -0
  28. package/dist/stream/multi_input_stream.js +115 -0
  29. package/dist/stream/multi_input_stream.js.map +1 -0
  30. package/dist/stream/multi_input_stream.test.cjs +340 -0
  31. package/dist/stream/multi_input_stream.test.cjs.map +1 -0
  32. package/dist/stream/multi_input_stream.test.js +339 -0
  33. package/dist/stream/multi_input_stream.test.js.map +1 -0
  34. package/dist/stt/stt.cjs +2 -2
  35. package/dist/stt/stt.cjs.map +1 -1
  36. package/dist/stt/stt.js +2 -2
  37. package/dist/stt/stt.js.map +1 -1
  38. package/dist/telemetry/trace_types.cjs +42 -0
  39. package/dist/telemetry/trace_types.cjs.map +1 -1
  40. package/dist/telemetry/trace_types.d.cts +14 -0
  41. package/dist/telemetry/trace_types.d.ts +14 -0
  42. package/dist/telemetry/trace_types.d.ts.map +1 -1
  43. package/dist/telemetry/trace_types.js +28 -0
  44. package/dist/telemetry/trace_types.js.map +1 -1
  45. package/dist/tts/fallback_adapter.cjs +466 -0
  46. package/dist/tts/fallback_adapter.cjs.map +1 -0
  47. package/dist/tts/fallback_adapter.d.cts +110 -0
  48. package/dist/tts/fallback_adapter.d.ts +110 -0
  49. package/dist/tts/fallback_adapter.d.ts.map +1 -0
  50. package/dist/tts/fallback_adapter.js +442 -0
  51. package/dist/tts/fallback_adapter.js.map +1 -0
  52. package/dist/tts/index.cjs +3 -0
  53. package/dist/tts/index.cjs.map +1 -1
  54. package/dist/tts/index.d.cts +1 -0
  55. package/dist/tts/index.d.ts +1 -0
  56. package/dist/tts/index.d.ts.map +1 -1
  57. package/dist/tts/index.js +2 -0
  58. package/dist/tts/index.js.map +1 -1
  59. package/dist/tts/tts.cjs +2 -2
  60. package/dist/tts/tts.cjs.map +1 -1
  61. package/dist/tts/tts.js +2 -2
  62. package/dist/tts/tts.js.map +1 -1
  63. package/dist/utils.cjs +13 -0
  64. package/dist/utils.cjs.map +1 -1
  65. package/dist/utils.d.cts +1 -0
  66. package/dist/utils.d.ts +1 -0
  67. package/dist/utils.d.ts.map +1 -1
  68. package/dist/utils.js +13 -0
  69. package/dist/utils.js.map +1 -1
  70. package/dist/vad.cjs +11 -10
  71. package/dist/vad.cjs.map +1 -1
  72. package/dist/vad.d.cts +5 -3
  73. package/dist/vad.d.ts +5 -3
  74. package/dist/vad.d.ts.map +1 -1
  75. package/dist/vad.js +11 -10
  76. package/dist/vad.js.map +1 -1
  77. package/dist/voice/agent_activity.cjs +35 -10
  78. package/dist/voice/agent_activity.cjs.map +1 -1
  79. package/dist/voice/agent_activity.d.cts +1 -0
  80. package/dist/voice/agent_activity.d.ts +1 -0
  81. package/dist/voice/agent_activity.d.ts.map +1 -1
  82. package/dist/voice/agent_activity.js +35 -10
  83. package/dist/voice/agent_activity.js.map +1 -1
  84. package/dist/voice/agent_session.cjs +19 -7
  85. package/dist/voice/agent_session.cjs.map +1 -1
  86. package/dist/voice/agent_session.d.cts +3 -2
  87. package/dist/voice/agent_session.d.ts +3 -2
  88. package/dist/voice/agent_session.d.ts.map +1 -1
  89. package/dist/voice/agent_session.js +19 -7
  90. package/dist/voice/agent_session.js.map +1 -1
  91. package/dist/voice/audio_recognition.cjs +85 -36
  92. package/dist/voice/audio_recognition.cjs.map +1 -1
  93. package/dist/voice/audio_recognition.d.cts +22 -1
  94. package/dist/voice/audio_recognition.d.ts +22 -1
  95. package/dist/voice/audio_recognition.d.ts.map +1 -1
  96. package/dist/voice/audio_recognition.js +89 -36
  97. package/dist/voice/audio_recognition.js.map +1 -1
  98. package/dist/voice/audio_recognition_span.test.cjs +233 -0
  99. package/dist/voice/audio_recognition_span.test.cjs.map +1 -0
  100. package/dist/voice/audio_recognition_span.test.js +232 -0
  101. package/dist/voice/audio_recognition_span.test.js.map +1 -0
  102. package/dist/voice/io.cjs +6 -3
  103. package/dist/voice/io.cjs.map +1 -1
  104. package/dist/voice/io.d.cts +3 -2
  105. package/dist/voice/io.d.ts +3 -2
  106. package/dist/voice/io.d.ts.map +1 -1
  107. package/dist/voice/io.js +6 -3
  108. package/dist/voice/io.js.map +1 -1
  109. package/dist/voice/recorder_io/recorder_io.cjs +3 -1
  110. package/dist/voice/recorder_io/recorder_io.cjs.map +1 -1
  111. package/dist/voice/recorder_io/recorder_io.d.ts.map +1 -1
  112. package/dist/voice/recorder_io/recorder_io.js +3 -1
  113. package/dist/voice/recorder_io/recorder_io.js.map +1 -1
  114. package/dist/voice/room_io/_input.cjs +23 -20
  115. package/dist/voice/room_io/_input.cjs.map +1 -1
  116. package/dist/voice/room_io/_input.d.cts +2 -2
  117. package/dist/voice/room_io/_input.d.ts +2 -2
  118. package/dist/voice/room_io/_input.d.ts.map +1 -1
  119. package/dist/voice/room_io/_input.js +13 -9
  120. package/dist/voice/room_io/_input.js.map +1 -1
  121. package/dist/voice/room_io/room_io.cjs +9 -0
  122. package/dist/voice/room_io/room_io.cjs.map +1 -1
  123. package/dist/voice/room_io/room_io.d.cts +3 -1
  124. package/dist/voice/room_io/room_io.d.ts +3 -1
  125. package/dist/voice/room_io/room_io.d.ts.map +1 -1
  126. package/dist/voice/room_io/room_io.js +9 -0
  127. package/dist/voice/room_io/room_io.js.map +1 -1
  128. package/dist/voice/utils.cjs +47 -0
  129. package/dist/voice/utils.cjs.map +1 -0
  130. package/dist/voice/utils.d.cts +4 -0
  131. package/dist/voice/utils.d.ts +4 -0
  132. package/dist/voice/utils.d.ts.map +1 -0
  133. package/dist/voice/utils.js +23 -0
  134. package/dist/voice/utils.js.map +1 -0
  135. package/package.json +1 -1
  136. package/src/ipc/supervised_proc.ts +1 -1
  137. package/src/llm/llm.ts +1 -1
  138. package/src/log.ts +22 -11
  139. package/src/stream/index.ts +1 -0
  140. package/src/stream/multi_input_stream.test.ts +540 -0
  141. package/src/stream/multi_input_stream.ts +172 -0
  142. package/src/stt/stt.ts +2 -2
  143. package/src/telemetry/trace_types.ts +18 -0
  144. package/src/tts/fallback_adapter.ts +579 -0
  145. package/src/tts/index.ts +1 -0
  146. package/src/tts/tts.ts +2 -2
  147. package/src/utils.ts +16 -0
  148. package/src/vad.ts +12 -11
  149. package/src/voice/agent_activity.ts +25 -0
  150. package/src/voice/agent_session.ts +17 -11
  151. package/src/voice/audio_recognition.ts +114 -38
  152. package/src/voice/audio_recognition_span.test.ts +261 -0
  153. package/src/voice/io.ts +7 -4
  154. package/src/voice/recorder_io/recorder_io.ts +2 -1
  155. package/src/voice/room_io/_input.ts +16 -10
  156. package/src/voice/room_io/room_io.ts +12 -0
  157. package/src/voice/utils.ts +29 -0
@@ -20,7 +20,10 @@ var trace_types_exports = {};
20
20
  __export(trace_types_exports, {
21
21
  ATTR_AGENT_LABEL: () => ATTR_AGENT_LABEL,
22
22
  ATTR_AGENT_NAME: () => ATTR_AGENT_NAME,
23
+ ATTR_AGENT_PARENT_TURN_ID: () => ATTR_AGENT_PARENT_TURN_ID,
24
+ ATTR_AGENT_TURN_ID: () => ATTR_AGENT_TURN_ID,
23
25
  ATTR_CHAT_CTX: () => ATTR_CHAT_CTX,
26
+ ATTR_E2E_LATENCY: () => ATTR_E2E_LATENCY,
24
27
  ATTR_END_OF_TURN_DELAY: () => ATTR_END_OF_TURN_DELAY,
25
28
  ATTR_END_TIME: () => ATTR_END_TIME,
26
29
  ATTR_EOU_DELAY: () => ATTR_EOU_DELAY,
@@ -32,10 +35,12 @@ __export(trace_types_exports, {
32
35
  ATTR_EXCEPTION_TYPE: () => ATTR_EXCEPTION_TYPE,
33
36
  ATTR_FUNCTION_TOOLS: () => ATTR_FUNCTION_TOOLS,
34
37
  ATTR_FUNCTION_TOOL_ARGS: () => ATTR_FUNCTION_TOOL_ARGS,
38
+ ATTR_FUNCTION_TOOL_ID: () => ATTR_FUNCTION_TOOL_ID,
35
39
  ATTR_FUNCTION_TOOL_IS_ERROR: () => ATTR_FUNCTION_TOOL_IS_ERROR,
36
40
  ATTR_FUNCTION_TOOL_NAME: () => ATTR_FUNCTION_TOOL_NAME,
37
41
  ATTR_FUNCTION_TOOL_OUTPUT: () => ATTR_FUNCTION_TOOL_OUTPUT,
38
42
  ATTR_GEN_AI_OPERATION_NAME: () => ATTR_GEN_AI_OPERATION_NAME,
43
+ ATTR_GEN_AI_PROVIDER_NAME: () => ATTR_GEN_AI_PROVIDER_NAME,
39
44
  ATTR_GEN_AI_REQUEST_MODEL: () => ATTR_GEN_AI_REQUEST_MODEL,
40
45
  ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS: () => ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS,
41
46
  ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS: () => ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS,
@@ -45,21 +50,30 @@ __export(trace_types_exports, {
45
50
  ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS: () => ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS,
46
51
  ATTR_GEN_AI_USAGE_OUTPUT_TOKENS: () => ATTR_GEN_AI_USAGE_OUTPUT_TOKENS,
47
52
  ATTR_INSTRUCTIONS: () => ATTR_INSTRUCTIONS,
53
+ ATTR_INTERRUPTION_DETECTION_DELAY: () => ATTR_INTERRUPTION_DETECTION_DELAY,
54
+ ATTR_INTERRUPTION_PREDICTION_DURATION: () => ATTR_INTERRUPTION_PREDICTION_DURATION,
55
+ ATTR_INTERRUPTION_PROBABILITY: () => ATTR_INTERRUPTION_PROBABILITY,
56
+ ATTR_INTERRUPTION_TOTAL_DURATION: () => ATTR_INTERRUPTION_TOTAL_DURATION,
57
+ ATTR_IS_INTERRUPTION: () => ATTR_IS_INTERRUPTION,
48
58
  ATTR_JOB_ID: () => ATTR_JOB_ID,
49
59
  ATTR_LANGFUSE_COMPLETION_START_TIME: () => ATTR_LANGFUSE_COMPLETION_START_TIME,
50
60
  ATTR_LLM_METRICS: () => ATTR_LLM_METRICS,
51
61
  ATTR_PARTICIPANT_ID: () => ATTR_PARTICIPANT_ID,
52
62
  ATTR_PARTICIPANT_IDENTITY: () => ATTR_PARTICIPANT_IDENTITY,
53
63
  ATTR_PARTICIPANT_KIND: () => ATTR_PARTICIPANT_KIND,
64
+ ATTR_PROVIDER_TOOLS: () => ATTR_PROVIDER_TOOLS,
54
65
  ATTR_REALTIME_MODEL_METRICS: () => ATTR_REALTIME_MODEL_METRICS,
55
66
  ATTR_RESPONSE_FUNCTION_CALLS: () => ATTR_RESPONSE_FUNCTION_CALLS,
56
67
  ATTR_RESPONSE_TEXT: () => ATTR_RESPONSE_TEXT,
68
+ ATTR_RESPONSE_TTFB: () => ATTR_RESPONSE_TTFB,
69
+ ATTR_RESPONSE_TTFT: () => ATTR_RESPONSE_TTFT,
57
70
  ATTR_RETRY_COUNT: () => ATTR_RETRY_COUNT,
58
71
  ATTR_ROOM_NAME: () => ATTR_ROOM_NAME,
59
72
  ATTR_SESSION_OPTIONS: () => ATTR_SESSION_OPTIONS,
60
73
  ATTR_SPEECH_ID: () => ATTR_SPEECH_ID,
61
74
  ATTR_SPEECH_INTERRUPTED: () => ATTR_SPEECH_INTERRUPTED,
62
75
  ATTR_START_TIME: () => ATTR_START_TIME,
76
+ ATTR_TOOL_SETS: () => ATTR_TOOL_SETS,
63
77
  ATTR_TRANSCRIPTION_DELAY: () => ATTR_TRANSCRIPTION_DELAY,
64
78
  ATTR_TRANSCRIPT_CONFIDENCE: () => ATTR_TRANSCRIPT_CONFIDENCE,
65
79
  ATTR_TTS_INPUT_TEXT: () => ATTR_TTS_INPUT_TEXT,
@@ -87,13 +101,19 @@ const ATTR_JOB_ID = "lk.job_id";
87
101
  const ATTR_AGENT_NAME = "lk.agent_name";
88
102
  const ATTR_ROOM_NAME = "lk.room_name";
89
103
  const ATTR_SESSION_OPTIONS = "lk.session_options";
104
+ const ATTR_AGENT_TURN_ID = "lk.generation_id";
105
+ const ATTR_AGENT_PARENT_TURN_ID = "lk.parent_generation_id";
90
106
  const ATTR_USER_INPUT = "lk.user_input";
91
107
  const ATTR_INSTRUCTIONS = "lk.instructions";
92
108
  const ATTR_SPEECH_INTERRUPTED = "lk.interrupted";
93
109
  const ATTR_CHAT_CTX = "lk.chat_ctx";
94
110
  const ATTR_FUNCTION_TOOLS = "lk.function_tools";
111
+ const ATTR_PROVIDER_TOOLS = "lk.provider_tools";
112
+ const ATTR_TOOL_SETS = "lk.tool_sets";
95
113
  const ATTR_RESPONSE_TEXT = "lk.response.text";
96
114
  const ATTR_RESPONSE_FUNCTION_CALLS = "lk.response.function_calls";
115
+ const ATTR_RESPONSE_TTFT = "lk.response.ttft";
116
+ const ATTR_FUNCTION_TOOL_ID = "lk.function_tool.id";
97
117
  const ATTR_FUNCTION_TOOL_NAME = "lk.function_tool.name";
98
118
  const ATTR_FUNCTION_TOOL_ARGS = "lk.function_tool.arguments";
99
119
  const ATTR_FUNCTION_TOOL_IS_ERROR = "lk.function_tool.is_error";
@@ -101,6 +121,7 @@ const ATTR_FUNCTION_TOOL_OUTPUT = "lk.function_tool.output";
101
121
  const ATTR_TTS_INPUT_TEXT = "lk.input_text";
102
122
  const ATTR_TTS_STREAMING = "lk.tts.streaming";
103
123
  const ATTR_TTS_LABEL = "lk.tts.label";
124
+ const ATTR_RESPONSE_TTFB = "lk.response.ttfb";
104
125
  const ATTR_EOU_PROBABILITY = "lk.eou.probability";
105
126
  const ATTR_EOU_UNLIKELY_THRESHOLD = "lk.eou.unlikely_threshold";
106
127
  const ATTR_EOU_DELAY = "lk.eou.endpointing_delay";
@@ -112,8 +133,10 @@ const ATTR_END_OF_TURN_DELAY = "lk.end_of_turn_delay";
112
133
  const ATTR_LLM_METRICS = "lk.llm_metrics";
113
134
  const ATTR_TTS_METRICS = "lk.tts_metrics";
114
135
  const ATTR_REALTIME_MODEL_METRICS = "lk.realtime_model_metrics";
136
+ const ATTR_E2E_LATENCY = "lk.e2e_latency";
115
137
  const ATTR_GEN_AI_OPERATION_NAME = "gen_ai.operation.name";
116
138
  const ATTR_GEN_AI_REQUEST_MODEL = "gen_ai.request.model";
139
+ const ATTR_GEN_AI_PROVIDER_NAME = "gen_ai.provider.name";
117
140
  const ATTR_GEN_AI_USAGE_INPUT_TOKENS = "gen_ai.usage.input_tokens";
118
141
  const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = "gen_ai.usage.output_tokens";
119
142
  const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = "gen_ai.usage.input_text_tokens";
@@ -130,11 +153,19 @@ const ATTR_EXCEPTION_TRACE = "exception.stacktrace";
130
153
  const ATTR_EXCEPTION_TYPE = "exception.type";
131
154
  const ATTR_EXCEPTION_MESSAGE = "exception.message";
132
155
  const ATTR_LANGFUSE_COMPLETION_START_TIME = "langfuse.observation.completion_start_time";
156
+ const ATTR_IS_INTERRUPTION = "lk.is_interruption";
157
+ const ATTR_INTERRUPTION_PROBABILITY = "lk.interruption.probability";
158
+ const ATTR_INTERRUPTION_TOTAL_DURATION = "lk.interruption.total_duration";
159
+ const ATTR_INTERRUPTION_PREDICTION_DURATION = "lk.interruption.prediction_duration";
160
+ const ATTR_INTERRUPTION_DETECTION_DELAY = "lk.interruption.detection_delay";
133
161
  // Annotate the CommonJS export names for ESM import in node:
134
162
  0 && (module.exports = {
135
163
  ATTR_AGENT_LABEL,
136
164
  ATTR_AGENT_NAME,
165
+ ATTR_AGENT_PARENT_TURN_ID,
166
+ ATTR_AGENT_TURN_ID,
137
167
  ATTR_CHAT_CTX,
168
+ ATTR_E2E_LATENCY,
138
169
  ATTR_END_OF_TURN_DELAY,
139
170
  ATTR_END_TIME,
140
171
  ATTR_EOU_DELAY,
@@ -146,10 +177,12 @@ const ATTR_LANGFUSE_COMPLETION_START_TIME = "langfuse.observation.completion_sta
146
177
  ATTR_EXCEPTION_TYPE,
147
178
  ATTR_FUNCTION_TOOLS,
148
179
  ATTR_FUNCTION_TOOL_ARGS,
180
+ ATTR_FUNCTION_TOOL_ID,
149
181
  ATTR_FUNCTION_TOOL_IS_ERROR,
150
182
  ATTR_FUNCTION_TOOL_NAME,
151
183
  ATTR_FUNCTION_TOOL_OUTPUT,
152
184
  ATTR_GEN_AI_OPERATION_NAME,
185
+ ATTR_GEN_AI_PROVIDER_NAME,
153
186
  ATTR_GEN_AI_REQUEST_MODEL,
154
187
  ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS,
155
188
  ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS,
@@ -159,21 +192,30 @@ const ATTR_LANGFUSE_COMPLETION_START_TIME = "langfuse.observation.completion_sta
159
192
  ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS,
160
193
  ATTR_GEN_AI_USAGE_OUTPUT_TOKENS,
161
194
  ATTR_INSTRUCTIONS,
195
+ ATTR_INTERRUPTION_DETECTION_DELAY,
196
+ ATTR_INTERRUPTION_PREDICTION_DURATION,
197
+ ATTR_INTERRUPTION_PROBABILITY,
198
+ ATTR_INTERRUPTION_TOTAL_DURATION,
199
+ ATTR_IS_INTERRUPTION,
162
200
  ATTR_JOB_ID,
163
201
  ATTR_LANGFUSE_COMPLETION_START_TIME,
164
202
  ATTR_LLM_METRICS,
165
203
  ATTR_PARTICIPANT_ID,
166
204
  ATTR_PARTICIPANT_IDENTITY,
167
205
  ATTR_PARTICIPANT_KIND,
206
+ ATTR_PROVIDER_TOOLS,
168
207
  ATTR_REALTIME_MODEL_METRICS,
169
208
  ATTR_RESPONSE_FUNCTION_CALLS,
170
209
  ATTR_RESPONSE_TEXT,
210
+ ATTR_RESPONSE_TTFB,
211
+ ATTR_RESPONSE_TTFT,
171
212
  ATTR_RETRY_COUNT,
172
213
  ATTR_ROOM_NAME,
173
214
  ATTR_SESSION_OPTIONS,
174
215
  ATTR_SPEECH_ID,
175
216
  ATTR_SPEECH_INTERRUPTED,
176
217
  ATTR_START_TIME,
218
+ ATTR_TOOL_SETS,
177
219
  ATTR_TRANSCRIPTION_DELAY,
178
220
  ATTR_TRANSCRIPT_CONFIDENCE,
179
221
  ATTR_TTS_INPUT_TEXT,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/telemetry/trace_types.ts"],"sourcesContent":["// SPDX-FileCopyrightText: 2025 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// LiveKit custom attributes\nexport const ATTR_SPEECH_ID = 'lk.speech_id';\nexport const ATTR_AGENT_LABEL = 'lk.agent_label';\nexport const ATTR_START_TIME = 'lk.start_time';\nexport const ATTR_END_TIME = 'lk.end_time';\nexport const ATTR_RETRY_COUNT = 'lk.retry_count';\n\nexport const ATTR_PARTICIPANT_ID = 'lk.participant_id';\nexport const ATTR_PARTICIPANT_IDENTITY = 'lk.participant_identity';\nexport const ATTR_PARTICIPANT_KIND = 'lk.participant_kind';\n\n// session start\nexport const ATTR_JOB_ID = 'lk.job_id';\nexport const ATTR_AGENT_NAME = 'lk.agent_name';\nexport const ATTR_ROOM_NAME = 'lk.room_name';\nexport const ATTR_SESSION_OPTIONS = 'lk.session_options';\n\n// assistant turn\nexport const ATTR_USER_INPUT = 'lk.user_input';\nexport const ATTR_INSTRUCTIONS = 'lk.instructions';\nexport const ATTR_SPEECH_INTERRUPTED = 'lk.interrupted';\n\n// llm node\nexport const ATTR_CHAT_CTX = 'lk.chat_ctx';\nexport const ATTR_FUNCTION_TOOLS = 'lk.function_tools';\nexport const ATTR_RESPONSE_TEXT = 'lk.response.text';\nexport const ATTR_RESPONSE_FUNCTION_CALLS = 'lk.response.function_calls';\n\n// function tool\nexport const ATTR_FUNCTION_TOOL_NAME = 'lk.function_tool.name';\nexport const ATTR_FUNCTION_TOOL_ARGS = 'lk.function_tool.arguments';\nexport const ATTR_FUNCTION_TOOL_IS_ERROR = 'lk.function_tool.is_error';\nexport const ATTR_FUNCTION_TOOL_OUTPUT = 'lk.function_tool.output';\n\n// tts node\nexport const ATTR_TTS_INPUT_TEXT = 'lk.input_text';\nexport const ATTR_TTS_STREAMING = 'lk.tts.streaming';\nexport const ATTR_TTS_LABEL = 'lk.tts.label';\n\n// eou detection\nexport const ATTR_EOU_PROBABILITY = 'lk.eou.probability';\nexport const ATTR_EOU_UNLIKELY_THRESHOLD = 'lk.eou.unlikely_threshold';\nexport const ATTR_EOU_DELAY = 'lk.eou.endpointing_delay';\nexport const ATTR_EOU_LANGUAGE = 'lk.eou.language';\nexport const ATTR_USER_TRANSCRIPT = 'lk.user_transcript';\nexport const ATTR_TRANSCRIPT_CONFIDENCE = 'lk.transcript_confidence';\nexport const ATTR_TRANSCRIPTION_DELAY = 'lk.transcription_delay';\nexport const ATTR_END_OF_TURN_DELAY = 'lk.end_of_turn_delay';\n\n// metrics\nexport const ATTR_LLM_METRICS = 'lk.llm_metrics';\nexport const ATTR_TTS_METRICS = 'lk.tts_metrics';\nexport const ATTR_REALTIME_MODEL_METRICS = 'lk.realtime_model_metrics';\n\n// OpenTelemetry GenAI attributes\n// OpenTelemetry specification: https://opentelemetry.io/docs/specs/semconv/registry/attributes/gen-ai/\nexport const ATTR_GEN_AI_OPERATION_NAME = 'gen_ai.operation.name';\nexport const ATTR_GEN_AI_REQUEST_MODEL = 'gen_ai.request.model';\nexport const ATTR_GEN_AI_USAGE_INPUT_TOKENS = 'gen_ai.usage.input_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = 'gen_ai.usage.output_tokens';\n\n// Unofficial OpenTelemetry GenAI attributes, recognized by LangFuse\n// https://langfuse.com/integrations/native/opentelemetry#usage\n// but not yet in the official OpenTelemetry specification.\nexport const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = 'gen_ai.usage.input_text_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS = 'gen_ai.usage.input_audio_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS = 'gen_ai.usage.input_cached_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS = 'gen_ai.usage.output_text_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_AUDIO_TOKENS = 'gen_ai.usage.output_audio_tokens';\n\n// OpenTelemetry GenAI event names (for structured logging)\nexport const EVENT_GEN_AI_SYSTEM_MESSAGE = 'gen_ai.system.message';\nexport const EVENT_GEN_AI_USER_MESSAGE = 'gen_ai.user.message';\nexport const EVENT_GEN_AI_ASSISTANT_MESSAGE = 'gen_ai.assistant.message';\nexport const EVENT_GEN_AI_TOOL_MESSAGE = 'gen_ai.tool.message';\nexport const EVENT_GEN_AI_CHOICE = 'gen_ai.choice';\n\n// Exception attributes\nexport const ATTR_EXCEPTION_TRACE = 'exception.stacktrace';\nexport const ATTR_EXCEPTION_TYPE = 'exception.type';\nexport const ATTR_EXCEPTION_MESSAGE = 'exception.message';\n\n// Platform-specific attributes\nexport const ATTR_LANGFUSE_COMPLETION_START_TIME = 'langfuse.observation.completion_start_time';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKO,MAAM,iBAAiB;AACvB,MAAM,mBAAmB;AACzB,MAAM,kBAAkB;AACxB,MAAM,gBAAgB;AACtB,MAAM,mBAAmB;AAEzB,MAAM,sBAAsB;AAC5B,MAAM,4BAA4B;AAClC,MAAM,wBAAwB;AAG9B,MAAM,cAAc;AACpB,MAAM,kBAAkB;AACxB,MAAM,iBAAiB;AACvB,MAAM,uBAAuB;AAG7B,MAAM,kBAAkB;AACxB,MAAM,oBAAoB;AAC1B,MAAM,0BAA0B;AAGhC,MAAM,gBAAgB;AACtB,MAAM,sBAAsB;AAC5B,MAAM,qBAAqB;AAC3B,MAAM,+BAA+B;AAGrC,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;AAChC,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAGlC,MAAM,sBAAsB;AAC5B,MAAM,qBAAqB;AAC3B,MAAM,iBAAiB;AAGvB,MAAM,uBAAuB;AAC7B,MAAM,8BAA8B;AACpC,MAAM,iBAAiB;AACvB,MAAM,oBAAoB;AAC1B,MAAM,uBAAuB;AAC7B,MAAM,6BAA6B;AACnC,MAAM,2BAA2B;AACjC,MAAM,yBAAyB;AAG/B,MAAM,mBAAmB;AACzB,MAAM,mBAAmB;AACzB,MAAM,8BAA8B;AAIpC,MAAM,6BAA6B;AACnC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,kCAAkC;AAKxC,MAAM,sCAAsC;AAC5C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAC9C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAG9C,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,4BAA4B;AAClC,MAAM,sBAAsB;AAG5B,MAAM,uBAAuB;AAC7B,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAG/B,MAAM,sCAAsC;","names":[]}
1
+ {"version":3,"sources":["../../src/telemetry/trace_types.ts"],"sourcesContent":["// SPDX-FileCopyrightText: 2025 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// LiveKit custom attributes\nexport const ATTR_SPEECH_ID = 'lk.speech_id';\nexport const ATTR_AGENT_LABEL = 'lk.agent_label';\nexport const ATTR_START_TIME = 'lk.start_time';\nexport const ATTR_END_TIME = 'lk.end_time';\nexport const ATTR_RETRY_COUNT = 'lk.retry_count';\n\nexport const ATTR_PARTICIPANT_ID = 'lk.participant_id';\nexport const ATTR_PARTICIPANT_IDENTITY = 'lk.participant_identity';\nexport const ATTR_PARTICIPANT_KIND = 'lk.participant_kind';\n\n// session start\nexport const ATTR_JOB_ID = 'lk.job_id';\nexport const ATTR_AGENT_NAME = 'lk.agent_name';\nexport const ATTR_ROOM_NAME = 'lk.room_name';\nexport const ATTR_SESSION_OPTIONS = 'lk.session_options';\n\n// assistant turn\nexport const ATTR_AGENT_TURN_ID = 'lk.generation_id';\nexport const ATTR_AGENT_PARENT_TURN_ID = 'lk.parent_generation_id';\nexport const ATTR_USER_INPUT = 'lk.user_input';\nexport const ATTR_INSTRUCTIONS = 'lk.instructions';\nexport const ATTR_SPEECH_INTERRUPTED = 'lk.interrupted';\n\n// llm node\nexport const ATTR_CHAT_CTX = 'lk.chat_ctx';\nexport const ATTR_FUNCTION_TOOLS = 'lk.function_tools';\nexport const ATTR_PROVIDER_TOOLS = 'lk.provider_tools';\nexport const ATTR_TOOL_SETS = 'lk.tool_sets';\nexport const ATTR_RESPONSE_TEXT = 'lk.response.text';\nexport const ATTR_RESPONSE_FUNCTION_CALLS = 'lk.response.function_calls';\nexport const ATTR_RESPONSE_TTFT = 'lk.response.ttft';\n\n// function tool\nexport const ATTR_FUNCTION_TOOL_ID = 'lk.function_tool.id';\nexport const ATTR_FUNCTION_TOOL_NAME = 'lk.function_tool.name';\nexport const ATTR_FUNCTION_TOOL_ARGS = 'lk.function_tool.arguments';\nexport const ATTR_FUNCTION_TOOL_IS_ERROR = 'lk.function_tool.is_error';\nexport const ATTR_FUNCTION_TOOL_OUTPUT = 'lk.function_tool.output';\n\n// tts node\nexport const ATTR_TTS_INPUT_TEXT = 'lk.input_text';\nexport const ATTR_TTS_STREAMING = 'lk.tts.streaming';\nexport const ATTR_TTS_LABEL = 'lk.tts.label';\nexport const ATTR_RESPONSE_TTFB = 'lk.response.ttfb';\n\n// eou detection\nexport const ATTR_EOU_PROBABILITY = 'lk.eou.probability';\nexport const ATTR_EOU_UNLIKELY_THRESHOLD = 'lk.eou.unlikely_threshold';\nexport const ATTR_EOU_DELAY = 'lk.eou.endpointing_delay';\nexport const ATTR_EOU_LANGUAGE = 'lk.eou.language';\nexport const ATTR_USER_TRANSCRIPT = 'lk.user_transcript';\nexport const ATTR_TRANSCRIPT_CONFIDENCE = 'lk.transcript_confidence';\nexport const ATTR_TRANSCRIPTION_DELAY = 'lk.transcription_delay';\nexport const ATTR_END_OF_TURN_DELAY = 'lk.end_of_turn_delay';\n\n// metrics\nexport const ATTR_LLM_METRICS = 'lk.llm_metrics';\nexport const ATTR_TTS_METRICS = 'lk.tts_metrics';\nexport const ATTR_REALTIME_MODEL_METRICS = 'lk.realtime_model_metrics';\n\n// latency span attributes\nexport const ATTR_E2E_LATENCY = 'lk.e2e_latency';\n\n// OpenTelemetry GenAI attributes\n// OpenTelemetry specification: https://opentelemetry.io/docs/specs/semconv/registry/attributes/gen-ai/\nexport const ATTR_GEN_AI_OPERATION_NAME = 'gen_ai.operation.name';\nexport const ATTR_GEN_AI_REQUEST_MODEL = 'gen_ai.request.model';\nexport const ATTR_GEN_AI_PROVIDER_NAME = 'gen_ai.provider.name';\nexport const ATTR_GEN_AI_USAGE_INPUT_TOKENS = 'gen_ai.usage.input_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = 'gen_ai.usage.output_tokens';\n\n// Unofficial OpenTelemetry GenAI attributes, recognized by LangFuse\n// https://langfuse.com/integrations/native/opentelemetry#usage\n// but not yet in the official OpenTelemetry specification.\nexport const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = 'gen_ai.usage.input_text_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS = 'gen_ai.usage.input_audio_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS = 'gen_ai.usage.input_cached_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS = 'gen_ai.usage.output_text_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_AUDIO_TOKENS = 'gen_ai.usage.output_audio_tokens';\n\n// OpenTelemetry GenAI event names (for structured logging)\nexport const EVENT_GEN_AI_SYSTEM_MESSAGE = 'gen_ai.system.message';\nexport const EVENT_GEN_AI_USER_MESSAGE = 'gen_ai.user.message';\nexport const EVENT_GEN_AI_ASSISTANT_MESSAGE = 'gen_ai.assistant.message';\nexport const EVENT_GEN_AI_TOOL_MESSAGE = 'gen_ai.tool.message';\nexport const EVENT_GEN_AI_CHOICE = 'gen_ai.choice';\n\n// Exception attributes\nexport const ATTR_EXCEPTION_TRACE = 'exception.stacktrace';\nexport const ATTR_EXCEPTION_TYPE = 'exception.type';\nexport const ATTR_EXCEPTION_MESSAGE = 'exception.message';\n\n// Platform-specific attributes\nexport const ATTR_LANGFUSE_COMPLETION_START_TIME = 'langfuse.observation.completion_start_time';\n\n// Adaptive Interruption attributes\nexport const ATTR_IS_INTERRUPTION = 'lk.is_interruption';\nexport const ATTR_INTERRUPTION_PROBABILITY = 'lk.interruption.probability';\nexport const ATTR_INTERRUPTION_TOTAL_DURATION = 'lk.interruption.total_duration';\nexport const ATTR_INTERRUPTION_PREDICTION_DURATION = 'lk.interruption.prediction_duration';\nexport const ATTR_INTERRUPTION_DETECTION_DELAY = 'lk.interruption.detection_delay';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKO,MAAM,iBAAiB;AACvB,MAAM,mBAAmB;AACzB,MAAM,kBAAkB;AACxB,MAAM,gBAAgB;AACtB,MAAM,mBAAmB;AAEzB,MAAM,sBAAsB;AAC5B,MAAM,4BAA4B;AAClC,MAAM,wBAAwB;AAG9B,MAAM,cAAc;AACpB,MAAM,kBAAkB;AACxB,MAAM,iBAAiB;AACvB,MAAM,uBAAuB;AAG7B,MAAM,qBAAqB;AAC3B,MAAM,4BAA4B;AAClC,MAAM,kBAAkB;AACxB,MAAM,oBAAoB;AAC1B,MAAM,0BAA0B;AAGhC,MAAM,gBAAgB;AACtB,MAAM,sBAAsB;AAC5B,MAAM,sBAAsB;AAC5B,MAAM,iBAAiB;AACvB,MAAM,qBAAqB;AAC3B,MAAM,+BAA+B;AACrC,MAAM,qBAAqB;AAG3B,MAAM,wBAAwB;AAC9B,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;AAChC,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAGlC,MAAM,sBAAsB;AAC5B,MAAM,qBAAqB;AAC3B,MAAM,iBAAiB;AACvB,MAAM,qBAAqB;AAG3B,MAAM,uBAAuB;AAC7B,MAAM,8BAA8B;AACpC,MAAM,iBAAiB;AACvB,MAAM,oBAAoB;AAC1B,MAAM,uBAAuB;AAC7B,MAAM,6BAA6B;AACnC,MAAM,2BAA2B;AACjC,MAAM,yBAAyB;AAG/B,MAAM,mBAAmB;AACzB,MAAM,mBAAmB;AACzB,MAAM,8BAA8B;AAGpC,MAAM,mBAAmB;AAIzB,MAAM,6BAA6B;AACnC,MAAM,4BAA4B;AAClC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,kCAAkC;AAKxC,MAAM,sCAAsC;AAC5C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAC9C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAG9C,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,4BAA4B;AAClC,MAAM,sBAAsB;AAG5B,MAAM,uBAAuB;AAC7B,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAG/B,MAAM,sCAAsC;AAG5C,MAAM,uBAAuB;AAC7B,MAAM,gCAAgC;AACtC,MAAM,mCAAmC;AACzC,MAAM,wCAAwC;AAC9C,MAAM,oCAAoC;","names":[]}
@@ -10,13 +10,19 @@ export declare const ATTR_JOB_ID = "lk.job_id";
10
10
  export declare const ATTR_AGENT_NAME = "lk.agent_name";
11
11
  export declare const ATTR_ROOM_NAME = "lk.room_name";
12
12
  export declare const ATTR_SESSION_OPTIONS = "lk.session_options";
13
+ export declare const ATTR_AGENT_TURN_ID = "lk.generation_id";
14
+ export declare const ATTR_AGENT_PARENT_TURN_ID = "lk.parent_generation_id";
13
15
  export declare const ATTR_USER_INPUT = "lk.user_input";
14
16
  export declare const ATTR_INSTRUCTIONS = "lk.instructions";
15
17
  export declare const ATTR_SPEECH_INTERRUPTED = "lk.interrupted";
16
18
  export declare const ATTR_CHAT_CTX = "lk.chat_ctx";
17
19
  export declare const ATTR_FUNCTION_TOOLS = "lk.function_tools";
20
+ export declare const ATTR_PROVIDER_TOOLS = "lk.provider_tools";
21
+ export declare const ATTR_TOOL_SETS = "lk.tool_sets";
18
22
  export declare const ATTR_RESPONSE_TEXT = "lk.response.text";
19
23
  export declare const ATTR_RESPONSE_FUNCTION_CALLS = "lk.response.function_calls";
24
+ export declare const ATTR_RESPONSE_TTFT = "lk.response.ttft";
25
+ export declare const ATTR_FUNCTION_TOOL_ID = "lk.function_tool.id";
20
26
  export declare const ATTR_FUNCTION_TOOL_NAME = "lk.function_tool.name";
21
27
  export declare const ATTR_FUNCTION_TOOL_ARGS = "lk.function_tool.arguments";
22
28
  export declare const ATTR_FUNCTION_TOOL_IS_ERROR = "lk.function_tool.is_error";
@@ -24,6 +30,7 @@ export declare const ATTR_FUNCTION_TOOL_OUTPUT = "lk.function_tool.output";
24
30
  export declare const ATTR_TTS_INPUT_TEXT = "lk.input_text";
25
31
  export declare const ATTR_TTS_STREAMING = "lk.tts.streaming";
26
32
  export declare const ATTR_TTS_LABEL = "lk.tts.label";
33
+ export declare const ATTR_RESPONSE_TTFB = "lk.response.ttfb";
27
34
  export declare const ATTR_EOU_PROBABILITY = "lk.eou.probability";
28
35
  export declare const ATTR_EOU_UNLIKELY_THRESHOLD = "lk.eou.unlikely_threshold";
29
36
  export declare const ATTR_EOU_DELAY = "lk.eou.endpointing_delay";
@@ -35,8 +42,10 @@ export declare const ATTR_END_OF_TURN_DELAY = "lk.end_of_turn_delay";
35
42
  export declare const ATTR_LLM_METRICS = "lk.llm_metrics";
36
43
  export declare const ATTR_TTS_METRICS = "lk.tts_metrics";
37
44
  export declare const ATTR_REALTIME_MODEL_METRICS = "lk.realtime_model_metrics";
45
+ export declare const ATTR_E2E_LATENCY = "lk.e2e_latency";
38
46
  export declare const ATTR_GEN_AI_OPERATION_NAME = "gen_ai.operation.name";
39
47
  export declare const ATTR_GEN_AI_REQUEST_MODEL = "gen_ai.request.model";
48
+ export declare const ATTR_GEN_AI_PROVIDER_NAME = "gen_ai.provider.name";
40
49
  export declare const ATTR_GEN_AI_USAGE_INPUT_TOKENS = "gen_ai.usage.input_tokens";
41
50
  export declare const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = "gen_ai.usage.output_tokens";
42
51
  export declare const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = "gen_ai.usage.input_text_tokens";
@@ -53,4 +62,9 @@ export declare const ATTR_EXCEPTION_TRACE = "exception.stacktrace";
53
62
  export declare const ATTR_EXCEPTION_TYPE = "exception.type";
54
63
  export declare const ATTR_EXCEPTION_MESSAGE = "exception.message";
55
64
  export declare const ATTR_LANGFUSE_COMPLETION_START_TIME = "langfuse.observation.completion_start_time";
65
+ export declare const ATTR_IS_INTERRUPTION = "lk.is_interruption";
66
+ export declare const ATTR_INTERRUPTION_PROBABILITY = "lk.interruption.probability";
67
+ export declare const ATTR_INTERRUPTION_TOTAL_DURATION = "lk.interruption.total_duration";
68
+ export declare const ATTR_INTERRUPTION_PREDICTION_DURATION = "lk.interruption.prediction_duration";
69
+ export declare const ATTR_INTERRUPTION_DETECTION_DELAY = "lk.interruption.detection_delay";
56
70
  //# sourceMappingURL=trace_types.d.ts.map
@@ -10,13 +10,19 @@ export declare const ATTR_JOB_ID = "lk.job_id";
10
10
  export declare const ATTR_AGENT_NAME = "lk.agent_name";
11
11
  export declare const ATTR_ROOM_NAME = "lk.room_name";
12
12
  export declare const ATTR_SESSION_OPTIONS = "lk.session_options";
13
+ export declare const ATTR_AGENT_TURN_ID = "lk.generation_id";
14
+ export declare const ATTR_AGENT_PARENT_TURN_ID = "lk.parent_generation_id";
13
15
  export declare const ATTR_USER_INPUT = "lk.user_input";
14
16
  export declare const ATTR_INSTRUCTIONS = "lk.instructions";
15
17
  export declare const ATTR_SPEECH_INTERRUPTED = "lk.interrupted";
16
18
  export declare const ATTR_CHAT_CTX = "lk.chat_ctx";
17
19
  export declare const ATTR_FUNCTION_TOOLS = "lk.function_tools";
20
+ export declare const ATTR_PROVIDER_TOOLS = "lk.provider_tools";
21
+ export declare const ATTR_TOOL_SETS = "lk.tool_sets";
18
22
  export declare const ATTR_RESPONSE_TEXT = "lk.response.text";
19
23
  export declare const ATTR_RESPONSE_FUNCTION_CALLS = "lk.response.function_calls";
24
+ export declare const ATTR_RESPONSE_TTFT = "lk.response.ttft";
25
+ export declare const ATTR_FUNCTION_TOOL_ID = "lk.function_tool.id";
20
26
  export declare const ATTR_FUNCTION_TOOL_NAME = "lk.function_tool.name";
21
27
  export declare const ATTR_FUNCTION_TOOL_ARGS = "lk.function_tool.arguments";
22
28
  export declare const ATTR_FUNCTION_TOOL_IS_ERROR = "lk.function_tool.is_error";
@@ -24,6 +30,7 @@ export declare const ATTR_FUNCTION_TOOL_OUTPUT = "lk.function_tool.output";
24
30
  export declare const ATTR_TTS_INPUT_TEXT = "lk.input_text";
25
31
  export declare const ATTR_TTS_STREAMING = "lk.tts.streaming";
26
32
  export declare const ATTR_TTS_LABEL = "lk.tts.label";
33
+ export declare const ATTR_RESPONSE_TTFB = "lk.response.ttfb";
27
34
  export declare const ATTR_EOU_PROBABILITY = "lk.eou.probability";
28
35
  export declare const ATTR_EOU_UNLIKELY_THRESHOLD = "lk.eou.unlikely_threshold";
29
36
  export declare const ATTR_EOU_DELAY = "lk.eou.endpointing_delay";
@@ -35,8 +42,10 @@ export declare const ATTR_END_OF_TURN_DELAY = "lk.end_of_turn_delay";
35
42
  export declare const ATTR_LLM_METRICS = "lk.llm_metrics";
36
43
  export declare const ATTR_TTS_METRICS = "lk.tts_metrics";
37
44
  export declare const ATTR_REALTIME_MODEL_METRICS = "lk.realtime_model_metrics";
45
+ export declare const ATTR_E2E_LATENCY = "lk.e2e_latency";
38
46
  export declare const ATTR_GEN_AI_OPERATION_NAME = "gen_ai.operation.name";
39
47
  export declare const ATTR_GEN_AI_REQUEST_MODEL = "gen_ai.request.model";
48
+ export declare const ATTR_GEN_AI_PROVIDER_NAME = "gen_ai.provider.name";
40
49
  export declare const ATTR_GEN_AI_USAGE_INPUT_TOKENS = "gen_ai.usage.input_tokens";
41
50
  export declare const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = "gen_ai.usage.output_tokens";
42
51
  export declare const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = "gen_ai.usage.input_text_tokens";
@@ -53,4 +62,9 @@ export declare const ATTR_EXCEPTION_TRACE = "exception.stacktrace";
53
62
  export declare const ATTR_EXCEPTION_TYPE = "exception.type";
54
63
  export declare const ATTR_EXCEPTION_MESSAGE = "exception.message";
55
64
  export declare const ATTR_LANGFUSE_COMPLETION_START_TIME = "langfuse.observation.completion_start_time";
65
+ export declare const ATTR_IS_INTERRUPTION = "lk.is_interruption";
66
+ export declare const ATTR_INTERRUPTION_PROBABILITY = "lk.interruption.probability";
67
+ export declare const ATTR_INTERRUPTION_TOTAL_DURATION = "lk.interruption.total_duration";
68
+ export declare const ATTR_INTERRUPTION_PREDICTION_DURATION = "lk.interruption.prediction_duration";
69
+ export declare const ATTR_INTERRUPTION_DETECTION_DELAY = "lk.interruption.detection_delay";
56
70
  //# sourceMappingURL=trace_types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"trace_types.d.ts","sourceRoot":"","sources":["../../src/telemetry/trace_types.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAC7C,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AACjD,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAC/C,eAAO,MAAM,aAAa,gBAAgB,CAAC;AAC3C,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AAEjD,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AACvD,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AACnE,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AAG3D,eAAO,MAAM,WAAW,cAAc,CAAC;AACvC,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAC/C,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAC7C,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AAGzD,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAC/C,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,eAAO,MAAM,uBAAuB,mBAAmB,CAAC;AAGxD,eAAO,MAAM,aAAa,gBAAgB,CAAC;AAC3C,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AACvD,eAAO,MAAM,kBAAkB,qBAAqB,CAAC;AACrD,eAAO,MAAM,4BAA4B,+BAA+B,CAAC;AAGzE,eAAO,MAAM,uBAAuB,0BAA0B,CAAC;AAC/D,eAAO,MAAM,uBAAuB,+BAA+B,CAAC;AACpE,eAAO,MAAM,2BAA2B,8BAA8B,CAAC;AACvE,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AAGnE,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AACnD,eAAO,MAAM,kBAAkB,qBAAqB,CAAC;AACrD,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAG7C,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,eAAO,MAAM,2BAA2B,8BAA8B,CAAC;AACvE,eAAO,MAAM,cAAc,6BAA6B,CAAC;AACzD,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,eAAO,MAAM,0BAA0B,6BAA6B,CAAC;AACrE,eAAO,MAAM,wBAAwB,2BAA2B,CAAC;AACjE,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAG7D,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AACjD,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AACjD,eAAO,MAAM,2BAA2B,8BAA8B,CAAC;AAIvE,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAClE,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAChE,eAAO,MAAM,8BAA8B,8BAA8B,CAAC;AAC1E,eAAO,MAAM,+BAA+B,+BAA+B,CAAC;AAK5E,eAAO,MAAM,mCAAmC,mCAAmC,CAAC;AACpF,eAAO,MAAM,oCAAoC,oCAAoC,CAAC;AACtF,eAAO,MAAM,qCAAqC,qCAAqC,CAAC;AACxF,eAAO,MAAM,oCAAoC,oCAAoC,CAAC;AACtF,eAAO,MAAM,qCAAqC,qCAAqC,CAAC;AAGxF,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,8BAA8B,6BAA6B,CAAC;AACzE,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AAGnD,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AACpD,eAAO,MAAM,sBAAsB,sBAAsB,CAAC;AAG1D,eAAO,MAAM,mCAAmC,+CAA+C,CAAC"}
1
+ {"version":3,"file":"trace_types.d.ts","sourceRoot":"","sources":["../../src/telemetry/trace_types.ts"],"names":[],"mappings":"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"}
@@ -10,13 +10,19 @@ const ATTR_JOB_ID = "lk.job_id";
10
10
  const ATTR_AGENT_NAME = "lk.agent_name";
11
11
  const ATTR_ROOM_NAME = "lk.room_name";
12
12
  const ATTR_SESSION_OPTIONS = "lk.session_options";
13
+ const ATTR_AGENT_TURN_ID = "lk.generation_id";
14
+ const ATTR_AGENT_PARENT_TURN_ID = "lk.parent_generation_id";
13
15
  const ATTR_USER_INPUT = "lk.user_input";
14
16
  const ATTR_INSTRUCTIONS = "lk.instructions";
15
17
  const ATTR_SPEECH_INTERRUPTED = "lk.interrupted";
16
18
  const ATTR_CHAT_CTX = "lk.chat_ctx";
17
19
  const ATTR_FUNCTION_TOOLS = "lk.function_tools";
20
+ const ATTR_PROVIDER_TOOLS = "lk.provider_tools";
21
+ const ATTR_TOOL_SETS = "lk.tool_sets";
18
22
  const ATTR_RESPONSE_TEXT = "lk.response.text";
19
23
  const ATTR_RESPONSE_FUNCTION_CALLS = "lk.response.function_calls";
24
+ const ATTR_RESPONSE_TTFT = "lk.response.ttft";
25
+ const ATTR_FUNCTION_TOOL_ID = "lk.function_tool.id";
20
26
  const ATTR_FUNCTION_TOOL_NAME = "lk.function_tool.name";
21
27
  const ATTR_FUNCTION_TOOL_ARGS = "lk.function_tool.arguments";
22
28
  const ATTR_FUNCTION_TOOL_IS_ERROR = "lk.function_tool.is_error";
@@ -24,6 +30,7 @@ const ATTR_FUNCTION_TOOL_OUTPUT = "lk.function_tool.output";
24
30
  const ATTR_TTS_INPUT_TEXT = "lk.input_text";
25
31
  const ATTR_TTS_STREAMING = "lk.tts.streaming";
26
32
  const ATTR_TTS_LABEL = "lk.tts.label";
33
+ const ATTR_RESPONSE_TTFB = "lk.response.ttfb";
27
34
  const ATTR_EOU_PROBABILITY = "lk.eou.probability";
28
35
  const ATTR_EOU_UNLIKELY_THRESHOLD = "lk.eou.unlikely_threshold";
29
36
  const ATTR_EOU_DELAY = "lk.eou.endpointing_delay";
@@ -35,8 +42,10 @@ const ATTR_END_OF_TURN_DELAY = "lk.end_of_turn_delay";
35
42
  const ATTR_LLM_METRICS = "lk.llm_metrics";
36
43
  const ATTR_TTS_METRICS = "lk.tts_metrics";
37
44
  const ATTR_REALTIME_MODEL_METRICS = "lk.realtime_model_metrics";
45
+ const ATTR_E2E_LATENCY = "lk.e2e_latency";
38
46
  const ATTR_GEN_AI_OPERATION_NAME = "gen_ai.operation.name";
39
47
  const ATTR_GEN_AI_REQUEST_MODEL = "gen_ai.request.model";
48
+ const ATTR_GEN_AI_PROVIDER_NAME = "gen_ai.provider.name";
40
49
  const ATTR_GEN_AI_USAGE_INPUT_TOKENS = "gen_ai.usage.input_tokens";
41
50
  const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = "gen_ai.usage.output_tokens";
42
51
  const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = "gen_ai.usage.input_text_tokens";
@@ -53,10 +62,18 @@ const ATTR_EXCEPTION_TRACE = "exception.stacktrace";
53
62
  const ATTR_EXCEPTION_TYPE = "exception.type";
54
63
  const ATTR_EXCEPTION_MESSAGE = "exception.message";
55
64
  const ATTR_LANGFUSE_COMPLETION_START_TIME = "langfuse.observation.completion_start_time";
65
+ const ATTR_IS_INTERRUPTION = "lk.is_interruption";
66
+ const ATTR_INTERRUPTION_PROBABILITY = "lk.interruption.probability";
67
+ const ATTR_INTERRUPTION_TOTAL_DURATION = "lk.interruption.total_duration";
68
+ const ATTR_INTERRUPTION_PREDICTION_DURATION = "lk.interruption.prediction_duration";
69
+ const ATTR_INTERRUPTION_DETECTION_DELAY = "lk.interruption.detection_delay";
56
70
  export {
57
71
  ATTR_AGENT_LABEL,
58
72
  ATTR_AGENT_NAME,
73
+ ATTR_AGENT_PARENT_TURN_ID,
74
+ ATTR_AGENT_TURN_ID,
59
75
  ATTR_CHAT_CTX,
76
+ ATTR_E2E_LATENCY,
60
77
  ATTR_END_OF_TURN_DELAY,
61
78
  ATTR_END_TIME,
62
79
  ATTR_EOU_DELAY,
@@ -68,10 +85,12 @@ export {
68
85
  ATTR_EXCEPTION_TYPE,
69
86
  ATTR_FUNCTION_TOOLS,
70
87
  ATTR_FUNCTION_TOOL_ARGS,
88
+ ATTR_FUNCTION_TOOL_ID,
71
89
  ATTR_FUNCTION_TOOL_IS_ERROR,
72
90
  ATTR_FUNCTION_TOOL_NAME,
73
91
  ATTR_FUNCTION_TOOL_OUTPUT,
74
92
  ATTR_GEN_AI_OPERATION_NAME,
93
+ ATTR_GEN_AI_PROVIDER_NAME,
75
94
  ATTR_GEN_AI_REQUEST_MODEL,
76
95
  ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS,
77
96
  ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS,
@@ -81,21 +100,30 @@ export {
81
100
  ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS,
82
101
  ATTR_GEN_AI_USAGE_OUTPUT_TOKENS,
83
102
  ATTR_INSTRUCTIONS,
103
+ ATTR_INTERRUPTION_DETECTION_DELAY,
104
+ ATTR_INTERRUPTION_PREDICTION_DURATION,
105
+ ATTR_INTERRUPTION_PROBABILITY,
106
+ ATTR_INTERRUPTION_TOTAL_DURATION,
107
+ ATTR_IS_INTERRUPTION,
84
108
  ATTR_JOB_ID,
85
109
  ATTR_LANGFUSE_COMPLETION_START_TIME,
86
110
  ATTR_LLM_METRICS,
87
111
  ATTR_PARTICIPANT_ID,
88
112
  ATTR_PARTICIPANT_IDENTITY,
89
113
  ATTR_PARTICIPANT_KIND,
114
+ ATTR_PROVIDER_TOOLS,
90
115
  ATTR_REALTIME_MODEL_METRICS,
91
116
  ATTR_RESPONSE_FUNCTION_CALLS,
92
117
  ATTR_RESPONSE_TEXT,
118
+ ATTR_RESPONSE_TTFB,
119
+ ATTR_RESPONSE_TTFT,
93
120
  ATTR_RETRY_COUNT,
94
121
  ATTR_ROOM_NAME,
95
122
  ATTR_SESSION_OPTIONS,
96
123
  ATTR_SPEECH_ID,
97
124
  ATTR_SPEECH_INTERRUPTED,
98
125
  ATTR_START_TIME,
126
+ ATTR_TOOL_SETS,
99
127
  ATTR_TRANSCRIPTION_DELAY,
100
128
  ATTR_TRANSCRIPT_CONFIDENCE,
101
129
  ATTR_TTS_INPUT_TEXT,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/telemetry/trace_types.ts"],"sourcesContent":["// SPDX-FileCopyrightText: 2025 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// LiveKit custom attributes\nexport const ATTR_SPEECH_ID = 'lk.speech_id';\nexport const ATTR_AGENT_LABEL = 'lk.agent_label';\nexport const ATTR_START_TIME = 'lk.start_time';\nexport const ATTR_END_TIME = 'lk.end_time';\nexport const ATTR_RETRY_COUNT = 'lk.retry_count';\n\nexport const ATTR_PARTICIPANT_ID = 'lk.participant_id';\nexport const ATTR_PARTICIPANT_IDENTITY = 'lk.participant_identity';\nexport const ATTR_PARTICIPANT_KIND = 'lk.participant_kind';\n\n// session start\nexport const ATTR_JOB_ID = 'lk.job_id';\nexport const ATTR_AGENT_NAME = 'lk.agent_name';\nexport const ATTR_ROOM_NAME = 'lk.room_name';\nexport const ATTR_SESSION_OPTIONS = 'lk.session_options';\n\n// assistant turn\nexport const ATTR_USER_INPUT = 'lk.user_input';\nexport const ATTR_INSTRUCTIONS = 'lk.instructions';\nexport const ATTR_SPEECH_INTERRUPTED = 'lk.interrupted';\n\n// llm node\nexport const ATTR_CHAT_CTX = 'lk.chat_ctx';\nexport const ATTR_FUNCTION_TOOLS = 'lk.function_tools';\nexport const ATTR_RESPONSE_TEXT = 'lk.response.text';\nexport const ATTR_RESPONSE_FUNCTION_CALLS = 'lk.response.function_calls';\n\n// function tool\nexport const ATTR_FUNCTION_TOOL_NAME = 'lk.function_tool.name';\nexport const ATTR_FUNCTION_TOOL_ARGS = 'lk.function_tool.arguments';\nexport const ATTR_FUNCTION_TOOL_IS_ERROR = 'lk.function_tool.is_error';\nexport const ATTR_FUNCTION_TOOL_OUTPUT = 'lk.function_tool.output';\n\n// tts node\nexport const ATTR_TTS_INPUT_TEXT = 'lk.input_text';\nexport const ATTR_TTS_STREAMING = 'lk.tts.streaming';\nexport const ATTR_TTS_LABEL = 'lk.tts.label';\n\n// eou detection\nexport const ATTR_EOU_PROBABILITY = 'lk.eou.probability';\nexport const ATTR_EOU_UNLIKELY_THRESHOLD = 'lk.eou.unlikely_threshold';\nexport const ATTR_EOU_DELAY = 'lk.eou.endpointing_delay';\nexport const ATTR_EOU_LANGUAGE = 'lk.eou.language';\nexport const ATTR_USER_TRANSCRIPT = 'lk.user_transcript';\nexport const ATTR_TRANSCRIPT_CONFIDENCE = 'lk.transcript_confidence';\nexport const ATTR_TRANSCRIPTION_DELAY = 'lk.transcription_delay';\nexport const ATTR_END_OF_TURN_DELAY = 'lk.end_of_turn_delay';\n\n// metrics\nexport const ATTR_LLM_METRICS = 'lk.llm_metrics';\nexport const ATTR_TTS_METRICS = 'lk.tts_metrics';\nexport const ATTR_REALTIME_MODEL_METRICS = 'lk.realtime_model_metrics';\n\n// OpenTelemetry GenAI attributes\n// OpenTelemetry specification: https://opentelemetry.io/docs/specs/semconv/registry/attributes/gen-ai/\nexport const ATTR_GEN_AI_OPERATION_NAME = 'gen_ai.operation.name';\nexport const ATTR_GEN_AI_REQUEST_MODEL = 'gen_ai.request.model';\nexport const ATTR_GEN_AI_USAGE_INPUT_TOKENS = 'gen_ai.usage.input_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = 'gen_ai.usage.output_tokens';\n\n// Unofficial OpenTelemetry GenAI attributes, recognized by LangFuse\n// https://langfuse.com/integrations/native/opentelemetry#usage\n// but not yet in the official OpenTelemetry specification.\nexport const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = 'gen_ai.usage.input_text_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS = 'gen_ai.usage.input_audio_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS = 'gen_ai.usage.input_cached_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS = 'gen_ai.usage.output_text_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_AUDIO_TOKENS = 'gen_ai.usage.output_audio_tokens';\n\n// OpenTelemetry GenAI event names (for structured logging)\nexport const EVENT_GEN_AI_SYSTEM_MESSAGE = 'gen_ai.system.message';\nexport const EVENT_GEN_AI_USER_MESSAGE = 'gen_ai.user.message';\nexport const EVENT_GEN_AI_ASSISTANT_MESSAGE = 'gen_ai.assistant.message';\nexport const EVENT_GEN_AI_TOOL_MESSAGE = 'gen_ai.tool.message';\nexport const EVENT_GEN_AI_CHOICE = 'gen_ai.choice';\n\n// Exception attributes\nexport const ATTR_EXCEPTION_TRACE = 'exception.stacktrace';\nexport const ATTR_EXCEPTION_TYPE = 'exception.type';\nexport const ATTR_EXCEPTION_MESSAGE = 'exception.message';\n\n// Platform-specific attributes\nexport const ATTR_LANGFUSE_COMPLETION_START_TIME = 'langfuse.observation.completion_start_time';\n"],"mappings":"AAKO,MAAM,iBAAiB;AACvB,MAAM,mBAAmB;AACzB,MAAM,kBAAkB;AACxB,MAAM,gBAAgB;AACtB,MAAM,mBAAmB;AAEzB,MAAM,sBAAsB;AAC5B,MAAM,4BAA4B;AAClC,MAAM,wBAAwB;AAG9B,MAAM,cAAc;AACpB,MAAM,kBAAkB;AACxB,MAAM,iBAAiB;AACvB,MAAM,uBAAuB;AAG7B,MAAM,kBAAkB;AACxB,MAAM,oBAAoB;AAC1B,MAAM,0BAA0B;AAGhC,MAAM,gBAAgB;AACtB,MAAM,sBAAsB;AAC5B,MAAM,qBAAqB;AAC3B,MAAM,+BAA+B;AAGrC,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;AAChC,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAGlC,MAAM,sBAAsB;AAC5B,MAAM,qBAAqB;AAC3B,MAAM,iBAAiB;AAGvB,MAAM,uBAAuB;AAC7B,MAAM,8BAA8B;AACpC,MAAM,iBAAiB;AACvB,MAAM,oBAAoB;AAC1B,MAAM,uBAAuB;AAC7B,MAAM,6BAA6B;AACnC,MAAM,2BAA2B;AACjC,MAAM,yBAAyB;AAG/B,MAAM,mBAAmB;AACzB,MAAM,mBAAmB;AACzB,MAAM,8BAA8B;AAIpC,MAAM,6BAA6B;AACnC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,kCAAkC;AAKxC,MAAM,sCAAsC;AAC5C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAC9C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAG9C,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,4BAA4B;AAClC,MAAM,sBAAsB;AAG5B,MAAM,uBAAuB;AAC7B,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAG/B,MAAM,sCAAsC;","names":[]}
1
+ {"version":3,"sources":["../../src/telemetry/trace_types.ts"],"sourcesContent":["// SPDX-FileCopyrightText: 2025 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\n\n// LiveKit custom attributes\nexport const ATTR_SPEECH_ID = 'lk.speech_id';\nexport const ATTR_AGENT_LABEL = 'lk.agent_label';\nexport const ATTR_START_TIME = 'lk.start_time';\nexport const ATTR_END_TIME = 'lk.end_time';\nexport const ATTR_RETRY_COUNT = 'lk.retry_count';\n\nexport const ATTR_PARTICIPANT_ID = 'lk.participant_id';\nexport const ATTR_PARTICIPANT_IDENTITY = 'lk.participant_identity';\nexport const ATTR_PARTICIPANT_KIND = 'lk.participant_kind';\n\n// session start\nexport const ATTR_JOB_ID = 'lk.job_id';\nexport const ATTR_AGENT_NAME = 'lk.agent_name';\nexport const ATTR_ROOM_NAME = 'lk.room_name';\nexport const ATTR_SESSION_OPTIONS = 'lk.session_options';\n\n// assistant turn\nexport const ATTR_AGENT_TURN_ID = 'lk.generation_id';\nexport const ATTR_AGENT_PARENT_TURN_ID = 'lk.parent_generation_id';\nexport const ATTR_USER_INPUT = 'lk.user_input';\nexport const ATTR_INSTRUCTIONS = 'lk.instructions';\nexport const ATTR_SPEECH_INTERRUPTED = 'lk.interrupted';\n\n// llm node\nexport const ATTR_CHAT_CTX = 'lk.chat_ctx';\nexport const ATTR_FUNCTION_TOOLS = 'lk.function_tools';\nexport const ATTR_PROVIDER_TOOLS = 'lk.provider_tools';\nexport const ATTR_TOOL_SETS = 'lk.tool_sets';\nexport const ATTR_RESPONSE_TEXT = 'lk.response.text';\nexport const ATTR_RESPONSE_FUNCTION_CALLS = 'lk.response.function_calls';\nexport const ATTR_RESPONSE_TTFT = 'lk.response.ttft';\n\n// function tool\nexport const ATTR_FUNCTION_TOOL_ID = 'lk.function_tool.id';\nexport const ATTR_FUNCTION_TOOL_NAME = 'lk.function_tool.name';\nexport const ATTR_FUNCTION_TOOL_ARGS = 'lk.function_tool.arguments';\nexport const ATTR_FUNCTION_TOOL_IS_ERROR = 'lk.function_tool.is_error';\nexport const ATTR_FUNCTION_TOOL_OUTPUT = 'lk.function_tool.output';\n\n// tts node\nexport const ATTR_TTS_INPUT_TEXT = 'lk.input_text';\nexport const ATTR_TTS_STREAMING = 'lk.tts.streaming';\nexport const ATTR_TTS_LABEL = 'lk.tts.label';\nexport const ATTR_RESPONSE_TTFB = 'lk.response.ttfb';\n\n// eou detection\nexport const ATTR_EOU_PROBABILITY = 'lk.eou.probability';\nexport const ATTR_EOU_UNLIKELY_THRESHOLD = 'lk.eou.unlikely_threshold';\nexport const ATTR_EOU_DELAY = 'lk.eou.endpointing_delay';\nexport const ATTR_EOU_LANGUAGE = 'lk.eou.language';\nexport const ATTR_USER_TRANSCRIPT = 'lk.user_transcript';\nexport const ATTR_TRANSCRIPT_CONFIDENCE = 'lk.transcript_confidence';\nexport const ATTR_TRANSCRIPTION_DELAY = 'lk.transcription_delay';\nexport const ATTR_END_OF_TURN_DELAY = 'lk.end_of_turn_delay';\n\n// metrics\nexport const ATTR_LLM_METRICS = 'lk.llm_metrics';\nexport const ATTR_TTS_METRICS = 'lk.tts_metrics';\nexport const ATTR_REALTIME_MODEL_METRICS = 'lk.realtime_model_metrics';\n\n// latency span attributes\nexport const ATTR_E2E_LATENCY = 'lk.e2e_latency';\n\n// OpenTelemetry GenAI attributes\n// OpenTelemetry specification: https://opentelemetry.io/docs/specs/semconv/registry/attributes/gen-ai/\nexport const ATTR_GEN_AI_OPERATION_NAME = 'gen_ai.operation.name';\nexport const ATTR_GEN_AI_REQUEST_MODEL = 'gen_ai.request.model';\nexport const ATTR_GEN_AI_PROVIDER_NAME = 'gen_ai.provider.name';\nexport const ATTR_GEN_AI_USAGE_INPUT_TOKENS = 'gen_ai.usage.input_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TOKENS = 'gen_ai.usage.output_tokens';\n\n// Unofficial OpenTelemetry GenAI attributes, recognized by LangFuse\n// https://langfuse.com/integrations/native/opentelemetry#usage\n// but not yet in the official OpenTelemetry specification.\nexport const ATTR_GEN_AI_USAGE_INPUT_TEXT_TOKENS = 'gen_ai.usage.input_text_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_AUDIO_TOKENS = 'gen_ai.usage.input_audio_tokens';\nexport const ATTR_GEN_AI_USAGE_INPUT_CACHED_TOKENS = 'gen_ai.usage.input_cached_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_TEXT_TOKENS = 'gen_ai.usage.output_text_tokens';\nexport const ATTR_GEN_AI_USAGE_OUTPUT_AUDIO_TOKENS = 'gen_ai.usage.output_audio_tokens';\n\n// OpenTelemetry GenAI event names (for structured logging)\nexport const EVENT_GEN_AI_SYSTEM_MESSAGE = 'gen_ai.system.message';\nexport const EVENT_GEN_AI_USER_MESSAGE = 'gen_ai.user.message';\nexport const EVENT_GEN_AI_ASSISTANT_MESSAGE = 'gen_ai.assistant.message';\nexport const EVENT_GEN_AI_TOOL_MESSAGE = 'gen_ai.tool.message';\nexport const EVENT_GEN_AI_CHOICE = 'gen_ai.choice';\n\n// Exception attributes\nexport const ATTR_EXCEPTION_TRACE = 'exception.stacktrace';\nexport const ATTR_EXCEPTION_TYPE = 'exception.type';\nexport const ATTR_EXCEPTION_MESSAGE = 'exception.message';\n\n// Platform-specific attributes\nexport const ATTR_LANGFUSE_COMPLETION_START_TIME = 'langfuse.observation.completion_start_time';\n\n// Adaptive Interruption attributes\nexport const ATTR_IS_INTERRUPTION = 'lk.is_interruption';\nexport const ATTR_INTERRUPTION_PROBABILITY = 'lk.interruption.probability';\nexport const ATTR_INTERRUPTION_TOTAL_DURATION = 'lk.interruption.total_duration';\nexport const ATTR_INTERRUPTION_PREDICTION_DURATION = 'lk.interruption.prediction_duration';\nexport const ATTR_INTERRUPTION_DETECTION_DELAY = 'lk.interruption.detection_delay';\n"],"mappings":"AAKO,MAAM,iBAAiB;AACvB,MAAM,mBAAmB;AACzB,MAAM,kBAAkB;AACxB,MAAM,gBAAgB;AACtB,MAAM,mBAAmB;AAEzB,MAAM,sBAAsB;AAC5B,MAAM,4BAA4B;AAClC,MAAM,wBAAwB;AAG9B,MAAM,cAAc;AACpB,MAAM,kBAAkB;AACxB,MAAM,iBAAiB;AACvB,MAAM,uBAAuB;AAG7B,MAAM,qBAAqB;AAC3B,MAAM,4BAA4B;AAClC,MAAM,kBAAkB;AACxB,MAAM,oBAAoB;AAC1B,MAAM,0BAA0B;AAGhC,MAAM,gBAAgB;AACtB,MAAM,sBAAsB;AAC5B,MAAM,sBAAsB;AAC5B,MAAM,iBAAiB;AACvB,MAAM,qBAAqB;AAC3B,MAAM,+BAA+B;AACrC,MAAM,qBAAqB;AAG3B,MAAM,wBAAwB;AAC9B,MAAM,0BAA0B;AAChC,MAAM,0BAA0B;AAChC,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAGlC,MAAM,sBAAsB;AAC5B,MAAM,qBAAqB;AAC3B,MAAM,iBAAiB;AACvB,MAAM,qBAAqB;AAG3B,MAAM,uBAAuB;AAC7B,MAAM,8BAA8B;AACpC,MAAM,iBAAiB;AACvB,MAAM,oBAAoB;AAC1B,MAAM,uBAAuB;AAC7B,MAAM,6BAA6B;AACnC,MAAM,2BAA2B;AACjC,MAAM,yBAAyB;AAG/B,MAAM,mBAAmB;AACzB,MAAM,mBAAmB;AACzB,MAAM,8BAA8B;AAGpC,MAAM,mBAAmB;AAIzB,MAAM,6BAA6B;AACnC,MAAM,4BAA4B;AAClC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,kCAAkC;AAKxC,MAAM,sCAAsC;AAC5C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAC9C,MAAM,uCAAuC;AAC7C,MAAM,wCAAwC;AAG9C,MAAM,8BAA8B;AACpC,MAAM,4BAA4B;AAClC,MAAM,iCAAiC;AACvC,MAAM,4BAA4B;AAClC,MAAM,sBAAsB;AAG5B,MAAM,uBAAuB;AAC7B,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAG/B,MAAM,sCAAsC;AAG5C,MAAM,uBAAuB;AAC7B,MAAM,gCAAgC;AACtC,MAAM,mCAAmC;AACzC,MAAM,wCAAwC;AAC9C,MAAM,oCAAoC;","names":[]}