qtype 0.1.11__py3-none-any.whl → 0.1.12__py3-none-any.whl

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 (215) hide show
  1. docs/Concepts/mental-model-and-philosophy.md +363 -0
  2. docs/Contributing/index.md +276 -0
  3. docs/Contributing/roadmap.md +81 -0
  4. docs/Decisions/ADR-001-Chat-vs-Completion-Endpoint-Features.md +56 -0
  5. docs/Gallery/dataflow_pipelines.md +80 -0
  6. docs/Gallery/dataflow_pipelines.mermaid +45 -0
  7. docs/Gallery/research_assistant.md +98 -0
  8. docs/Gallery/research_assistant.mermaid +42 -0
  9. docs/Gallery/simple_chatbot.md +36 -0
  10. docs/Gallery/simple_chatbot.mermaid +35 -0
  11. docs/How To/Authentication/configure_aws_authentication.md +60 -0
  12. docs/How To/Authentication/use_api_key_authentication.md +40 -0
  13. docs/How To/Command Line Usage/load_multiple_inputs_from_files.md +62 -0
  14. docs/How To/Command Line Usage/pass_inputs_on_the_cli.md +52 -0
  15. docs/How To/Command Line Usage/serve_with_auto_reload.md +26 -0
  16. docs/How To/Data Processing/adjust_concurrency.md +41 -0
  17. docs/How To/Data Processing/cache_step_results.md +71 -0
  18. docs/How To/Data Processing/decode_json_xml.md +24 -0
  19. docs/How To/Data Processing/explode_collections.md +40 -0
  20. docs/How To/Data Processing/gather_results.md +68 -0
  21. docs/How To/Data Processing/read_data_from_files.md +35 -0
  22. docs/How To/Data Processing/read_sql_databases.md +47 -0
  23. docs/How To/Data Processing/write_data_to_file.md +40 -0
  24. docs/How To/Invoke Models/call_large_language_models.md +51 -0
  25. docs/How To/Invoke Models/create_embeddings.md +49 -0
  26. docs/How To/Invoke Models/reuse_prompts_with_templates.md +39 -0
  27. docs/How To/Language Features/include_qtype_yaml.md +45 -0
  28. docs/How To/Language Features/include_raw_text_from_other_files.md +47 -0
  29. docs/How To/Language Features/reference_entities_by_id.md +51 -0
  30. docs/How To/Language Features/use_environment_variables.md +47 -0
  31. docs/How To/Language Features/use_qtype_mcp.md +59 -0
  32. docs/How To/Observability & Debugging/trace_calls_with_open_telemetry.md +49 -0
  33. docs/How To/Observability & Debugging/validate_qtype_yaml.md +35 -0
  34. docs/How To/Observability & Debugging/visualize_application_architecture.md +61 -0
  35. docs/How To/Observability & Debugging/visualize_example.mermaid +35 -0
  36. docs/How To/Qtype Server/flow_as_ui.png +0 -0
  37. docs/How To/Qtype Server/serve_flows_as_apis.md +40 -0
  38. docs/How To/Qtype Server/serve_flows_as_ui.md +42 -0
  39. docs/How To/Qtype Server/use_conversational_interfaces.md +59 -0
  40. docs/How To/Qtype Server/use_variables_with_ui_hints.md +47 -0
  41. docs/How To/Tools & Integration/bind_tool_inputs_and_outputs.md +48 -0
  42. docs/How To/Tools & Integration/create_tools_from_openapi_specifications.md +89 -0
  43. docs/How To/Tools & Integration/create_tools_from_python_modules.md +90 -0
  44. docs/Reference/cli.md +338 -0
  45. docs/Reference/plugins.md +95 -0
  46. docs/Reference/semantic-validation-rules.md +179 -0
  47. docs/Tutorials/01-first-qtype-application.md +248 -0
  48. docs/Tutorials/02-conversational-chatbot.md +327 -0
  49. docs/Tutorials/03-structured-data.md +481 -0
  50. docs/Tutorials/04-tools-and-function-calling.md +483 -0
  51. docs/Tutorials/example_chat.png +0 -0
  52. docs/Tutorials/index.md +92 -0
  53. docs/components/APIKeyAuthProvider.md +7 -0
  54. docs/components/APITool.md +10 -0
  55. docs/components/AWSAuthProvider.md +13 -0
  56. docs/components/AWSSecretManager.md +5 -0
  57. docs/components/Agent.md +6 -0
  58. docs/components/Aggregate.md +8 -0
  59. docs/components/AggregateStats.md +7 -0
  60. docs/components/Application.md +22 -0
  61. docs/components/AuthorizationProvider.md +6 -0
  62. docs/components/AuthorizationProviderList.md +5 -0
  63. docs/components/BearerTokenAuthProvider.md +6 -0
  64. docs/components/BedrockReranker.md +8 -0
  65. docs/components/ChatContent.md +7 -0
  66. docs/components/ChatMessage.md +6 -0
  67. docs/components/ConstantPath.md +5 -0
  68. docs/components/CustomType.md +7 -0
  69. docs/components/Decoder.md +8 -0
  70. docs/components/DecoderFormat.md +8 -0
  71. docs/components/DocToTextConverter.md +7 -0
  72. docs/components/Document.md +7 -0
  73. docs/components/DocumentEmbedder.md +7 -0
  74. docs/components/DocumentIndex.md +7 -0
  75. docs/components/DocumentSearch.md +7 -0
  76. docs/components/DocumentSource.md +12 -0
  77. docs/components/DocumentSplitter.md +10 -0
  78. docs/components/Echo.md +8 -0
  79. docs/components/Embedding.md +7 -0
  80. docs/components/EmbeddingModel.md +6 -0
  81. docs/components/FieldExtractor.md +20 -0
  82. docs/components/FileSource.md +6 -0
  83. docs/components/FileWriter.md +7 -0
  84. docs/components/Flow.md +14 -0
  85. docs/components/FlowInterface.md +7 -0
  86. docs/components/Index.md +8 -0
  87. docs/components/IndexUpsert.md +6 -0
  88. docs/components/InvokeEmbedding.md +7 -0
  89. docs/components/InvokeFlow.md +8 -0
  90. docs/components/InvokeTool.md +8 -0
  91. docs/components/LLMInference.md +9 -0
  92. docs/components/ListType.md +5 -0
  93. docs/components/Memory.md +8 -0
  94. docs/components/MessageRole.md +14 -0
  95. docs/components/Model.md +10 -0
  96. docs/components/ModelList.md +5 -0
  97. docs/components/OAuth2AuthProvider.md +9 -0
  98. docs/components/PrimitiveTypeEnum.md +21 -0
  99. docs/components/PromptTemplate.md +7 -0
  100. docs/components/PythonFunctionTool.md +7 -0
  101. docs/components/RAGChunk.md +7 -0
  102. docs/components/RAGDocument.md +10 -0
  103. docs/components/RAGSearchResult.md +8 -0
  104. docs/components/Reranker.md +5 -0
  105. docs/components/SQLSource.md +8 -0
  106. docs/components/Search.md +7 -0
  107. docs/components/SearchResult.md +7 -0
  108. docs/components/SecretManager.md +7 -0
  109. docs/components/SecretReference.md +7 -0
  110. docs/components/Source.md +6 -0
  111. docs/components/Step.md +9 -0
  112. docs/components/TelemetrySink.md +9 -0
  113. docs/components/Tool.md +9 -0
  114. docs/components/ToolList.md +5 -0
  115. docs/components/ToolParameter.md +6 -0
  116. docs/components/TypeList.md +5 -0
  117. docs/components/Variable.md +6 -0
  118. docs/components/VariableList.md +5 -0
  119. docs/components/VectorIndex.md +7 -0
  120. docs/components/VectorSearch.md +6 -0
  121. docs/components/VertexAuthProvider.md +9 -0
  122. docs/components/Writer.md +5 -0
  123. docs/example_ui.png +0 -0
  124. docs/index.md +81 -0
  125. docs/legacy_how_tos/Configuration/modular-yaml.md +366 -0
  126. docs/legacy_how_tos/Configuration/phoenix_projects.png +0 -0
  127. docs/legacy_how_tos/Configuration/phoenix_traces.png +0 -0
  128. docs/legacy_how_tos/Configuration/reference-by-id.md +251 -0
  129. docs/legacy_how_tos/Configuration/telemetry-setup.md +259 -0
  130. docs/legacy_how_tos/Data Types/custom-types.md +52 -0
  131. docs/legacy_how_tos/Data Types/domain-types.md +113 -0
  132. docs/legacy_how_tos/Debugging/visualize-apps.md +147 -0
  133. docs/legacy_how_tos/Tools/api-tools.md +29 -0
  134. docs/legacy_how_tos/Tools/python-tools.md +299 -0
  135. examples/authentication/aws_authentication.qtype.yaml +63 -0
  136. examples/conversational_ai/hello_world_chat.qtype.yaml +43 -0
  137. examples/conversational_ai/simple_chatbot.qtype.yaml +40 -0
  138. examples/data_processing/batch_processing.qtype.yaml +54 -0
  139. examples/data_processing/cache_step_results.qtype.yaml +78 -0
  140. examples/data_processing/collect_results.qtype.yaml +55 -0
  141. examples/data_processing/dataflow_pipelines.qtype.yaml +108 -0
  142. examples/data_processing/decode_json.qtype.yaml +23 -0
  143. examples/data_processing/explode_items.qtype.yaml +25 -0
  144. examples/data_processing/read_file.qtype.yaml +60 -0
  145. examples/invoke_models/create_embeddings.qtype.yaml +28 -0
  146. examples/invoke_models/simple_llm_call.qtype.yaml +32 -0
  147. examples/language_features/include_raw.qtype.yaml +27 -0
  148. examples/language_features/ui_hints.qtype.yaml +52 -0
  149. examples/legacy/bedrock/data_analysis_with_telemetry.qtype.yaml +169 -0
  150. examples/legacy/bedrock/hello_world.qtype.yaml +39 -0
  151. examples/legacy/bedrock/hello_world_chat.qtype.yaml +37 -0
  152. examples/legacy/bedrock/hello_world_chat_with_telemetry.qtype.yaml +40 -0
  153. examples/legacy/bedrock/hello_world_chat_with_thinking.qtype.yaml +40 -0
  154. examples/legacy/bedrock/hello_world_completion.qtype.yaml +41 -0
  155. examples/legacy/bedrock/hello_world_completion_with_auth.qtype.yaml +44 -0
  156. examples/legacy/bedrock/simple_agent_chat.qtype.yaml +46 -0
  157. examples/legacy/chat_with_langfuse.qtype.yaml +50 -0
  158. examples/legacy/data_processor.qtype.yaml +48 -0
  159. examples/legacy/echo/debug_example.qtype.yaml +59 -0
  160. examples/legacy/echo/prompt.qtype.yaml +22 -0
  161. examples/legacy/echo/test.qtype.yaml +26 -0
  162. examples/legacy/echo/video.qtype.yaml +20 -0
  163. examples/legacy/field_extractor_example.qtype.yaml +137 -0
  164. examples/legacy/multi_flow_example.qtype.yaml +125 -0
  165. examples/legacy/openai/hello_world_chat.qtype.yaml +43 -0
  166. examples/legacy/openai/hello_world_chat_with_telemetry.qtype.yaml +46 -0
  167. examples/legacy/rag.qtype.yaml +207 -0
  168. examples/legacy/time_utilities.qtype.yaml +64 -0
  169. examples/legacy/vertex/hello_world_chat.qtype.yaml +36 -0
  170. examples/legacy/vertex/hello_world_completion.qtype.yaml +40 -0
  171. examples/legacy/vertex/hello_world_completion_with_auth.qtype.yaml +45 -0
  172. examples/observability_debugging/trace_with_opentelemetry.qtype.yaml +40 -0
  173. examples/research_assistant/research_assistant.qtype.yaml +94 -0
  174. examples/research_assistant/tavily.oas.yaml +722 -0
  175. examples/research_assistant/tavily.qtype.yaml +289 -0
  176. examples/tutorials/01_hello_world.qtype.yaml +48 -0
  177. examples/tutorials/02_conversational_chat.qtype.yaml +37 -0
  178. examples/tutorials/03_structured_data.qtype.yaml +130 -0
  179. examples/tutorials/04_tools_and_function_calling.qtype.yaml +89 -0
  180. qtype/application/converters/tools_from_api.py +39 -35
  181. qtype/base/types.py +6 -1
  182. qtype/commands/convert.py +3 -6
  183. qtype/commands/generate.py +7 -3
  184. qtype/commands/mcp.py +68 -0
  185. qtype/commands/validate.py +4 -4
  186. qtype/dsl/custom_types.py +2 -1
  187. qtype/dsl/linker.py +15 -7
  188. qtype/dsl/loader.py +3 -3
  189. qtype/dsl/model.py +24 -3
  190. qtype/interpreter/api.py +4 -1
  191. qtype/interpreter/base/base_step_executor.py +3 -1
  192. qtype/interpreter/conversions.py +7 -3
  193. qtype/interpreter/executors/construct_executor.py +1 -1
  194. qtype/interpreter/executors/file_source_executor.py +3 -3
  195. qtype/interpreter/executors/file_writer_executor.py +4 -4
  196. qtype/interpreter/executors/index_upsert_executor.py +1 -1
  197. qtype/interpreter/executors/sql_source_executor.py +1 -1
  198. qtype/interpreter/resource_cache.py +3 -1
  199. qtype/interpreter/rich_progress.py +6 -3
  200. qtype/interpreter/stream/chat/converter.py +25 -17
  201. qtype/interpreter/stream/chat/ui_request_to_domain_type.py +2 -2
  202. qtype/interpreter/typing.py +5 -7
  203. qtype/mcp/__init__.py +0 -0
  204. qtype/mcp/server.py +467 -0
  205. qtype/semantic/checker.py +1 -1
  206. qtype/semantic/generate.py +3 -3
  207. qtype/semantic/visualize.py +38 -51
  208. {qtype-0.1.11.dist-info → qtype-0.1.12.dist-info}/METADATA +21 -1
  209. qtype-0.1.12.dist-info/RECORD +325 -0
  210. {qtype-0.1.11.dist-info → qtype-0.1.12.dist-info}/WHEEL +1 -1
  211. schema/qtype.schema.json +4018 -0
  212. qtype-0.1.11.dist-info/RECORD +0 -142
  213. {qtype-0.1.11.dist-info → qtype-0.1.12.dist-info}/entry_points.txt +0 -0
  214. {qtype-0.1.11.dist-info → qtype-0.1.12.dist-info}/licenses/LICENSE +0 -0
  215. {qtype-0.1.11.dist-info → qtype-0.1.12.dist-info}/top_level.txt +0 -0
@@ -21,6 +21,7 @@ from qtype.semantic.model import (
21
21
  DocumentIndex,
22
22
  DocumentSearch,
23
23
  Flow,
24
+ InvokeTool,
24
25
  LLMInference,
25
26
  Memory,
26
27
  Model,
@@ -47,7 +48,7 @@ def visualize_application(app: Application) -> str:
47
48
  """
48
49
  lines = [
49
50
  "flowchart TD",
50
- f' subgraph APP ["📱 Application: {app.id}"]',
51
+ f' subgraph APP ["📱 {app.id}"]',
51
52
  " direction TB",
52
53
  "",
53
54
  ]
@@ -117,8 +118,8 @@ def _generate_flow_subgraph(
117
118
  flow: Flow, flow_id: str
118
119
  ) -> tuple[list[str], list[str]]:
119
120
  """Generate a flow subgraph with internal nodes and return external connections."""
120
- # Add more spacing and line breaks for better SVG rendering
121
- description = f"\n{flow.description}" if flow.description else ""
121
+ # Keep labels concise - no multi-line descriptions in labels
122
+ flow_label = f"🔄 {flow.id}"
122
123
 
123
124
  # Choose direction based on flow characteristics:
124
125
  # - Flows with interface (e.g., Conversational) use LR (left-right)
@@ -126,7 +127,7 @@ def _generate_flow_subgraph(
126
127
  direction = "LR" if flow.interface else "TB"
127
128
 
128
129
  lines = [
129
- f' subgraph {flow_id} ["🔄 Flow: {flow.id}{description}"]',
130
+ f' subgraph {flow_id} ["{flow_label}"]',
130
131
  f" direction {direction}",
131
132
  ]
132
133
 
@@ -170,17 +171,24 @@ def _generate_step_node(
170
171
  if isinstance(step, Flow):
171
172
  # Nested flow
172
173
  lines.append(
173
- f' {node_id}@{{shape: subproc, label: "📋 Flow: {step.id}"}}'
174
+ f' {node_id}@{{shape: subproc, label: "📋 {step.id}"}}'
174
175
  )
175
176
  elif isinstance(step, Agent):
176
177
  # Agent with tools
177
178
  lines.append(
178
- f' {node_id}@{{shape: hex, label: "🤖 Agent: {step.id}"}}'
179
+ f' {node_id}@{{shape: hex, label: "🤖 {step.id}"}}'
179
180
  )
180
181
  # Connect to tools
181
182
  for tool in step.tools:
182
183
  tool_id = f"TOOL_{_sanitize_id(tool.id)}"
183
- external_connections.append(f" {node_id} -.-> {tool_id}")
184
+ external_connections.append(f" {node_id} -.->|uses| {tool_id}")
185
+ elif isinstance(step, InvokeTool):
186
+ lines.append(
187
+ f' {node_id}@{{shape: rect, label: "⚙️ {step.id}"}}'
188
+ )
189
+
190
+ tool_id = f"TOOL_{_sanitize_id(step.tool.id)}"
191
+ external_connections.append(f" {node_id} -.->|uses| {tool_id}")
184
192
  elif isinstance(step, LLMInference):
185
193
  lines.append(
186
194
  f' {node_id}@{{shape: rounded, label: "✨ {step.id}"}}'
@@ -196,7 +204,7 @@ def _generate_step_node(
196
204
  )
197
205
  elif isinstance(step, PromptTemplate):
198
206
  lines.append(
199
- f' {node_id}@{{shape: doc, label: "📄 Template: {step.id}"}}'
207
+ f' {node_id}@{{shape: doc, label: "📄 {step.id}"}}'
200
208
  )
201
209
  elif isinstance(step, Decoder):
202
210
  format_label = (
@@ -205,46 +213,30 @@ def _generate_step_node(
205
213
  else str(step.format)
206
214
  )
207
215
  lines.append(
208
- f' {node_id}@{{shape: lean-r, label: "🔍 Decode: {step.id} ({format_label})"}}'
216
+ f' {node_id}@{{shape: lean-r, label: "🔍 {step.id} ({format_label})"}}'
209
217
  )
210
218
  elif isinstance(step, VectorSearch):
211
219
  lines.append(
212
- f' {node_id}@{{shape: cyl, label: "🔎 Vector Search: {step.id}"}}'
220
+ f' {node_id}@{{shape: cyl, label: "🔎 {step.id}"}}'
213
221
  )
214
222
  index_id = f"INDEX_{_sanitize_id(step.index.id)}"
215
223
  external_connections.append(f" {node_id} -.-> {index_id}")
216
224
  elif isinstance(step, DocumentSearch):
217
225
  lines.append(
218
- f' {node_id}@{{shape: cyl, label: "📚 Doc Search: {step.id}"}}'
226
+ f' {node_id}@{{shape: cyl, label: "📚 {step.id}"}}'
219
227
  )
220
228
  index_id = f"INDEX_{_sanitize_id(step.index.id)}"
221
229
  external_connections.append(f" {node_id} -.-> {index_id}")
222
230
  elif isinstance(step, Search):
223
231
  lines.append(
224
- f' {node_id}@{{shape: cyl, label: "🔍 Search: {step.id}"}}'
232
+ f' {node_id}@{{shape: cyl, label: "🔍 {step.id}"}}'
225
233
  )
226
234
  index_id = f"INDEX_{_sanitize_id(step.index.id)}"
227
235
  external_connections.append(f" {node_id} -.-> {index_id}")
228
- elif isinstance(step, APITool):
229
- method_label = step.method.upper()
230
- lines.append(
231
- f' {node_id}["⚡ API: {step.id} ({method_label})"]'
232
- )
233
- if step.auth:
234
- auth_id = f"AUTH_{_sanitize_id(step.auth.id)}"
235
- external_connections.append(f" {node_id} -.-> {auth_id}")
236
- elif isinstance(step, PythonFunctionTool):
237
- lines.append(
238
- f' {node_id}@{{shape: rect, label: "🐍 Python: {step.id} {step.function_name}"}}'
239
- )
240
- elif isinstance(step, Tool):
241
- lines.append(
242
- f' {node_id}@{{shape: rect, label: "🔧 Tool: {step.id}"}}'
243
- )
244
236
  else:
245
237
  # Generic step
246
238
  lines.append(
247
- f' {node_id}@{{shape: rect, label: "⚙️ Step: {step.id}"}}'
239
+ f' {node_id}@{{shape: rect, label: "⚙️ {step.id}"}}'
248
240
  )
249
241
 
250
242
  return lines, external_connections
@@ -276,20 +268,11 @@ def _generate_step_connections(
276
268
  # consumes and produces the same variable)
277
269
  if producer_id == node_id:
278
270
  continue
279
- # Get a simple string representation of the variable type
280
- var_type = str(input_var.type).split(".")[
281
- -1
282
- ] # Get the last part after dots
283
- var_id_and_type = f"{input_var.id}: {var_type}"
284
-
285
- is_list = str(var_type).startswith("list[") and str(
286
- var_type
287
- ).endswith("]")
288
- if is_list:
289
- var_id_and_type = f'"{var_id_and_type}"'
271
+ # Use simple variable name only - no type annotations
272
+ var_label = input_var.id
290
273
 
291
274
  lines.append(
292
- f" {producer_id} -->|{var_id_and_type}| {node_id}"
275
+ f" {producer_id} -->|{var_label}| {node_id}"
293
276
  )
294
277
 
295
278
  # Then, register this step's outputs for future steps
@@ -374,7 +357,7 @@ def _generate_shared_resources(app: Application) -> list[str]:
374
357
  auth_id = f"AUTH_{_sanitize_id(auth.id)}"
375
358
  auth_type = auth.type.upper()
376
359
  lines.append(
377
- f' {auth_id}@{{shape: hex, label: "🔐 {auth.id}\\n{auth_type}"}}'
360
+ f' {auth_id}@{{shape: hex, label: "🔐 {auth.id} ({auth_type})"}}'
378
361
  )
379
362
 
380
363
  # Models
@@ -394,7 +377,7 @@ def _generate_shared_resources(app: Application) -> list[str]:
394
377
  index_id = f"INDEX_{_sanitize_id(index.id)}"
395
378
  if isinstance(index, VectorIndex):
396
379
  lines.append(
397
- f' {index_id}@{{shape: cyl, label: "🗂️ Vector: {index.id}"}}'
380
+ f' {index_id}@{{shape: cyl, label: "🗂️ {index.id}"}}'
398
381
  )
399
382
  # Connect to embedding model
400
383
  emb_model_id = f"EMB_{_sanitize_id(index.embedding_model.id)}"
@@ -404,7 +387,7 @@ def _generate_shared_resources(app: Application) -> list[str]:
404
387
  lines.append(f" {index_id} -.->|embeds| {emb_model_id}")
405
388
  elif isinstance(index, DocumentIndex):
406
389
  lines.append(
407
- f' {index_id}@{{shape: cyl, label: "📚 Docs: {index.id}"}}'
390
+ f' {index_id}@{{shape: cyl, label: "📚 {index.id}"}}'
408
391
  )
409
392
  else:
410
393
  lines.append(
@@ -412,11 +395,15 @@ def _generate_shared_resources(app: Application) -> list[str]:
412
395
  )
413
396
 
414
397
  if index.auth:
415
- # Handle auth as either AuthorizationProvider object or string ID
416
- if isinstance(index.auth, str):
417
- auth_id = f"AUTH_{_sanitize_id(index.auth)}"
398
+ auth_value = index.auth
399
+ if isinstance(auth_value, str):
400
+ auth_ref = auth_value
418
401
  else:
419
- auth_id = f"AUTH_{_sanitize_id(index.auth.id)}"
402
+ auth_ref = getattr(auth_value, "id", None)
403
+ if auth_ref is None:
404
+ auth_ref = str(auth_value)
405
+
406
+ auth_id = f"AUTH_{_sanitize_id(str(auth_ref))}"
420
407
  lines.append(f" {index_id} -.->|uses| {auth_id}")
421
408
 
422
409
  # Memories
@@ -428,7 +415,7 @@ def _generate_shared_resources(app: Application) -> list[str]:
428
415
  else str(memory.token_limit)
429
416
  )
430
417
  lines.append(
431
- f' {memory_id}@{{shape: win-pane, label: "🧠 {memory.id}\\n{token_limit}T"}}'
418
+ f' {memory_id}@{{shape: win-pane, label: "🧠 {memory.id} ({token_limit}T)"}}'
432
419
  )
433
420
 
434
421
  # Tools (if not already covered by flows)
@@ -444,7 +431,7 @@ def _generate_shared_resources(app: Application) -> list[str]:
444
431
  lines.append(f" {tool_id} -.->|uses| {auth_id}")
445
432
  elif isinstance(tool, PythonFunctionTool):
446
433
  lines.append(
447
- f' {tool_id}@{{shape: rect, label: "🐍 {tool.id}\\n{tool.function_name}"}}'
434
+ f' {tool_id}@{{shape: rect, label: "🐍 {tool.id}"}}'
448
435
  )
449
436
  else:
450
437
  lines.append(
@@ -459,7 +446,7 @@ def _generate_shared_resources(app: Application) -> list[str]:
459
446
  def _generate_telemetry_nodes(telemetry: TelemetrySink) -> list[str]:
460
447
  """Generate nodes for telemetry configuration."""
461
448
  # Replace :// with a space to avoid markdown link parsing
462
- safe_endpoint = telemetry.endpoint.replace("://", "://")
449
+ safe_endpoint = telemetry.endpoint.replace("://", "://") # type: ignore[union-attr]
463
450
 
464
451
  lines = [
465
452
  ' subgraph TELEMETRY ["📊 Observability"]',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qtype
3
- Version: 0.1.11
3
+ Version: 0.1.12
4
4
  Summary: DSL for Generative AI Prototyping
5
5
  Author-email: Lou Kratz <lou.kratz+qtype@bazaarvoice.com>
6
6
  License-Expression: Apache-2.0
@@ -51,6 +51,9 @@ Requires-Dist: python-magic>=0.4.27; extra == "interpreter"
51
51
  Requires-Dist: s3fs>=2025.7.0; extra == "interpreter"
52
52
  Requires-Dist: sqlalchemy>=2.0.42; extra == "interpreter"
53
53
  Requires-Dist: uvicorn[standard]>=0.35.0; extra == "interpreter"
54
+ Provides-Extra: mcp
55
+ Requires-Dist: httpx>=0.28.1; extra == "mcp"
56
+ Requires-Dist: mcp[cli]>=1.25.0; extra == "mcp"
54
57
  Dynamic: license-file
55
58
 
56
59
  # QType
@@ -130,6 +133,23 @@ And go to [http://localhost:8000/ui](http://localhost:8000/ui) to see the user i
130
133
 
131
134
  See the [full docs](https://bazaarvoice.github.io/qtype/) for more examples and guides.
132
135
 
136
+ ## ✨ Developing with AI?
137
+
138
+ Use the QType MCP server to speed yourself up! Just set your assistant to run `qtype mcp`.
139
+ For VSCode, just add the following to `.vscode/mcp.json`:
140
+
141
+ ```json
142
+ {
143
+ "servers": {
144
+ "qtype": {
145
+ "type": "stdio",
146
+ "command": "qtype",
147
+ "cwd": "${workspaceFolder}",
148
+ "args": ["mcp", "--transport", "stdio"]
149
+ }
150
+ }
151
+ }
152
+ ```
133
153
 
134
154
 
135
155
  ## 🤝 Contributing
@@ -0,0 +1,325 @@
1
+ docs/example_ui.png,sha256=s_FGhBX8SeuWzHFo9ioRQ704UChsfOWbAUNl1ZY6c34,49504
2
+ docs/index.md,sha256=dtVQ_wgL_ByCElO3Gb9uaIlWz-PVJbH43SohoL6rgVw,1823
3
+ docs/Concepts/mental-model-and-philosophy.md,sha256=vye1StpdyFXPpgueJIuxMxA6viNVFkK619hI961maIs,12744
4
+ docs/Contributing/index.md,sha256=pFr2nbNllt9JgbC8Anqs1mFw5xOHP6zcppUocq-F2ac,7623
5
+ docs/Contributing/roadmap.md,sha256=Su2tF8hr9mmYXGFWI60iruKAQOrUdkXSdbE6SXovdyc,2953
6
+ docs/Decisions/ADR-001-Chat-vs-Completion-Endpoint-Features.md,sha256=VcSe4rUG0xhZ__Y5cC3J94iGa_GK_xlW-3-E6X3bzHM,3378
7
+ docs/Gallery/dataflow_pipelines.md,sha256=1BwpulBiLG9POXqK5NcqwX8DARNIqSZPCLmoDkBKpMI,5058
8
+ docs/Gallery/dataflow_pipelines.mermaid,sha256=HMykPrUirlCAyLGYeCBXKe0WEKRlT_WeHwWc9p4Yn80,1729
9
+ docs/Gallery/research_assistant.md,sha256=MC7p6kYYy2q5ahejPg2gpLncNIwmBX9RVl0n2CGC8II,4246
10
+ docs/Gallery/research_assistant.mermaid,sha256=DSC842rlJkGK1kCrmyq_60u7PVNKge98BybkNZ2H9kc,1631
11
+ docs/Gallery/simple_chatbot.md,sha256=LMvmq7cUXz39SzRYT7aASFh5b15BJqu6qj5RE21_654,1446
12
+ docs/Gallery/simple_chatbot.mermaid,sha256=Oq11QMUIE3frCM0EE8r64gS50QvIzv60PgTc210XJ_M,1272
13
+ docs/How To/Authentication/configure_aws_authentication.md,sha256=8sCu3R5NiILIStSFKHwcRkuUfadQDb1uJEc01IPr4Bk,1876
14
+ docs/How To/Authentication/use_api_key_authentication.md,sha256=Ss2WSuvtmds2XJU-CJG1KsqIR36VrrMwYiTYmKvyuYo,1165
15
+ docs/How To/Command Line Usage/load_multiple_inputs_from_files.md,sha256=VYH0sE9yB-86zPspcRLYaH33ehK9NviZeth2sugnP7Q,1934
16
+ docs/How To/Command Line Usage/pass_inputs_on_the_cli.md,sha256=-Pn4JzQDg6BJRXkaCChOacuT15eDgq0AgykQGHoqNUo,1900
17
+ docs/How To/Command Line Usage/serve_with_auto_reload.md,sha256=2eA_RASE7OvTDf-zyzgFYV4nRNYXEKDBMiDnHcH386o,761
18
+ docs/How To/Data Processing/adjust_concurrency.md,sha256=5es9e8Xa7J4TCLQhocDp2fTmQyRxkEL-2eTIMCwMnzw,1399
19
+ docs/How To/Data Processing/cache_step_results.md,sha256=LuPgGHgwJBM2wDtHMQ_YQuXFiQbjlUY2bUjNFT5tq0Y,2390
20
+ docs/How To/Data Processing/decode_json_xml.md,sha256=bSUqLeQVoO70NStFzmAukpGI8VAn1E_lls_QiG8v1OU,1008
21
+ docs/How To/Data Processing/explode_collections.md,sha256=NhWYaRYKxucNYRwtyMoFK-LEwYQ0kRMuGB7SVoSqWvs,1043
22
+ docs/How To/Data Processing/gather_results.md,sha256=0TgzNal491d9ODmmN8biBXgBLtCLDjKvD9SbycrgEuk,2177
23
+ docs/How To/Data Processing/read_data_from_files.md,sha256=uZoYd9TtBlhHyosBUTwVBQwqLR6U29MvZ02-SmPPGI4,1155
24
+ docs/How To/Data Processing/read_sql_databases.md,sha256=cfRZCawmCnFXC49fBlWstAVoqB9EzMAxaVBa2oukvR4,1486
25
+ docs/How To/Data Processing/write_data_to_file.md,sha256=rc6iIAA2vA7lDGG62ySu5Ztnr44U0ImJ0NkUsPTT-8A,1396
26
+ docs/How To/Invoke Models/call_large_language_models.md,sha256=tt9TnctuP7NEv66P-fTy68AonQSjw6_bF-0zaW8KGC4,1573
27
+ docs/How To/Invoke Models/create_embeddings.md,sha256=uqKXgY3ZL-spNQUM5e44U6M0ZT5Uv5Lf9t1fa-77QN0,1300
28
+ docs/How To/Invoke Models/reuse_prompts_with_templates.md,sha256=Mh7lrtvSfuGqIcCIPbn91HKRYYun4VSZzHdL2omLoA8,1408
29
+ docs/How To/Language Features/include_qtype_yaml.md,sha256=nOjTB6iUhjeJIu-t9aTjy7JonVC2OStWSbzx66X31wQ,1435
30
+ docs/How To/Language Features/include_raw_text_from_other_files.md,sha256=q7HLjbqmhUOwgsY1KDRcPeun9UwLgRaZIegjxSg2QlE,1331
31
+ docs/How To/Language Features/reference_entities_by_id.md,sha256=Ff0HqyTY1nO2hBrsZkhkucJUQh2X7EfVsm0amTaXdYs,1481
32
+ docs/How To/Language Features/use_environment_variables.md,sha256=ptN-Huc3BMxE3WaviCfvWVRaM7eLsTTgALOQzl68TEc,1384
33
+ docs/How To/Language Features/use_qtype_mcp.md,sha256=DFumrqRzfY2PzVdCHReuvBfHytA-6R-3cYFtLvKgRvA,1842
34
+ docs/How To/Observability & Debugging/trace_calls_with_open_telemetry.md,sha256=Ag5nSvqtL6WAbjDVAp-nFkB3VllJcLX_kSUXRnfdhx8,1355
35
+ docs/How To/Observability & Debugging/validate_qtype_yaml.md,sha256=ERyKWc6GxpPKTVKXWpz8YMr2cRfbZ42-5XLXVtXUrak,1110
36
+ docs/How To/Observability & Debugging/visualize_application_architecture.md,sha256=_pK9ftsGPYI1hv6pd8j9Sks1SiwbB2KBuSStlXzhJmY,1954
37
+ docs/How To/Observability & Debugging/visualize_example.mermaid,sha256=Oq11QMUIE3frCM0EE8r64gS50QvIzv60PgTc210XJ_M,1272
38
+ docs/How To/Qtype Server/flow_as_ui.png,sha256=u_4qnvAIEpLb6NNCkDPRNfZfirv4K_5eMTt0mwKSCMA,84343
39
+ docs/How To/Qtype Server/serve_flows_as_apis.md,sha256=5bBsFNUtQOgXKyNO6552N_vBXXBuJuRoPtHN3Tp3hO4,1517
40
+ docs/How To/Qtype Server/serve_flows_as_ui.md,sha256=LMI4F4YkEmrByzFjVmZSWlg5BhGtBKC7ZaHanDSB43U,1335
41
+ docs/How To/Qtype Server/use_conversational_interfaces.md,sha256=f37LvF2Da-mpHmGqrDKvK9JMqKTPIPF9r9FACLQOIn8,1881
42
+ docs/How To/Qtype Server/use_variables_with_ui_hints.md,sha256=6dY3UUEFhVLJgTvufA-YUtc8lGVS-fjd3FvU337eZ-U,1328
43
+ docs/How To/Tools & Integration/bind_tool_inputs_and_outputs.md,sha256=8nAuAqu8Q5oNguCKaadXakU0M2EL6XQcDku94mnxVgw,1659
44
+ docs/How To/Tools & Integration/create_tools_from_openapi_specifications.md,sha256=1MLWnNboYz-cRaVPm1ORPYGU7UVExTJ3jF3LkAMTm2w,2690
45
+ docs/How To/Tools & Integration/create_tools_from_python_modules.md,sha256=H8IS1R9-LsmJFgfCXYrVveRq-LtSuw7ijlm1NBvnFpw,2671
46
+ docs/Reference/cli.md,sha256=vVNWx3wlPjbdj3wNYunISMqBNiIRw2mw5WnyK89mjPU,8087
47
+ docs/Reference/plugins.md,sha256=S6mfV02z03fWTVplGpPRcbNi-VeQNUKkq_SJLJI5hGk,2518
48
+ docs/Reference/semantic-validation-rules.md,sha256=YcUBXRaD8aRhRE1gjai-q_sxnKZBPWg2RqRYfSKk4yI,3440
49
+ docs/Tutorials/01-first-qtype-application.md,sha256=qDowZMZ-8cn1pilsOqQbql1yB1dOQ9NP6py_x5gU6sE,6249
50
+ docs/Tutorials/02-conversational-chatbot.md,sha256=nVwYP-EZIZUeTSTcfuDyFtO3gQZ4XIeN_zCxEOlv2VU,8747
51
+ docs/Tutorials/03-structured-data.md,sha256=mlbhxM22hCdlIzk95mZlHy-7bIpXb6-YhpDYmU_jvRY,13052
52
+ docs/Tutorials/04-tools-and-function-calling.md,sha256=HjXD5sd68ZvRxYGX6udWcE-oNK05_NSswxdWewuqac4,14569
53
+ docs/Tutorials/example_chat.png,sha256=MFhXMqBfc_ejFUApP-TPjXKQbtt2KOfjtSkM4CIN_n0,223800
54
+ docs/Tutorials/index.md,sha256=1YD0aQHkaKC5XRJZPsEr6DSVkupjWthFTZnKUVTrO40,2392
55
+ docs/components/APIKeyAuthProvider.md,sha256=Z8CbX6RbsvWtsMlC6gPPjJTZwzaGVsjwRK_tE5N4kqw,250
56
+ docs/components/APITool.md,sha256=4HKXHlhXt7NjWxnnbPElfRoacnTyxy_AhFUXf-uIg3U,509
57
+ docs/components/AWSAuthProvider.md,sha256=aFrIqb6bwqJU5OmSpy6-avKCRIm-_Do5WZ5wKL8syWc,712
58
+ docs/components/AWSSecretManager.md,sha256=QUcHwRkLAiqqI9_T4G4Qvk_0iH8IDGdhGLI3MslwqNE,116
59
+ docs/components/Agent.md,sha256=yOlcYq_ermbmFH50GmQlTrFFLNB08WdKS2zBfdnGP2Q,245
60
+ docs/components/Aggregate.md,sha256=LlJyawbo0uamCYA3iZ2KzEF_JW7O-yINmrGA1bDenCM,409
61
+ docs/components/AggregateStats.md,sha256=KSM0E8RONEQe6qPHb4YuFXVrO-1zh-w8r9pU9RcMJOc,286
62
+ docs/components/Application.md,sha256=4p4mqjcyGEO0uvMW7C2cwhRjUD9g4X7CN8rDT0ZhmuY,1469
63
+ docs/components/AuthorizationProvider.md,sha256=QWYqwpXrdodnnySsLR_hfjxV7CdlqMEEXZq-HAulro0,180
64
+ docs/components/AuthorizationProviderList.md,sha256=jvWhszc9l_1J8hThkQ7_AfEC7XsXYUjS7s5Bv0DfleA,246
65
+ docs/components/BearerTokenAuthProvider.md,sha256=MNdWXkznIb5nUkdD7c_FyUKLa7PQ5rPj2xjGUwQL1dU,194
66
+ docs/components/BedrockReranker.md,sha256=nCoQylwpzTsPGe4xdIphuZ_KIcNkWg7QXewFuNsw9ZY,427
67
+ docs/components/ChatContent.md,sha256=Kpu8weivBQ8dnhpNpWKm2AWH8r69wADrjOqj2eR0EEE,286
68
+ docs/components/ChatMessage.md,sha256=f6zhf0mdbzRip0W9g64O7Z5hG8Kl4jQ8Lk4K6RD0pHA,285
69
+ docs/components/ConstantPath.md,sha256=7EEsO-5HucWicuZ0EEcnp8I_CWzZvTcjHjTvIlwHopg,89
70
+ docs/components/CustomType.md,sha256=Z4D3ObFSabINn_7ruE65SEKtC6gxjzwY9XLIaJC2FZU,252
71
+ docs/components/Decoder.md,sha256=jNcOn_CDPPKbtyDZMwjy3QwP5YHSOVjmoVFOvNKTYa4,365
72
+ docs/components/DecoderFormat.md,sha256=Xk0Ba_qkoM6ZtgmRbhSNWuG53hcAB1PCRk2BZKD7Hpg,310
73
+ docs/components/DocToTextConverter.md,sha256=12Iwmrzswq0NZGYkwzgjE2rT8OtYDGDBHsmmch4AZLI,377
74
+ docs/components/Document.md,sha256=w9i4mrmBoFGk8Lq6ZOzkMO3YwYS13w8IPkG1mrfug5I,351
75
+ docs/components/DocumentEmbedder.md,sha256=cKYlkCrpO_id31-o-7UHzlT2ThkdRljCE9426WHIlPI,306
76
+ docs/components/DocumentIndex.md,sha256=mWXutXd0uUaqk9SREhXnakXhCiDqgNXDiLnG93PS9Ww,440
77
+ docs/components/DocumentSearch.md,sha256=_EWfymqjiKA-g5xdgdHEvsAiWxcSNf3HOyKHG7aVYlg,401
78
+ docs/components/DocumentSource.md,sha256=0OuP96EvQnElHs-YUge82R3nBZQFGa_DXHkaj_wUe2U,725
79
+ docs/components/DocumentSplitter.md,sha256=nt0wn6FkLn3QKAQ5iszSoatRyb8ONM1piZSG4jvBRsQ,511
80
+ docs/components/Echo.md,sha256=NLnVndYr0GQWavkNwwpXgSz2fcO8U4ZxYo2B0_JZPGY,303
81
+ docs/components/Embedding.md,sha256=Y6fcLuJ60Z09yK-FglP6vtGmd_qt3oyUhCo7AB5FQ90,294
82
+ docs/components/EmbeddingModel.md,sha256=S1yeJeztkXbWNf7F5hVD3ufpQhaZfD-DQF46Ya89aFw,241
83
+ docs/components/FieldExtractor.md,sha256=ozBCiuHIwQcEP0zCqbWFac8jm2wqDnAb1-j1JEs7zDU,1106
84
+ docs/components/FileSource.md,sha256=bsHlNkY7RAiH9pbRriClgo9aaS7TuAXW1ywRxZTHfUE,285
85
+ docs/components/FileWriter.md,sha256=uTWaHgwSdCG9yGoQQq3KaluvZHp1hiWeeiNt8Qr8lXk,427
86
+ docs/components/Flow.md,sha256=8X1HAuF0POcGruEB6ROEfUfGllyV0H_FO2TwmLfKLZQ,767
87
+ docs/components/FlowInterface.md,sha256=VTGrBwQKUuh3jAjyR6jn5jbiRgZAh9f9tQHrv0i7DTM,302
88
+ docs/components/Index.md,sha256=tCS3dbqV0gzA-HtMQfwNCUjfWRoAxJTNp9eYQZYAd_A,372
89
+ docs/components/IndexUpsert.md,sha256=VZW2UCb-b1Xo4ehBsnk7vALz5VTaP6wfzNj-_WSY9jI,191
90
+ docs/components/InvokeEmbedding.md,sha256=OJ3E5ERT5f_8ytyoY6fTMFIwubWAvQ5Vif4t3E4arNs,302
91
+ docs/components/InvokeFlow.md,sha256=tZGh7y6Ezr6bW_xcjRvc7uWxUUqtM7aFAlmDyDKe1qo,410
92
+ docs/components/InvokeTool.md,sha256=P6wB0pW0sueAmqHg1cqVFHg3YqefU1fVSXrRgPwvi-8,388
93
+ docs/components/LLMInference.md,sha256=YoHG_qkTP--TjINpAfz-biXFJGrAE0frw99tyzCu-dI,510
94
+ docs/components/ListType.md,sha256=P-j-1FoS__KGkD5B8POJj0It-pT-QLjJOYqHpeK4LOs,187
95
+ docs/components/Memory.md,sha256=y33XckJswE4UbSDGnlN20Qc6lWdOymndD39Xd5g3nW8,420
96
+ docs/components/MessageRole.md,sha256=-rHzQVXhIZ4xlRdNPrmEOzKsmQg0ThCMOjVGkVrUf_s,362
97
+ docs/components/Model.md,sha256=cDmXsW87aXNHZuZxtUWk6oLrYCi3bi-g_06N5qm4cs0,569
98
+ docs/components/ModelList.md,sha256=vYKbCCCqde1N74p2zGOqM_t4yhEsHt8FO0eKEvcWfqI,118
99
+ docs/components/OAuth2AuthProvider.md,sha256=HbeAAcYi_xALdnfVQxVmO69b1dwa1IdeSHJHw668K6I,320
100
+ docs/components/PrimitiveTypeEnum.md,sha256=5AJscoyLEhmgoDMArTHKa4CdYlTgfV1ejfsa2FrOQb8,1572
101
+ docs/components/PromptTemplate.md,sha256=MCjRRbH7PFszD5mhuBNEUXJkKgcL5-RgATgEmMPLZmc,299
102
+ docs/components/PythonFunctionTool.md,sha256=57m7NCTMQO_-eaKZhmFBN7fbGMkEYZ5pVjZ6o5a-s4g,259
103
+ docs/components/RAGChunk.md,sha256=ijSTJGVaP6vYbBR46PywJ2qnqt_o1oRKJAkxumYWZT4,326
104
+ docs/components/RAGDocument.md,sha256=Cj3cI00X-OrK0zVx_RoDGjHLopFlzAeSFrINA65KCUQ,509
105
+ docs/components/RAGSearchResult.md,sha256=siqOyQu8bXUANwlxRP5MxAHzEV26mKj8xA_DfEEO08A,404
106
+ docs/components/Reranker.md,sha256=Il7uLuHZpqo2MJI-TInUia8xa2e1kTvf_OVnlr-HnXk,141
107
+ docs/components/SQLSource.md,sha256=5uagHHGAJZBthyeHtaclRWD7RizIocWOLDGhg9FvmAQ,453
108
+ docs/components/Search.md,sha256=_RueZ1czUd3ILGSDP0LF8l-yRCiekkOQou_PzirNhsk,333
109
+ docs/components/SearchResult.md,sha256=lE4xgstteeDPmSQLSq1WvVwFBDG_E1P1hqhdp8wIyXA,313
110
+ docs/components/SecretManager.md,sha256=8BC339DrzGNnGa4WMwN2-waC1PhF7u6H6YKK3ZxZcc4,289
111
+ docs/components/SecretReference.md,sha256=O9NsP6AMKHAG3KbMYxf_no4YE2QTVJ0p3k-Ynw8LMHo,367
112
+ docs/components/Source.md,sha256=VXoOPikZ_YvhfJmpGCvfoJbxc42khUqKHCRtmsG0-ZI,172
113
+ docs/components/Step.md,sha256=npLQ2SIEO3_miP2quCd_8iNujbHcn_CrHtH7JTig2_o,483
114
+ docs/components/TelemetrySink.md,sha256=T8TOt1D2c4RAFGcXVNvVBB-iC_zW6M9vLQDv4ACcazg,553
115
+ docs/components/Tool.md,sha256=bhkLOMQmEiLivBiuI4OIWxINO3AvKXbxP4zLt-EPebI,439
116
+ docs/components/ToolList.md,sha256=TizgxTUHVa4mx3MmZHCBveTwE3p59sPqUJmlRxfODPo,116
117
+ docs/components/ToolParameter.md,sha256=BgvhGihm4BwJFpUbOEhtJf5VtgCopwdySJOsQbgYLR4,215
118
+ docs/components/TypeList.md,sha256=5463eVM2zQ582gHfMe-S3bUhTkZeL0oJ4l428TmfRQM,128
119
+ docs/components/Variable.md,sha256=HwTBzjymZ_vWeg-7WhrBVpAN2mONEJLjgpPtbC685lM,291
120
+ docs/components/VariableList.md,sha256=umgQ9hIta4pKgrynkWFi21OW7lEZKQ-_acpkabNazdg,123
121
+ docs/components/VectorIndex.md,sha256=YQWUODPmHvDo4jyC3z4qDduunCjwbtifTI5M0w35H28,389
122
+ docs/components/VectorSearch.md,sha256=yPPw48s2mNgsBPAMIy2rNCv0e4cJW554OlIQc-MVBbY,227
123
+ docs/components/VertexAuthProvider.md,sha256=SxJAqxgokCuZlB_sSdtQgiH9ry2flwFTRbn8Qz_0wzM,504
124
+ docs/components/Writer.md,sha256=dXhxLs6J1STCyXKLotuJg0-aCHPv8WRtlszW7VUbBCc,111
125
+ docs/legacy_how_tos/Configuration/modular-yaml.md,sha256=s08LrsTnhc-cdXiy4ZSXKrrs-ZE0ge8BtJ4k8F2elv0,8826
126
+ docs/legacy_how_tos/Configuration/phoenix_projects.png,sha256=jircqzOo1i7fKAqqELoO069OEQQvXfTUr9GsdiNaV6c,51244
127
+ docs/legacy_how_tos/Configuration/phoenix_traces.png,sha256=mVbUPmskm5jTFY4uG_s8zMJ0a14yUxutiTMT-QcURwA,74906
128
+ docs/legacy_how_tos/Configuration/reference-by-id.md,sha256=j6QtxtPk-sLHn0lir98XplyzTLXmDtN5s9a_U5ITUf4,5643
129
+ docs/legacy_how_tos/Configuration/telemetry-setup.md,sha256=P8IH0ioUg-ITMbIsNFQ7nfi7wWhcUWf3W5jrqa4kVjo,7027
130
+ docs/legacy_how_tos/Data Types/custom-types.md,sha256=cmWoCDGm1qxpMlYnMhJcmckOtdA5s89SDaP9g_rhwes,1492
131
+ docs/legacy_how_tos/Data Types/domain-types.md,sha256=zYIj-NSDdniQ3CuzdZozCx-s9d7EGwyRn6v-fwZGlCc,2849
132
+ docs/legacy_how_tos/Debugging/visualize-apps.md,sha256=gYlQe06z7MC-L640k5CdC10J9EkjBqNzDKP25pRCJTo,4518
133
+ docs/legacy_how_tos/Tools/api-tools.md,sha256=WJh7t5BMkcRDS46vbFwD5SrA0F77KNz369W7Avv3YVk,996
134
+ docs/legacy_how_tos/Tools/python-tools.md,sha256=dXX-KdcgiZiviEvDanxPutcJtCaI7A-oSKEV_tAZpwc,8850
135
+ examples/authentication/aws_authentication.qtype.yaml,sha256=8erjLhquoDU_CEj6ileh9R9AIijGG3PNE3ijeece53E,1669
136
+ examples/conversational_ai/hello_world_chat.qtype.yaml,sha256=TrYjrV0kP-CFSAIPCnSMER1qSQw3dtVqd0d2ZzJJ6AY,897
137
+ examples/conversational_ai/simple_chatbot.qtype.yaml,sha256=agaV4kt-BGdsP9QfUxd23wqyAGZZlQMm_JuU0Hu6D1E,1068
138
+ examples/data_processing/batch_processing.qtype.yaml,sha256=tsHTc9AexMZIAaqj8Nvq9e2AjJfQkUPCyHHHfK-03-Y,992
139
+ examples/data_processing/cache_step_results.qtype.yaml,sha256=4W8zCUaOBR6jW1M9V-27DymGCS5Wrp-PHvq1RP96jdM,1976
140
+ examples/data_processing/collect_results.qtype.yaml,sha256=-WpuV7Uil4sxnWKL1KPWjhFUI30gLMausMGel29Q61s,1440
141
+ examples/data_processing/dataflow_pipelines.qtype.yaml,sha256=84oM0CtOdZ9G6cjy0er9k4W3H2NDYl4S3NrSCjGt5H8,2754
142
+ examples/data_processing/decode_json.qtype.yaml,sha256=VT0omLl0FwRvMI4B64vDMB8cI3dYWeVwmb23fyz5TYU,491
143
+ examples/data_processing/explode_items.qtype.yaml,sha256=MGNnpo0e1Sgm5Rs6RJZg8x7RX5VYwzj2BkJ9RV4GXYw,447
144
+ examples/data_processing/read_file.qtype.yaml,sha256=SekQJQYbX7MQZngxGimM_DbuvgzYk-tQc0NbTnMf9vw,1100
145
+ examples/invoke_models/create_embeddings.qtype.yaml,sha256=82ppkAx6S2qYd2LmSy1v51oUxLc7jJmTX5n_w-uq6o4,565
146
+ examples/invoke_models/simple_llm_call.qtype.yaml,sha256=jmiDp4am5ucmturF-CM4Bk7QpvsFVNTL1jsR_Nt8Jts,631
147
+ examples/language_features/include_raw.qtype.yaml,sha256=ACIUdXS-gYLt0x_XkiIz1rfNomCBiVFoTThwjQC-smQ,562
148
+ examples/language_features/ui_hints.qtype.yaml,sha256=MbbHLhEoE6jT-pyd1omBCULLyPsiKhJ5F6KlSQS9lvA,1292
149
+ examples/legacy/chat_with_langfuse.qtype.yaml,sha256=t2hefKp46WvzkQSeVWlWofc2nhPKl3tnjMeZNxrMsbY,1135
150
+ examples/legacy/data_processor.qtype.yaml,sha256=mzuZDRY-tVpYQ1vJMNLn0rhWgwPXSeTsVNiSl_U9jo8,945
151
+ examples/legacy/field_extractor_example.qtype.yaml,sha256=JVf3N-sReYBWe0YfY0y-i3xXXpwsx3JGf5NO69UPosw,3154
152
+ examples/legacy/multi_flow_example.qtype.yaml,sha256=XFUXHcF3oOfxhZPByzX2QNRngzbWjAcoD4SEk6FBStM,3038
153
+ examples/legacy/rag.qtype.yaml,sha256=PTP-a4J7OwBGUXLvejJQGdHtdHU7yFYP98cISk_3AI0,6439
154
+ examples/legacy/time_utilities.qtype.yaml,sha256=Tc8Z09HRyKjrABxzD8UHIz7PAPbyFlOu002-GcfG_oc,1750
155
+ examples/legacy/bedrock/data_analysis_with_telemetry.qtype.yaml,sha256=EUDoj7Zo1MpcbZAJMThswQnWhOJQmGVgynRPU50B4Ws,4924
156
+ examples/legacy/bedrock/hello_world.qtype.yaml,sha256=vs6SuodOs6QfPsnukmL1mpGk2GgE39EYzdKHXM1bqrI,902
157
+ examples/legacy/bedrock/hello_world_chat.qtype.yaml,sha256=K45Cj6CG2blD9cB8slBuHGu3qKHSBHdo7q25PcBnwrM,846
158
+ examples/legacy/bedrock/hello_world_chat_with_telemetry.qtype.yaml,sha256=toMbUd7DO24z9UwbFNnXge6Pbv4i5xuoaSiVCJGlO4Q,1074
159
+ examples/legacy/bedrock/hello_world_chat_with_thinking.qtype.yaml,sha256=g9g8hYDUf7tf-9Tz1T4KSGdl1DObntbnY_HkwhMkDhQ,939
160
+ examples/legacy/bedrock/hello_world_completion.qtype.yaml,sha256=nrhcb1rxuLdpHJcNGeVS_skuW-dWJXafrD_LBpPZ2Ds,955
161
+ examples/legacy/bedrock/hello_world_completion_with_auth.qtype.yaml,sha256=MbrmCPHBBK4Ad_nFV1ZGqzm85TmETXvWwbvbx1bf2Dc,1039
162
+ examples/legacy/bedrock/simple_agent_chat.qtype.yaml,sha256=GsP0jW5WM_kyPeQnag94aG52WHw_L0COPEjTKth09ZE,1227
163
+ examples/legacy/echo/debug_example.qtype.yaml,sha256=7VTPOxR17HlG-0XJeEl79U9esjBuvqm9wN1Yc0J8ZLA,1480
164
+ examples/legacy/echo/prompt.qtype.yaml,sha256=_AIiPURVCk5wXOrDKLMV_D6aQsfz7QVXQjJ45JZQtRY,422
165
+ examples/legacy/echo/test.qtype.yaml,sha256=l8YbhxX0xZut4X264l6ZLJw0rt2img1pAAYFVFKuBEA,517
166
+ examples/legacy/echo/video.qtype.yaml,sha256=9Stl4yejNgGHw2Vk5eM21ZUB5771tSAUXJzMJctBT8k,388
167
+ examples/legacy/openai/hello_world_chat.qtype.yaml,sha256=TrYjrV0kP-CFSAIPCnSMER1qSQw3dtVqd0d2ZzJJ6AY,897
168
+ examples/legacy/openai/hello_world_chat_with_telemetry.qtype.yaml,sha256=CyV9ouylR9BAEkq0dfvkjc95rI91JaFQjaOkRI4LgWo,994
169
+ examples/legacy/vertex/hello_world_chat.qtype.yaml,sha256=GfmWSbqy4To1v0qr9_BzA9uT1uMuoVn_FJ-Z-oVGYt4,828
170
+ examples/legacy/vertex/hello_world_completion.qtype.yaml,sha256=_AQhNXv76uKgP4Gv2UbewpOPx0U9JxSYwPTVAtMdXt8,913
171
+ examples/legacy/vertex/hello_world_completion_with_auth.qtype.yaml,sha256=M3KcfmhffKGNy3KQt7Ie1Oyt6ntRT0Fb2DHFOjxeXvE,1005
172
+ examples/observability_debugging/trace_with_opentelemetry.qtype.yaml,sha256=J7277A_4GFkhGxRlalEDbOWFAwnEF8nwBGiU7rdDUJ8,861
173
+ examples/research_assistant/research_assistant.qtype.yaml,sha256=jHQKP7Q5BbNzhBNuNFx1sa94P4ClHYHRLNSlRwQftEM,2410
174
+ examples/research_assistant/tavily.oas.yaml,sha256=mX8SdSl80UgMHILJ6qGhNDxDQi95c3DkUPcpV4bncMA,21120
175
+ examples/research_assistant/tavily.qtype.yaml,sha256=JCh4ys5INXfkgcW7JQ5_kC-bzbIs4-p9MEvMj23Q3KQ,6178
176
+ examples/tutorials/01_hello_world.qtype.yaml,sha256=ok2eGLr3td6aosAvvZHbkJB8kz_oU8r1X5OyTfXZCyI,956
177
+ examples/tutorials/02_conversational_chat.qtype.yaml,sha256=lwzKYNi9JAqgrqBiSPkO9KJfArPqF5yIOVoJyAPgH08,857
178
+ examples/tutorials/03_structured_data.qtype.yaml,sha256=gc_PCJFPlMCf18Oy0moArHXXQ_bzyHS0NoG7CQDoJ90,3670
179
+ examples/tutorials/04_tools_and_function_calling.qtype.yaml,sha256=IosbtZPtjut6Yq308JIoXRL-7NnLuhTOsCpvOD3owyk,2729
180
+ qtype/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
181
+ qtype/cli.py,sha256=AC2i9dROss5JsEhbaRpIz4kHVvm0Tq-ope3ENL8Qw5w,4797
182
+ qtype/application/__init__.py,sha256=WS3x0b0NRt-nRmj1trsytlvMpQS5KN7Hi6THGfY8bKE,230
183
+ qtype/application/documentation.py,sha256=ifmdt0jBW410baQuCUxovYDQQj-kxPZ4fmf6rWps9JY,4988
184
+ qtype/application/facade.py,sha256=JjexkpTzP-aAJHs4AaxJbB4CU10jn3zcPFpQ6FYWJFg,5803
185
+ qtype/application/commons/__init__.py,sha256=QyWAB2cvimM4DxNo2oBFCGkfBikH-ZeMBMGWmJcq4Uc,135
186
+ qtype/application/commons/tools.py,sha256=U_jJdVN2NO5v9b3qb6dPIiVykfal6tp6NvcLGWR6HC8,5035
187
+ qtype/application/converters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
188
+ qtype/application/converters/tools_from_api.py,sha256=HumF2pukMEztwSzVg_VcrvdlXXYkF32qCSAkxVPhjxE,17154
189
+ qtype/application/converters/tools_from_module.py,sha256=7pR0oA4xeWQchclWYu3sa5760NJoms9y-aQd1GLDj7M,9526
190
+ qtype/application/converters/types.py,sha256=OsJQ2fmgQm5NaxgS9cvHER9anfv3qttbt7co3f-MxPE,440
191
+ qtype/base/__init__.py,sha256=4jwcB8cDHzDNF3NBv8WqHNk3sDZDNvUFNjx2CKZ-pyY,283
192
+ qtype/base/exceptions.py,sha256=NR6-p6FnIabFPid9xIUTTeNhCYoIw8sbxEzaWQ11a4o,1155
193
+ qtype/base/logging.py,sha256=eqStjILlmhNryYRqUiyTdDHoUoiLKSY8J0GevvzvTKQ,1075
194
+ qtype/base/types.py,sha256=VefRDyMqr1AaR_qF6S6kK_DkR-AUA37Wg8r8vyO9riY,6864
195
+ qtype/base/ui_shapes.py,sha256=FkziyJ8VKqimpDepTK6tlZ47HQzNwJUeKARAM2qOYKo,921
196
+ qtype/commands/__init__.py,sha256=Qo4M07zm5I63r8STxDjvt5fhP1jygdXTsExNGELkefc,257
197
+ qtype/commands/convert.py,sha256=fvE6dPiN4iGI2ngy9MWlxhjWtEPyWzeLcFK20LLrgOM,4633
198
+ qtype/commands/generate.py,sha256=3cGumuD594OFc1eFyIcBoXrXQRquGKAUh9xJ_vfRVPI,7395
199
+ qtype/commands/mcp.py,sha256=dhOO6itqRRQa206W0CVJuhyVO52uXn9ZhU8-0pQ3qG4,1771
200
+ qtype/commands/run.py,sha256=rDIiDioWU-dNuw39F12Bb6buknsNGzzVhd41i9Yms8Y,6633
201
+ qtype/commands/serve.py,sha256=lb5akSZ8fYLlCl8u8HDFFk6kyCHHwSRnP5wNzZry8sg,3216
202
+ qtype/commands/validate.py,sha256=h_SJTLBB0b3dAWLttEhPf83F01l9Nx4YwTFywm4h_Tw,3058
203
+ qtype/commands/visualize.py,sha256=J1eqwaVWTteGzib84g7Qtp0JlX9wIMmRQWSv1RhAns8,3763
204
+ qtype/dsl/__init__.py,sha256=clrmM1ZlK6c0Le_183eo5bc9dDK53Ebp-vH5ZVfwhfw,397
205
+ qtype/dsl/custom_types.py,sha256=nlLZ-Rp1_lcS2dQPvdbJKOQhVw0X04d4Y6Tdw2Xb1AU,2999
206
+ qtype/dsl/domain_types.py,sha256=-pX74DKwrRanoXBxYqAdN_f44ike6ssRV3tZ20R2PhQ,4319
207
+ qtype/dsl/linker.py,sha256=TXbyWPod-a5Ogbps215_bqMMJfGpzauw5Vw_QTTaD6s,13353
208
+ qtype/dsl/loader.py,sha256=3za88e8Pi72AKJWIqxY4ifa5Boop-5GOCsBcaX2RM8o,9774
209
+ qtype/dsl/model.py,sha256=W6Ie6cQhI-l5vakDg0InFfmHxdjlaku61hCvLONGvoA,43210
210
+ qtype/dsl/parser.py,sha256=Ww32bLQ2vGOObsA-vWjaMh4TOKRwEA7FAt9U6wjKZkw,5490
211
+ qtype/dsl/types.py,sha256=k6cgThA287bZ_pvTKQvxWhatcYCPNne8zpqOYOvLvOg,1687
212
+ qtype/interpreter/__init__.py,sha256=IaRF90JLFbsTLKz9LTOMI_Pz4xwVaEyXPNaXV7sLou8,43
213
+ qtype/interpreter/api.py,sha256=FCpb4teL_ivBv4N1L18L29jEA_0Jvbe4EuQ6Dua89ng,4268
214
+ qtype/interpreter/conversions.py,sha256=yLVOPNRK7iwasXcmFgNXesgf_tfteqdoJljcLWkbg38,22290
215
+ qtype/interpreter/converters.py,sha256=gWyfizl7d-DT6jJ2aOrneUcZcwB-LdMDEvl-VT0-mLQ,2348
216
+ qtype/interpreter/endpoints.py,sha256=un4iCYCk86lYKpTDFdzlByvebdctNwRF3n4oD4ZwpTw,11946
217
+ qtype/interpreter/flow.py,sha256=cer1z8qcG9rVkUm3Ly0zBKekZIiilQVoDh8qrr-m9bs,6703
218
+ qtype/interpreter/logging_progress.py,sha256=RmyNXdbpPZ7ye8cbSab0Tw10x3T38U3S8rj2bOTfbso,1848
219
+ qtype/interpreter/metadata_api.py,sha256=LfJjt9atsgiAra6aVBXLoJrPa06_CBUagYysT556nt8,3267
220
+ qtype/interpreter/resource_cache.py,sha256=bgMIiMnWMlzjRXeJ1lv5XtJLsI__uqnhDYb8sdo6xRQ,1312
221
+ qtype/interpreter/rich_progress.py,sha256=SnJiupseb63IiobAU4sreO-n-RkuwSsDdAwjs64h1kE,6829
222
+ qtype/interpreter/telemetry.py,sha256=Hcwd9sMW55LejgOIpPwjkWsmTvB2vnpSr4TshTAKljk,4901
223
+ qtype/interpreter/types.py,sha256=mortEGCZ4N-n48FApmN7_t8PWJSwAxl9M9zPOrZECeU,10243
224
+ qtype/interpreter/typing.py,sha256=g5H_MTrOWIuX35rBpTVvgzSw3-3am1DZQfuhRKQph3s,5886
225
+ qtype/interpreter/auth/__init__.py,sha256=L98AxaSizb6LMdXEr8FGe9MBtPBnfCeWxjI0oi7sg_o,62
226
+ qtype/interpreter/auth/aws.py,sha256=eMXyEBqzv7I243fS-A1zHPQkN--yPFEh1Hxp4rxmyEs,8154
227
+ qtype/interpreter/auth/cache.py,sha256=uVyJ_jkbprRdlvbnm1DVIaYyTDLEsPXvi3xjuRneH2k,1825
228
+ qtype/interpreter/auth/generic.py,sha256=WHXu3SxWzxJn_bv6R20Aod84Vwe73xTYHx754dY1MSg,6178
229
+ qtype/interpreter/base/base_step_executor.py,sha256=hGdmPfgmLWdT6lfwdYp-qcHJzKSxadi6o2yFB12cJtc,16563
230
+ qtype/interpreter/base/batch_step_executor.py,sha256=g5_yPd5VTy_slW5ZXyamgFyTRd0CoaeVfDHj8x4PvUk,5906
231
+ qtype/interpreter/base/exceptions.py,sha256=7CIexzDfIjvAA0c6qwg4jsDcTQM1pKQLj6szxcqil_c,1586
232
+ qtype/interpreter/base/executor_context.py,sha256=qDMb7GJebCw3E6oMiCSpu0-aRq-l6MPx6yPLwM2quOs,3561
233
+ qtype/interpreter/base/factory.py,sha256=ZzhtFS7wgBbskQJWCmphZ9lYztU77mv4pxfihypacQg,3812
234
+ qtype/interpreter/base/progress_tracker.py,sha256=zHtTp0JGrn1M3wNEEVfkwQmuHD-WKXV7tv4fDdHv1xs,3488
235
+ qtype/interpreter/base/secrets.py,sha256=74NoU0Fx96vva6LGWXk7EkvFWD4uZEk12NjWrGHWZTc,11241
236
+ qtype/interpreter/base/step_cache.py,sha256=kP2xXFycEzTEC8H7glhfptd3FOQ1xITMjoctzX3bqc0,2435
237
+ qtype/interpreter/base/stream_emitter.py,sha256=8l5bCFTjMA3Takjh51QdWw8ERb7_GamHVoU-x6xkG5I,13828
238
+ qtype/interpreter/executors/agent_executor.py,sha256=EHGBFzWtq6lka-ZHIrXzcYzesJtYDNYpsEib6swKkn8,8364
239
+ qtype/interpreter/executors/aggregate_executor.py,sha256=Z3NJekpeo7aqqvOcXQqb6d6t9g4UB1r3N1lSV9EwZq4,3495
240
+ qtype/interpreter/executors/bedrock_reranker_executor.py,sha256=FM0O7bpeDj_k-XjTnilQLoZNEgqXJBS5-RBM9ecs8DE,7140
241
+ qtype/interpreter/executors/collect_executor.py,sha256=qUxx72YRtw3Oca7RyQoa5Hl-SyMcWDWl3FcZa0vEKTU,2518
242
+ qtype/interpreter/executors/construct_executor.py,sha256=H6Ck2YbgXThVGj_HwoQe1N5i3zlJ0liy_iNYwC4ZP7Y,2509
243
+ qtype/interpreter/executors/decoder_executor.py,sha256=zz4jZQwLRYM9t3p1jGWmEIvd3libaudSTvPsqqiOw68,5596
244
+ qtype/interpreter/executors/doc_to_text_executor.py,sha256=DYRct0elL-k5zWiqZVYrxCZqZJgg2lkyy0vTKuI4d2I,3790
245
+ qtype/interpreter/executors/document_embedder_executor.py,sha256=J2fZGll8mmBjRGKdqmIQ_Yhao6YcH5mAmbGtIxykc0k,4075
246
+ qtype/interpreter/executors/document_search_executor.py,sha256=XSo2JLmKGBZOlTk2E_OqlQUlf7ecF2hTsmqpVGi7Ti0,4037
247
+ qtype/interpreter/executors/document_source_executor.py,sha256=DuE0gzT6oBPo9wenZZFpjWxCpyhW2yUTipda_xl8Lqc,4233
248
+ qtype/interpreter/executors/document_splitter_executor.py,sha256=8jtdwfNB7iKae5gd1ln9GAfJI7S56-PjuQ6GqM3WRxk,4002
249
+ qtype/interpreter/executors/echo_executor.py,sha256=MzU1SHnbPLvN6iEZWKjIhtd5OFVszmhgokQX-2sGE1c,2180
250
+ qtype/interpreter/executors/explode_executor.py,sha256=GBE2SZjzWXfkvJzNBjap-I7Fuv7Vhu9YXUgsi7kLOeU,1588
251
+ qtype/interpreter/executors/field_extractor_executor.py,sha256=r2IJuxfosHuSC2DKuSohCu6Gd8MrKUKX2kNWPCDO1Gw,5782
252
+ qtype/interpreter/executors/file_source_executor.py,sha256=e8NfsiAxY8DaLUoY-W6c39yB6GUge57OIH0EKWjPy6I,3695
253
+ qtype/interpreter/executors/file_writer_executor.py,sha256=hD_3tv-tjtFDkEtM44yROlm9Egib5oaPd3w2sfshMoo,4380
254
+ qtype/interpreter/executors/index_upsert_executor.py,sha256=jbuC7mQ8KjoN4Nr3LFDl4kZlY3NXVtx5aU4gDFtW0Is,8544
255
+ qtype/interpreter/executors/invoke_embedding_executor.py,sha256=vXja0hTReiVs8q47K-bXiVYxhdQwUsKlLGMG4GGc3MA,3820
256
+ qtype/interpreter/executors/invoke_flow_executor.py,sha256=U30cYM3F_zy1_2CD1Dde59xyZD0rDa5W46lST1hxF6s,1682
257
+ qtype/interpreter/executors/invoke_tool_executor.py,sha256=6iitiXylARNnz9kr5Bvcni-KGXk1L4iuYFYQfbqH3Mc,12772
258
+ qtype/interpreter/executors/llm_inference_executor.py,sha256=bQu1Qb0hzhkiBBeU4SXYVPTjwgic3r_gVcyegZun2tE,9579
259
+ qtype/interpreter/executors/prompt_template_executor.py,sha256=s3GuLv1iYC0SH_h1V-g8Xm5s5afzQrDN5z4LlIiZ6eY,2686
260
+ qtype/interpreter/executors/sql_source_executor.py,sha256=TvVB9JqL00kfFd2yACuJGF4UxKFXAsETVH1FO13hCNM,3940
261
+ qtype/interpreter/executors/vector_search_executor.py,sha256=X6fWIrQ7TT_sm9SamNBtvY1ETyAI_7pV0Hs7IM2TMd4,3175
262
+ qtype/interpreter/stream/chat/__init__.py,sha256=evNfJJp3VUiTgip8___vBryAZubS-cij-8YYAjOJXX8,401
263
+ qtype/interpreter/stream/chat/converter.py,sha256=fDpuSApkKNNoJmtuRZLL3rPNonB4Y3BR1cyTXsi6COE,13742
264
+ qtype/interpreter/stream/chat/file_conversions.py,sha256=klSsXjATfSoOzKEjAiabGRXKErIHxP6-bVWbNM3EM4E,1751
265
+ qtype/interpreter/stream/chat/ui_request_to_domain_type.py,sha256=JWMORJAecDoPujYQZSPjufXirQyX_EIYRyqU9aXkTAA,4755
266
+ qtype/interpreter/stream/chat/vercel.py,sha256=3q3H2xTZ17tCKCt53GurrKUKtG3kBMEqZ_OT9KAudMY,19164
267
+ qtype/interpreter/stream/utils/__init__.py,sha256=V7slu_wB4H7MiM6pysKjww0eDVg53bo_NvkEbtM2NuU,533
268
+ qtype/interpreter/stream/utils/build_vercel_ai_formatter.py,sha256=P_EL2VB_hWigN4OQrtnZgBj1C3hm3_rajdlY60Ay_j8,2511
269
+ qtype/interpreter/stream/utils/callback_to_stream.py,sha256=oAriHcFNUTYsA__6A3bNDdjGe4JMpRUStCq7UUKzRRc,1904
270
+ qtype/interpreter/stream/utils/create_streaming_response.py,sha256=OsefnAV6i1RnfP3EjnfvVwfl3fscKvBleBs6I6ubJ1s,495
271
+ qtype/interpreter/stream/utils/default_chat_extract_text.py,sha256=opEwJujQ1pNn_pEbHtVWfEJpO8tiArnm4G4XqJQp-o8,502
272
+ qtype/interpreter/stream/utils/error_streaming_response.py,sha256=wX9oD3w4x9_hIT15rDTGboOAix80gW_VkvpIo4CMVi0,613
273
+ qtype/interpreter/tools/__init__.py,sha256=kgUmX4jVdKe2kXSFfdxWeO4BOU2W2tUY005KGDyKoys,153
274
+ qtype/interpreter/tools/function_tool_helper.py,sha256=Qne_-XX9S0Cxld1AGs6zCnzA3Y3CVIkHC-M7PU4it70,9816
275
+ qtype/interpreter/ui/404.html,sha256=1EqTAd3RQj92zfrqKLMlXfSyJDFprhW-wH9712LzsJs,6906
276
+ qtype/interpreter/ui/file.svg,sha256=K2eBLDJcGZoCU2zb7qDFk6cvcH0yO3LuPgjbqwZ1O9Q,391
277
+ qtype/interpreter/ui/globe.svg,sha256=thS5vxg5JZV2YayFFJj-HYAp_UOmL7_thvniYkpX588,1035
278
+ qtype/interpreter/ui/icon.png,sha256=_6nLJGL8ZsuOMyDMPxTM2oIdAUMCTLRejxN0fRyiqug,605542
279
+ qtype/interpreter/ui/index.html,sha256=XcstmUuUndDYuZ0nuw82QoilXSZ-L18PFCAld25q0AA,6429
280
+ qtype/interpreter/ui/index.txt,sha256=V1cOJjDxLwAtjY4SfcQnSzhxasqIYs1xkkFTvqOrINI,3630
281
+ qtype/interpreter/ui/next.svg,sha256=VZld-tbstJRaHoVt3KA8XhaqW_E_0htN9qdK55NXvPw,1375
282
+ qtype/interpreter/ui/vercel.svg,sha256=8IEzey_uY1tFW2MnVAaj5_OdagFOJa2Q2rWmfmKhKsQ,128
283
+ qtype/interpreter/ui/window.svg,sha256=ZEdoxKrrR2e84pM0TusMEl-4BKlNgBRAQkByIC2F46E,385
284
+ qtype/interpreter/ui/404/index.html,sha256=1EqTAd3RQj92zfrqKLMlXfSyJDFprhW-wH9712LzsJs,6906
285
+ qtype/interpreter/ui/_next/static/YR7FgQl_Kpwjcqho0ogG4/_buildManifest.js,sha256=laTlAGn4BGHGbZbFh81kbTBiwQFrPGGgnfUQsKlxs38,544
286
+ qtype/interpreter/ui/_next/static/YR7FgQl_Kpwjcqho0ogG4/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
287
+ qtype/interpreter/ui/_next/static/chunks/230-e22a519211de9624.js,sha256=9dxSTQuQLprpIoj7OK8DQwxXWmu-3gr70_982oV7hEk,841907
288
+ qtype/interpreter/ui/_next/static/chunks/255-268261a96ffee0a9.js,sha256=mWD6b1E61c_tU4bqG-eXP2NQZfrNvPc7wTcNnu_zN04,172642
289
+ qtype/interpreter/ui/_next/static/chunks/4bd1b696-c023c6e3521b1417.js,sha256=LHUqQBGRZx1bu-dRT1gou7CnzFC_vnfdrxscy6RBLtI,173019
290
+ qtype/interpreter/ui/_next/static/chunks/ba12c10f-8d3b3efcaddd4728.js,sha256=4IVQBxQVbjYF7E7Db_4QOUnkAN7VXK_F44avEehpfS0,33529
291
+ qtype/interpreter/ui/_next/static/chunks/framework-d7de93249215fb06.js,sha256=P2cmv6l5-jgTot53spavAK2IsrOdw17e1v1Nr2-zCDQ,189765
292
+ qtype/interpreter/ui/_next/static/chunks/main-090112344d9a19ce.js,sha256=vyUMe0arC76krq1BSztNUytUgsVj6VMw5RNfVrHiudc,127661
293
+ qtype/interpreter/ui/_next/static/chunks/main-app-a5425c8070223ccc.js,sha256=qXE6kujwd0jSzLfbh0Xd5HdJzkmBS45BVBIWPbQW2rc,557
294
+ qtype/interpreter/ui/_next/static/chunks/polyfills-42372ed130431b0a.js,sha256=CXPB1kyIrcjjyVBBDLWLKI9yEY1ZZbeASUON648vloM,112594
295
+ qtype/interpreter/ui/_next/static/chunks/webpack-bd0771cb30dd12fa.js,sha256=5jFgAUaARW9ITdRdEa8ZeFSCVzedw9heKbsMHJD_AZE,3432
296
+ qtype/interpreter/ui/_next/static/chunks/app/layout-1615bcffa82ff884.js,sha256=PMO1HSXGwDXVp3LndB5bzsZ-XeHfSEI7E8Z8NQrrMNA,589
297
+ qtype/interpreter/ui/_next/static/chunks/app/page-bfbb263eb356c6eb.js,sha256=FzZj2He38Y7A4y0M25QO7vhmaDhMZGmSPyeUZqmVd4o,61372
298
+ qtype/interpreter/ui/_next/static/chunks/app/_not-found/page-8f0e059659d8afd7.js,sha256=wUAt3xzRSJM0sfCgCA4y1TfTRwbeHRQeRP__ihsTa_o,2670
299
+ qtype/interpreter/ui/_next/static/chunks/pages/_app-7d307437aca18ad4.js,sha256=eXrp6fmuNktBUqhvCrRNaGVjEkR3tssxoPCoAyQ3Z6M,234
300
+ qtype/interpreter/ui/_next/static/chunks/pages/_error-cb2a52f75f2162e2.js,sha256=yqhI2N9I7mqYcq4hqnZ5lw2DLI0Ko2EcUXIU5WL4qt8,218
301
+ qtype/interpreter/ui/_next/static/css/7906798f56607e8f.css,sha256=RrHTPLIkrPtRidcsEaLWUHvT1J6K5-e-E7plGLKNPLs,56333
302
+ qtype/interpreter/ui/_next/static/media/4cf2300e9c8272f7-s.p.woff2,sha256=op-QCm1gPpiUSTJ5VuesYeo-aybKdCb2TnzM8s1K7Tc,28388
303
+ qtype/interpreter/ui/_next/static/media/747892c23ea88013-s.woff2,sha256=fVYJU4p5VF7JReAZdx7VYuLGWmwcPEzMTqNDcuJ3w5Y,13036
304
+ qtype/interpreter/ui/_next/static/media/8d697b304b401681-s.woff2,sha256=L-8o3IIethe91jtC7gxTC4zX1J0g83yrYaTKeWUUpwM,14676
305
+ qtype/interpreter/ui/_next/static/media/93f479601ee12b01-s.p.woff2,sha256=t6wUSzlMvYEFLWOX7AwzOXl3sdfpvAledE5lKjeMb7M,31288
306
+ qtype/interpreter/ui/_next/static/media/9610d9e46709d722-s.woff2,sha256=N08hXnJfWWXM9XN7Rteie_5rOzIOaof0kGjkiIksSAk,12608
307
+ qtype/interpreter/ui/_next/static/media/ba015fad6dcf6784-s.woff2,sha256=92BKU6ACUPZttLR91EMnzipD9u3shQ1SF7uAI4gZ790,15292
308
+ qtype/interpreter/ui/assets/video-sample.mp4,sha256=Bl7y3EjNS-4afVy7HygSC09hW2TfKlU5YQwrhwQc0vU,75593
309
+ qtype/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
310
+ qtype/mcp/server.py,sha256=BE2uhtKHJBTPUnUKMijJB1m6EqmO36P1oW0w2Nb6m9M,15632
311
+ qtype/semantic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
312
+ qtype/semantic/base_types.py,sha256=wfUlT0gV3_Mk1xLLI64SSXCB9GFmn29yz5adTaHrsOI,1540
313
+ qtype/semantic/checker.py,sha256=gnVkFqgGQ_gjCD0leWzTtTUAw_37TG3RohGXWJ_AKQI,25062
314
+ qtype/semantic/generate.py,sha256=TmVu-5fuQACYpmY7jdnb0VMwCLhssK6b0TELfHWQ0PQ,21158
315
+ qtype/semantic/loader.py,sha256=QRhTc_AJfsWSMn8ThaW60GmIGjFMN-3bBUy4pktFjz4,3041
316
+ qtype/semantic/model.py,sha256=eUPmdYgtRxx2U3zcC4thjh52-vHuNQAKS10hCRGjr14,28724
317
+ qtype/semantic/resolver.py,sha256=bWPCSB8KJpVqN_n41U_r-qzUiT8vAMBOD3pOGmxL6TY,4618
318
+ qtype/semantic/visualize.py,sha256=f4ai8vbg8htEAn5tTQGNhsPZcuH0N-WfMsxgjDcAxoI,16615
319
+ qtype-0.1.12.dist-info/licenses/LICENSE,sha256=1KA5EgYBSR0O6nCH2HEvk6Di53YKJ9r_VCR7G8G8qAY,11341
320
+ schema/qtype.schema.json,sha256=lLQBk9giIimS_ApGk0avzR8L7StYvUzfmd_gX9IBWfY,113711
321
+ qtype-0.1.12.dist-info/METADATA,sha256=YAaCVufOLq2sMqII5tOLmdg-spGrrbqiC4p_G45izvg,6135
322
+ qtype-0.1.12.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
323
+ qtype-0.1.12.dist-info/entry_points.txt,sha256=5y4vj8RLvgl2tXSj-Hm7v5-Tn3kP4-UonjNoN-mfaQE,41
324
+ qtype-0.1.12.dist-info/top_level.txt,sha256=ONroH5B0mZ51jr7NSWCK0weFwwCO7wBLmyVS1YqNU14,6
325
+ qtype-0.1.12.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5