llama-stack 0.3.0__tar.gz → 0.3.2__tar.gz

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 (634) hide show
  1. {llama_stack-0.3.0/llama_stack.egg-info → llama_stack-0.3.2}/PKG-INFO +3 -3
  2. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/list_deps.py +4 -0
  3. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/run.py +4 -2
  4. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/configure.py +0 -9
  5. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/datatypes.py +4 -0
  6. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routers/inference.py +66 -40
  7. llama_stack-0.3.2/llama_stack/core/utils/context.py +84 -0
  8. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter/build.yaml +1 -0
  9. llama_stack-0.3.2/llama_stack/distributions/starter/run-with-postgres-store.yaml +285 -0
  10. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter/starter.py +86 -68
  11. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter-gpu/build.yaml +1 -0
  12. llama_stack-0.3.2/llama_stack/distributions/starter-gpu/run-with-postgres-store.yaml +288 -0
  13. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/embedding_mixin.py +1 -2
  14. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/inference_store.py +19 -7
  15. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/openai_mixin.py +4 -1
  16. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/responses/responses_store.py +6 -68
  17. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/sqlstore/authorized_sqlstore.py +25 -9
  18. llama_stack-0.3.2/llama_stack/ui/node_modules/flatted/python/flatted.py +149 -0
  19. {llama_stack-0.3.0 → llama_stack-0.3.2/llama_stack.egg-info}/PKG-INFO +3 -3
  20. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack.egg-info/SOURCES.txt +3 -0
  21. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack.egg-info/requires.txt +2 -2
  22. {llama_stack-0.3.0 → llama_stack-0.3.2}/pyproject.toml +3 -3
  23. llama_stack-0.3.0/llama_stack/core/utils/context.py +0 -40
  24. {llama_stack-0.3.0 → llama_stack-0.3.2}/LICENSE +0 -0
  25. {llama_stack-0.3.0 → llama_stack-0.3.2}/MANIFEST.in +0 -0
  26. {llama_stack-0.3.0 → llama_stack-0.3.2}/README.md +0 -0
  27. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/__init__.py +0 -0
  28. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/__init__.py +0 -0
  29. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/agents/__init__.py +0 -0
  30. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/agents/agents.py +0 -0
  31. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/agents/openai_responses.py +0 -0
  32. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/batches/__init__.py +0 -0
  33. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/batches/batches.py +0 -0
  34. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/benchmarks/__init__.py +0 -0
  35. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/benchmarks/benchmarks.py +0 -0
  36. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/common/__init__.py +0 -0
  37. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/common/content_types.py +0 -0
  38. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/common/errors.py +0 -0
  39. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/common/job_types.py +0 -0
  40. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/common/responses.py +0 -0
  41. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/common/training_types.py +0 -0
  42. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/common/type_system.py +0 -0
  43. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/conversations/__init__.py +0 -0
  44. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/conversations/conversations.py +0 -0
  45. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/datasetio/__init__.py +0 -0
  46. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/datasetio/datasetio.py +0 -0
  47. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/datasets/__init__.py +0 -0
  48. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/datasets/datasets.py +0 -0
  49. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/datatypes.py +0 -0
  50. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/eval/__init__.py +0 -0
  51. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/eval/eval.py +0 -0
  52. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/files/__init__.py +0 -0
  53. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/files/files.py +0 -0
  54. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/inference/__init__.py +0 -0
  55. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/inference/event_logger.py +0 -0
  56. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/inference/inference.py +0 -0
  57. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/inspect/__init__.py +0 -0
  58. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/inspect/inspect.py +0 -0
  59. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/models/__init__.py +0 -0
  60. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/models/models.py +0 -0
  61. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/post_training/__init__.py +0 -0
  62. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/post_training/post_training.py +0 -0
  63. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/prompts/__init__.py +0 -0
  64. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/prompts/prompts.py +0 -0
  65. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/providers/__init__.py +0 -0
  66. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/providers/providers.py +0 -0
  67. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/resource.py +0 -0
  68. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/safety/__init__.py +0 -0
  69. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/safety/safety.py +0 -0
  70. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/scoring/__init__.py +0 -0
  71. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/scoring/scoring.py +0 -0
  72. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/scoring_functions/__init__.py +0 -0
  73. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/scoring_functions/scoring_functions.py +0 -0
  74. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/shields/__init__.py +0 -0
  75. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/shields/shields.py +0 -0
  76. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/synthetic_data_generation/__init__.py +0 -0
  77. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/synthetic_data_generation/synthetic_data_generation.py +0 -0
  78. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/telemetry/__init__.py +0 -0
  79. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/telemetry/telemetry.py +0 -0
  80. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/tools/__init__.py +0 -0
  81. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/tools/rag_tool.py +0 -0
  82. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/tools/tools.py +0 -0
  83. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/vector_io/__init__.py +0 -0
  84. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/vector_io/vector_io.py +0 -0
  85. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/vector_stores/__init__.py +0 -0
  86. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/vector_stores/vector_stores.py +0 -0
  87. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/apis/version.py +0 -0
  88. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/__init__.py +0 -0
  89. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/llama.py +0 -0
  90. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/scripts/__init__.py +0 -0
  91. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/scripts/install-wheel-from-presigned.sh +0 -0
  92. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/scripts/run.py +0 -0
  93. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/__init__.py +0 -0
  94. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/_list_deps.py +0 -0
  95. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/list_apis.py +0 -0
  96. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/list_providers.py +0 -0
  97. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/list_stacks.py +0 -0
  98. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/remove.py +0 -0
  99. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/stack.py +0 -0
  100. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/stack/utils.py +0 -0
  101. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/subcommand.py +0 -0
  102. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/table.py +0 -0
  103. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/cli/utils.py +0 -0
  104. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/__init__.py +0 -0
  105. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/access_control/__init__.py +0 -0
  106. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/access_control/access_control.py +0 -0
  107. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/access_control/conditions.py +0 -0
  108. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/access_control/datatypes.py +0 -0
  109. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/build.py +0 -0
  110. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/client.py +0 -0
  111. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/common.sh +0 -0
  112. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/conversations/__init__.py +0 -0
  113. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/conversations/conversations.py +0 -0
  114. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/distribution.py +0 -0
  115. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/external.py +0 -0
  116. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/id_generation.py +0 -0
  117. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/inspect.py +0 -0
  118. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/library_client.py +0 -0
  119. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/prompts/__init__.py +0 -0
  120. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/prompts/prompts.py +0 -0
  121. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/providers.py +0 -0
  122. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/request_headers.py +0 -0
  123. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/resolver.py +0 -0
  124. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routers/__init__.py +0 -0
  125. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routers/datasets.py +0 -0
  126. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routers/eval_scoring.py +0 -0
  127. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routers/safety.py +0 -0
  128. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routers/tool_runtime.py +0 -0
  129. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routers/vector_io.py +0 -0
  130. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/__init__.py +0 -0
  131. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/benchmarks.py +0 -0
  132. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/common.py +0 -0
  133. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/datasets.py +0 -0
  134. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/models.py +0 -0
  135. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/scoring_functions.py +0 -0
  136. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/shields.py +0 -0
  137. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/toolgroups.py +0 -0
  138. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/routing_tables/vector_stores.py +0 -0
  139. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/server/__init__.py +0 -0
  140. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/server/auth.py +0 -0
  141. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/server/auth_providers.py +0 -0
  142. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/server/quota.py +0 -0
  143. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/server/routes.py +0 -0
  144. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/server/server.py +0 -0
  145. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/server/tracing.py +0 -0
  146. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/stack.py +0 -0
  147. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/start_stack.sh +0 -0
  148. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/storage/__init__.py +0 -0
  149. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/storage/datatypes.py +0 -0
  150. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/store/__init__.py +0 -0
  151. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/store/registry.py +0 -0
  152. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/testing_context.py +0 -0
  153. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/__init__.py +0 -0
  154. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/app.py +0 -0
  155. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/modules/__init__.py +0 -0
  156. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/modules/api.py +0 -0
  157. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/modules/utils.py +0 -0
  158. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/__init__.py +0 -0
  159. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/__init__.py +0 -0
  160. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/datasets.py +0 -0
  161. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/eval_tasks.py +0 -0
  162. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/models.py +0 -0
  163. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/providers.py +0 -0
  164. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/resources.py +0 -0
  165. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/scoring_functions.py +0 -0
  166. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/distribution/shields.py +0 -0
  167. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/evaluations/__init__.py +0 -0
  168. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/evaluations/app_eval.py +0 -0
  169. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/evaluations/native_eval.py +0 -0
  170. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/playground/__init__.py +0 -0
  171. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/playground/chat.py +0 -0
  172. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/ui/page/playground/tools.py +0 -0
  173. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/__init__.py +0 -0
  174. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/config.py +0 -0
  175. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/config_dirs.py +0 -0
  176. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/config_resolution.py +0 -0
  177. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/dynamic.py +0 -0
  178. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/exec.py +0 -0
  179. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/image_types.py +0 -0
  180. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/model_utils.py +0 -0
  181. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/prompt_for_config.py +0 -0
  182. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/core/utils/serialize.py +0 -0
  183. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/__init__.py +0 -0
  184. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/dell/__init__.py +0 -0
  185. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/dell/build.yaml +0 -0
  186. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/dell/dell.py +0 -0
  187. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/dell/run-with-safety.yaml +0 -0
  188. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/dell/run.yaml +0 -0
  189. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/meta-reference-gpu/__init__.py +0 -0
  190. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/meta-reference-gpu/build.yaml +0 -0
  191. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/meta-reference-gpu/meta_reference.py +0 -0
  192. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/meta-reference-gpu/run-with-safety.yaml +0 -0
  193. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/meta-reference-gpu/run.yaml +0 -0
  194. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/nvidia/__init__.py +0 -0
  195. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/nvidia/build.yaml +0 -0
  196. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/nvidia/nvidia.py +0 -0
  197. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/nvidia/run-with-safety.yaml +0 -0
  198. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/nvidia/run.yaml +0 -0
  199. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/open-benchmark/__init__.py +0 -0
  200. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/open-benchmark/build.yaml +0 -0
  201. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/open-benchmark/open_benchmark.py +0 -0
  202. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/open-benchmark/run.yaml +0 -0
  203. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/postgres-demo/__init__.py +0 -0
  204. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/postgres-demo/build.yaml +0 -0
  205. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/postgres-demo/postgres_demo.py +0 -0
  206. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/postgres-demo/run.yaml +0 -0
  207. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter/__init__.py +0 -0
  208. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter/run.yaml +0 -0
  209. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter-gpu/__init__.py +0 -0
  210. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter-gpu/run.yaml +0 -0
  211. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/starter-gpu/starter_gpu.py +0 -0
  212. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/template.py +0 -0
  213. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/watsonx/__init__.py +0 -0
  214. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/watsonx/build.yaml +0 -0
  215. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/watsonx/run.yaml +0 -0
  216. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/distributions/watsonx/watsonx.py +0 -0
  217. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/env.py +0 -0
  218. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/log.py +0 -0
  219. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/__init__.py +0 -0
  220. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/__init__.py +0 -0
  221. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/checkpoint.py +0 -0
  222. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/datatypes.py +0 -0
  223. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/hadamard_utils.py +0 -0
  224. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/__init__.py +0 -0
  225. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/args.py +0 -0
  226. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/chat_format.py +0 -0
  227. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/generation.py +0 -0
  228. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/interface.py +0 -0
  229. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/model.py +0 -0
  230. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/multimodal/__init__.py +0 -0
  231. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/multimodal/encoder_utils.py +0 -0
  232. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/multimodal/image_transform.py +0 -0
  233. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/multimodal/model.py +0 -0
  234. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/multimodal/utils.py +0 -0
  235. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/prompt_templates/__init__.py +0 -0
  236. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/prompt_templates/base.py +0 -0
  237. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/prompt_templates/system_prompts.py +0 -0
  238. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/prompt_templates/tool_response.py +0 -0
  239. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/quantization/__init__.py +0 -0
  240. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/quantization/loader.py +0 -0
  241. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/template_data.py +0 -0
  242. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/tokenizer.model +0 -0
  243. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/tokenizer.py +0 -0
  244. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3/tool_utils.py +0 -0
  245. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_1/__init__.py +0 -0
  246. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_1/prompt_format.md +0 -0
  247. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_1/prompts.py +0 -0
  248. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_2/__init__.py +0 -0
  249. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_2/prompts_text.py +0 -0
  250. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_2/prompts_vision.py +0 -0
  251. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_2/text_prompt_format.md +0 -0
  252. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_2/vision_prompt_format.md +0 -0
  253. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_3/__init__.py +0 -0
  254. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama3_3/prompts.py +0 -0
  255. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/__init__.py +0 -0
  256. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/args.py +0 -0
  257. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/chat_format.py +0 -0
  258. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/datatypes.py +0 -0
  259. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/ffn.py +0 -0
  260. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/generation.py +0 -0
  261. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/model.py +0 -0
  262. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/moe.py +0 -0
  263. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/preprocess.py +0 -0
  264. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/prompt_format.md +0 -0
  265. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/prompt_templates/__init__.py +0 -0
  266. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/prompt_templates/system_prompts.py +0 -0
  267. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/prompts.py +0 -0
  268. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/quantization/__init__.py +0 -0
  269. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/quantization/loader.py +0 -0
  270. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/tokenizer.model +0 -0
  271. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/tokenizer.py +0 -0
  272. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/vision/__init__.py +0 -0
  273. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/vision/embedding.py +0 -0
  274. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/llama4/vision/encoder.py +0 -0
  275. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/prompt_format.py +0 -0
  276. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/quantize_impls.py +0 -0
  277. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/sku_list.py +0 -0
  278. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/sku_types.py +0 -0
  279. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/models/llama/tokenizer_utils.py +0 -0
  280. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/__init__.py +0 -0
  281. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/datatypes.py +0 -0
  282. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/__init__.py +0 -0
  283. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/__init__.py +0 -0
  284. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/__init__.py +0 -0
  285. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/agent_instance.py +0 -0
  286. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/agents.py +0 -0
  287. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/config.py +0 -0
  288. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/persistence.py +0 -0
  289. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/responses/__init__.py +0 -0
  290. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/responses/openai_responses.py +0 -0
  291. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/responses/streaming.py +0 -0
  292. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/responses/tool_executor.py +0 -0
  293. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/responses/types.py +0 -0
  294. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/responses/utils.py +0 -0
  295. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/agents/meta_reference/safety.py +0 -0
  296. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/batches/__init__.py +0 -0
  297. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/batches/reference/__init__.py +0 -0
  298. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/batches/reference/batches.py +0 -0
  299. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/batches/reference/config.py +0 -0
  300. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/datasetio/__init__.py +0 -0
  301. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/datasetio/localfs/__init__.py +0 -0
  302. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/datasetio/localfs/config.py +0 -0
  303. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/datasetio/localfs/datasetio.py +0 -0
  304. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/eval/__init__.py +0 -0
  305. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/eval/meta_reference/__init__.py +0 -0
  306. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/eval/meta_reference/config.py +0 -0
  307. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/eval/meta_reference/eval.py +0 -0
  308. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/files/localfs/__init__.py +0 -0
  309. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/files/localfs/config.py +0 -0
  310. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/files/localfs/files.py +0 -0
  311. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/__init__.py +0 -0
  312. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/meta_reference/__init__.py +0 -0
  313. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/meta_reference/common.py +0 -0
  314. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/meta_reference/config.py +0 -0
  315. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/meta_reference/generators.py +0 -0
  316. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/meta_reference/inference.py +0 -0
  317. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/meta_reference/model_parallel.py +0 -0
  318. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/meta_reference/parallel_utils.py +0 -0
  319. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/sentence_transformers/__init__.py +0 -0
  320. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/sentence_transformers/config.py +0 -0
  321. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/inference/sentence_transformers/sentence_transformers.py +0 -0
  322. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/__init__.py +0 -0
  323. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/common/__init__.py +0 -0
  324. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/common/utils.py +0 -0
  325. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/common/validator.py +0 -0
  326. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/huggingface/__init__.py +0 -0
  327. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/huggingface/config.py +0 -0
  328. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/huggingface/post_training.py +0 -0
  329. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/huggingface/recipes/__init__.py +0 -0
  330. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/huggingface/recipes/finetune_single_device.py +0 -0
  331. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/huggingface/recipes/finetune_single_device_dpo.py +0 -0
  332. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/huggingface/utils.py +0 -0
  333. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/__init__.py +0 -0
  334. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/common/__init__.py +0 -0
  335. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/common/checkpointer.py +0 -0
  336. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/common/utils.py +0 -0
  337. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/config.py +0 -0
  338. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/datasets/__init__.py +0 -0
  339. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/datasets/format_adapter.py +0 -0
  340. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/datasets/sft.py +0 -0
  341. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/post_training.py +0 -0
  342. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/recipes/__init__.py +0 -0
  343. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/post_training/torchtune/recipes/lora_finetuning_single_device.py +0 -0
  344. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/__init__.py +0 -0
  345. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/code_scanner/__init__.py +0 -0
  346. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/code_scanner/code_scanner.py +0 -0
  347. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/code_scanner/config.py +0 -0
  348. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/llama_guard/__init__.py +0 -0
  349. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/llama_guard/config.py +0 -0
  350. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/llama_guard/llama_guard.py +0 -0
  351. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/prompt_guard/__init__.py +0 -0
  352. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/prompt_guard/config.py +0 -0
  353. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/safety/prompt_guard/prompt_guard.py +0 -0
  354. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/__init__.py +0 -0
  355. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/__init__.py +0 -0
  356. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/config.py +0 -0
  357. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring.py +0 -0
  358. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/__init__.py +0 -0
  359. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/docvqa_scoring_fn.py +0 -0
  360. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/equality_scoring_fn.py +0 -0
  361. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/fn_defs/__init__.py +0 -0
  362. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/fn_defs/docvqa.py +0 -0
  363. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/fn_defs/equality.py +0 -0
  364. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/fn_defs/ifeval.py +0 -0
  365. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/fn_defs/regex_parser_math_response.py +0 -0
  366. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/fn_defs/regex_parser_multiple_choice_answer.py +0 -0
  367. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/fn_defs/subset_of.py +0 -0
  368. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/ifeval_scoring_fn.py +0 -0
  369. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/regex_parser_math_response_scoring_fn.py +0 -0
  370. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/regex_parser_scoring_fn.py +0 -0
  371. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/scoring_fn/subset_of_scoring_fn.py +0 -0
  372. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/utils/__init__.py +0 -0
  373. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/utils/ifeval_utils.py +0 -0
  374. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/basic/utils/math_utils.py +0 -0
  375. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/__init__.py +0 -0
  376. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/braintrust.py +0 -0
  377. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/config.py +0 -0
  378. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/__init__.py +0 -0
  379. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/__init__.py +0 -0
  380. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/answer_correctness.py +0 -0
  381. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/answer_relevancy.py +0 -0
  382. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/answer_similarity.py +0 -0
  383. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/context_entity_recall.py +0 -0
  384. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/context_precision.py +0 -0
  385. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/context_recall.py +0 -0
  386. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/context_relevancy.py +0 -0
  387. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/factuality.py +0 -0
  388. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/braintrust/scoring_fn/fn_defs/faithfulness.py +0 -0
  389. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/__init__.py +0 -0
  390. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/config.py +0 -0
  391. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/scoring.py +0 -0
  392. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/scoring_fn/__init__.py +0 -0
  393. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/scoring_fn/fn_defs/__init__.py +0 -0
  394. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/scoring_fn/fn_defs/llm_as_judge_405b_simpleqa.py +0 -0
  395. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/scoring_fn/fn_defs/llm_as_judge_base.py +0 -0
  396. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/scoring/llm_as_judge/scoring_fn/llm_as_judge_scoring_fn.py +0 -0
  397. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/telemetry/__init__.py +0 -0
  398. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/telemetry/meta_reference/__init__.py +0 -0
  399. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/telemetry/meta_reference/config.py +0 -0
  400. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/telemetry/meta_reference/telemetry.py +0 -0
  401. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/tool_runtime/__init__.py +0 -0
  402. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/tool_runtime/rag/__init__.py +0 -0
  403. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/tool_runtime/rag/config.py +0 -0
  404. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/tool_runtime/rag/context_retriever.py +0 -0
  405. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/tool_runtime/rag/memory.py +0 -0
  406. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/__init__.py +0 -0
  407. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/chroma/__init__.py +0 -0
  408. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/chroma/config.py +0 -0
  409. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/faiss/__init__.py +0 -0
  410. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/faiss/config.py +0 -0
  411. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/faiss/faiss.py +0 -0
  412. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/milvus/__init__.py +0 -0
  413. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/milvus/config.py +0 -0
  414. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/qdrant/__init__.py +0 -0
  415. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/qdrant/config.py +0 -0
  416. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/sqlite_vec/__init__.py +0 -0
  417. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/sqlite_vec/config.py +0 -0
  418. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/inline/vector_io/sqlite_vec/sqlite_vec.py +0 -0
  419. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/__init__.py +0 -0
  420. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/agents.py +0 -0
  421. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/batches.py +0 -0
  422. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/datasetio.py +0 -0
  423. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/eval.py +0 -0
  424. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/files.py +0 -0
  425. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/inference.py +0 -0
  426. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/post_training.py +0 -0
  427. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/safety.py +0 -0
  428. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/scoring.py +0 -0
  429. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/tool_runtime.py +0 -0
  430. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/registry/vector_io.py +0 -0
  431. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/__init__.py +0 -0
  432. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/agents/__init__.py +0 -0
  433. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/datasetio/__init__.py +0 -0
  434. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/datasetio/huggingface/__init__.py +0 -0
  435. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/datasetio/huggingface/config.py +0 -0
  436. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/datasetio/huggingface/huggingface.py +0 -0
  437. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/datasetio/nvidia/__init__.py +0 -0
  438. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/datasetio/nvidia/config.py +0 -0
  439. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/datasetio/nvidia/datasetio.py +0 -0
  440. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/eval/__init__.py +0 -0
  441. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/eval/nvidia/__init__.py +0 -0
  442. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/eval/nvidia/config.py +0 -0
  443. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/eval/nvidia/eval.py +0 -0
  444. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/files/s3/__init__.py +0 -0
  445. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/files/s3/config.py +0 -0
  446. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/files/s3/files.py +0 -0
  447. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/__init__.py +0 -0
  448. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/anthropic/__init__.py +0 -0
  449. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/anthropic/anthropic.py +0 -0
  450. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/anthropic/config.py +0 -0
  451. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/azure/__init__.py +0 -0
  452. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/azure/azure.py +0 -0
  453. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/azure/config.py +0 -0
  454. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/bedrock/__init__.py +0 -0
  455. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/bedrock/bedrock.py +0 -0
  456. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/bedrock/config.py +0 -0
  457. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/bedrock/models.py +0 -0
  458. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/cerebras/__init__.py +0 -0
  459. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/cerebras/cerebras.py +0 -0
  460. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/cerebras/config.py +0 -0
  461. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/databricks/__init__.py +0 -0
  462. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/databricks/config.py +0 -0
  463. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/databricks/databricks.py +0 -0
  464. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/fireworks/__init__.py +0 -0
  465. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/fireworks/config.py +0 -0
  466. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/fireworks/fireworks.py +0 -0
  467. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/gemini/__init__.py +0 -0
  468. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/gemini/config.py +0 -0
  469. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/gemini/gemini.py +0 -0
  470. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/groq/__init__.py +0 -0
  471. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/groq/config.py +0 -0
  472. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/groq/groq.py +0 -0
  473. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/llama_openai_compat/__init__.py +0 -0
  474. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/llama_openai_compat/config.py +0 -0
  475. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/llama_openai_compat/llama.py +0 -0
  476. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/nvidia/__init__.py +0 -0
  477. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/nvidia/config.py +0 -0
  478. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/nvidia/nvidia.py +0 -0
  479. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/nvidia/utils.py +0 -0
  480. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/ollama/__init__.py +0 -0
  481. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/ollama/config.py +0 -0
  482. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/ollama/ollama.py +0 -0
  483. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/openai/__init__.py +0 -0
  484. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/openai/config.py +0 -0
  485. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/openai/openai.py +0 -0
  486. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/passthrough/__init__.py +0 -0
  487. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/passthrough/config.py +0 -0
  488. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/passthrough/passthrough.py +0 -0
  489. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/runpod/__init__.py +0 -0
  490. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/runpod/config.py +0 -0
  491. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/runpod/runpod.py +0 -0
  492. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/sambanova/__init__.py +0 -0
  493. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/sambanova/config.py +0 -0
  494. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/sambanova/sambanova.py +0 -0
  495. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/tgi/__init__.py +0 -0
  496. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/tgi/config.py +0 -0
  497. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/tgi/tgi.py +0 -0
  498. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/together/__init__.py +0 -0
  499. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/together/config.py +0 -0
  500. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/together/together.py +0 -0
  501. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/vertexai/__init__.py +0 -0
  502. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/vertexai/config.py +0 -0
  503. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/vertexai/vertexai.py +0 -0
  504. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/vllm/__init__.py +0 -0
  505. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/vllm/config.py +0 -0
  506. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/vllm/vllm.py +0 -0
  507. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/watsonx/__init__.py +0 -0
  508. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/watsonx/config.py +0 -0
  509. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/inference/watsonx/watsonx.py +0 -0
  510. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/post_training/__init__.py +0 -0
  511. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/post_training/nvidia/__init__.py +0 -0
  512. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/post_training/nvidia/config.py +0 -0
  513. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/post_training/nvidia/models.py +0 -0
  514. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/post_training/nvidia/post_training.py +0 -0
  515. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/post_training/nvidia/utils.py +0 -0
  516. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/__init__.py +0 -0
  517. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/bedrock/__init__.py +0 -0
  518. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/bedrock/bedrock.py +0 -0
  519. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/bedrock/config.py +0 -0
  520. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/nvidia/__init__.py +0 -0
  521. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/nvidia/config.py +0 -0
  522. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/nvidia/nvidia.py +0 -0
  523. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/sambanova/__init__.py +0 -0
  524. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/sambanova/config.py +0 -0
  525. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/safety/sambanova/sambanova.py +0 -0
  526. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/__init__.py +0 -0
  527. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/bing_search/__init__.py +0 -0
  528. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/bing_search/bing_search.py +0 -0
  529. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/bing_search/config.py +0 -0
  530. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/brave_search/__init__.py +0 -0
  531. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/brave_search/brave_search.py +0 -0
  532. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/brave_search/config.py +0 -0
  533. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/model_context_protocol/__init__.py +0 -0
  534. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/model_context_protocol/config.py +0 -0
  535. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/model_context_protocol/model_context_protocol.py +0 -0
  536. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/tavily_search/__init__.py +0 -0
  537. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/tavily_search/config.py +0 -0
  538. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/tavily_search/tavily_search.py +0 -0
  539. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/wolfram_alpha/__init__.py +0 -0
  540. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/wolfram_alpha/config.py +0 -0
  541. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/tool_runtime/wolfram_alpha/wolfram_alpha.py +0 -0
  542. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/__init__.py +0 -0
  543. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/chroma/__init__.py +0 -0
  544. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/chroma/chroma.py +0 -0
  545. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/chroma/config.py +0 -0
  546. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/milvus/__init__.py +0 -0
  547. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/milvus/config.py +0 -0
  548. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/milvus/milvus.py +0 -0
  549. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/pgvector/__init__.py +0 -0
  550. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/pgvector/config.py +0 -0
  551. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/pgvector/pgvector.py +0 -0
  552. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/qdrant/__init__.py +0 -0
  553. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/qdrant/config.py +0 -0
  554. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/qdrant/qdrant.py +0 -0
  555. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/weaviate/__init__.py +0 -0
  556. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/weaviate/config.py +0 -0
  557. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/remote/vector_io/weaviate/weaviate.py +0 -0
  558. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/__init__.py +0 -0
  559. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/bedrock/__init__.py +0 -0
  560. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/bedrock/client.py +0 -0
  561. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/bedrock/config.py +0 -0
  562. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/bedrock/refreshable_boto_session.py +0 -0
  563. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/common/__init__.py +0 -0
  564. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/common/data_schema_validator.py +0 -0
  565. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/datasetio/__init__.py +0 -0
  566. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/datasetio/url_utils.py +0 -0
  567. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/files/__init__.py +0 -0
  568. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/files/form_data.py +0 -0
  569. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/__init__.py +0 -0
  570. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/litellm_openai_mixin.py +0 -0
  571. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/model_registry.py +0 -0
  572. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/openai_compat.py +0 -0
  573. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/inference/prompt_adapter.py +0 -0
  574. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/__init__.py +0 -0
  575. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/api.py +0 -0
  576. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/config.py +0 -0
  577. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/kvstore.py +0 -0
  578. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/mongodb/__init__.py +0 -0
  579. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/mongodb/mongodb.py +0 -0
  580. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/postgres/__init__.py +0 -0
  581. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/postgres/postgres.py +0 -0
  582. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/redis/__init__.py +0 -0
  583. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/redis/redis.py +0 -0
  584. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/sqlite/__init__.py +0 -0
  585. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/sqlite/config.py +0 -0
  586. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/kvstore/sqlite/sqlite.py +0 -0
  587. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/memory/__init__.py +0 -0
  588. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/memory/file_utils.py +0 -0
  589. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/memory/openai_vector_store_mixin.py +0 -0
  590. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/memory/vector_store.py +0 -0
  591. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/pagination.py +0 -0
  592. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/responses/__init__.py +0 -0
  593. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/scheduler.py +0 -0
  594. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/scoring/__init__.py +0 -0
  595. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/scoring/aggregation_utils.py +0 -0
  596. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/scoring/base_scoring_fn.py +0 -0
  597. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/scoring/basic_scoring_utils.py +0 -0
  598. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/sqlstore/__init__.py +0 -0
  599. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/sqlstore/api.py +0 -0
  600. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/sqlstore/sqlalchemy_sqlstore.py +0 -0
  601. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/sqlstore/sqlstore.py +0 -0
  602. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/telemetry/__init__.py +0 -0
  603. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/telemetry/trace_protocol.py +0 -0
  604. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/telemetry/tracing.py +0 -0
  605. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/tools/__init__.py +0 -0
  606. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/tools/mcp.py +0 -0
  607. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/tools/ttl_dict.py +0 -0
  608. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/vector_io/__init__.py +0 -0
  609. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/providers/utils/vector_io/vector_utils.py +0 -0
  610. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/schema_utils.py +0 -0
  611. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/__init__.py +0 -0
  612. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/auxiliary.py +0 -0
  613. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/classdef.py +0 -0
  614. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/core.py +0 -0
  615. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/deserializer.py +0 -0
  616. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/docstring.py +0 -0
  617. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/exception.py +0 -0
  618. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/inspection.py +0 -0
  619. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/mapping.py +0 -0
  620. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/name.py +0 -0
  621. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/py.typed +0 -0
  622. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/schema.py +0 -0
  623. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/serialization.py +0 -0
  624. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/serializer.py +0 -0
  625. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/slots.py +0 -0
  626. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/strong_typing/topological.py +0 -0
  627. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/testing/__init__.py +0 -0
  628. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack/testing/api_recorder.py +0 -0
  629. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack.egg-info/dependency_links.txt +0 -0
  630. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack.egg-info/entry_points.txt +0 -0
  631. {llama_stack-0.3.0 → llama_stack-0.3.2}/llama_stack.egg-info/top_level.txt +0 -0
  632. {llama_stack-0.3.0 → llama_stack-0.3.2}/setup.cfg +0 -0
  633. {llama_stack-0.3.0 → llama_stack-0.3.2}/tests/integration/test_cases/inference/chat_completion.json +0 -0
  634. {llama_stack-0.3.0 → llama_stack-0.3.2}/tests/integration/test_cases/inference/completion.json +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: llama_stack
3
- Version: 0.3.0
3
+ Version: 0.3.2
4
4
  Summary: Llama Stack
5
5
  Author-email: Meta Llama <llama-oss@meta.com>
6
6
  License: MIT
@@ -22,7 +22,7 @@ Requires-Dist: fire
22
22
  Requires-Dist: httpx
23
23
  Requires-Dist: jinja2>=3.1.6
24
24
  Requires-Dist: jsonschema
25
- Requires-Dist: llama-stack-client>=0.3.0
25
+ Requires-Dist: llama-stack-client>=0.3.2
26
26
  Requires-Dist: openai>=1.107
27
27
  Requires-Dist: prompt-toolkit
28
28
  Requires-Dist: python-dotenv
@@ -44,7 +44,7 @@ Requires-Dist: sqlalchemy[asyncio]>=2.0.41
44
44
  Provides-Extra: ui
45
45
  Requires-Dist: streamlit; extra == "ui"
46
46
  Requires-Dist: pandas; extra == "ui"
47
- Requires-Dist: llama-stack-client>=0.3.0; extra == "ui"
47
+ Requires-Dist: llama-stack-client>=0.3.2; extra == "ui"
48
48
  Requires-Dist: streamlit-option-menu; extra == "ui"
49
49
  Dynamic: license-file
50
50
 
@@ -46,6 +46,10 @@ class StackListDeps(Subcommand):
46
46
  def _run_stack_list_deps_command(self, args: argparse.Namespace) -> None:
47
47
  # always keep implementation completely silo-ed away from CLI so CLI
48
48
  # can be fast to load and reduces dependencies
49
+ if not args.config and not args.providers:
50
+ self.parser.print_help()
51
+ self.parser.exit()
52
+
49
53
  from ._list_deps import run_stack_list_deps_command
50
54
 
51
55
  return run_stack_list_deps_command(args)
@@ -106,7 +106,8 @@ class StackRun(Subcommand):
106
106
 
107
107
  try:
108
108
  config = parse_and_maybe_upgrade_config(config_dict)
109
- if not os.path.exists(str(config.external_providers_dir)):
109
+ # Create external_providers_dir if it's specified and doesn't exist
110
+ if config.external_providers_dir and not os.path.exists(str(config.external_providers_dir)):
110
111
  os.makedirs(str(config.external_providers_dir), exist_ok=True)
111
112
  except AttributeError as e:
112
113
  self.parser.error(f"failed to parse config file '{config_file}':\n {e}")
@@ -127,7 +128,7 @@ class StackRun(Subcommand):
127
128
  config = StackRunConfig(**cast_image_name_to_string(replace_env_vars(config_contents)))
128
129
 
129
130
  port = args.port or config.server.port
130
- host = config.server.host or ["::", "0.0.0.0"]
131
+ host = config.server.host or "0.0.0.0"
131
132
 
132
133
  # Set the config file in environment so create_app can find it
133
134
  os.environ["LLAMA_STACK_CONFIG"] = str(config_file)
@@ -139,6 +140,7 @@ class StackRun(Subcommand):
139
140
  "lifespan": "on",
140
141
  "log_level": logger.getEffectiveLevel(),
141
142
  "log_config": logger_config,
143
+ "workers": config.server.workers,
142
144
  }
143
145
 
144
146
  keyfile = config.server.tls_keyfile
@@ -17,7 +17,6 @@ from llama_stack.core.distribution import (
17
17
  get_provider_registry,
18
18
  )
19
19
  from llama_stack.core.stack import cast_image_name_to_string, replace_env_vars
20
- from llama_stack.core.utils.config_dirs import EXTERNAL_PROVIDERS_DIR
21
20
  from llama_stack.core.utils.dynamic import instantiate_class_type
22
21
  from llama_stack.core.utils.prompt_for_config import prompt_for_config
23
22
  from llama_stack.log import get_logger
@@ -194,19 +193,11 @@ def upgrade_from_routing_table(
194
193
 
195
194
 
196
195
  def parse_and_maybe_upgrade_config(config_dict: dict[str, Any]) -> StackRunConfig:
197
- version = config_dict.get("version", None)
198
- if version == LLAMA_STACK_RUN_CONFIG_VERSION:
199
- processed_config_dict = replace_env_vars(config_dict)
200
- return StackRunConfig(**cast_image_name_to_string(processed_config_dict))
201
-
202
196
  if "routing_table" in config_dict:
203
197
  logger.info("Upgrading config...")
204
198
  config_dict = upgrade_from_routing_table(config_dict)
205
199
 
206
200
  config_dict["version"] = LLAMA_STACK_RUN_CONFIG_VERSION
207
201
 
208
- if not config_dict.get("external_providers_dir", None):
209
- config_dict["external_providers_dir"] = EXTERNAL_PROVIDERS_DIR
210
-
211
202
  processed_config_dict = replace_env_vars(config_dict)
212
203
  return StackRunConfig(**cast_image_name_to_string(processed_config_dict))
@@ -471,6 +471,10 @@ class ServerConfig(BaseModel):
471
471
  "- true: Enable localhost CORS for development\n"
472
472
  "- {allow_origins: [...], allow_methods: [...], ...}: Full configuration",
473
473
  )
474
+ workers: int = Field(
475
+ default=1,
476
+ description="Number of workers to use for the server",
477
+ )
474
478
 
475
479
 
476
480
  class StackRunConfig(BaseModel):
@@ -105,7 +105,8 @@ class InferenceRouter(Inference):
105
105
  prompt_tokens: int,
106
106
  completion_tokens: int,
107
107
  total_tokens: int,
108
- model: Model,
108
+ fully_qualified_model_id: str,
109
+ provider_id: str,
109
110
  ) -> list[MetricEvent]:
110
111
  """Constructs a list of MetricEvent objects containing token usage metrics.
111
112
 
@@ -113,7 +114,8 @@ class InferenceRouter(Inference):
113
114
  prompt_tokens: Number of tokens in the prompt
114
115
  completion_tokens: Number of tokens in the completion
115
116
  total_tokens: Total number of tokens used
116
- model: Model object containing model_id and provider_id
117
+ fully_qualified_model_id:
118
+ provider_id: The provider identifier
117
119
 
118
120
  Returns:
119
121
  List of MetricEvent objects with token usage metrics
@@ -139,8 +141,8 @@ class InferenceRouter(Inference):
139
141
  timestamp=datetime.now(UTC),
140
142
  unit="tokens",
141
143
  attributes={
142
- "model_id": model.model_id,
143
- "provider_id": model.provider_id,
144
+ "model_id": fully_qualified_model_id,
145
+ "provider_id": provider_id,
144
146
  },
145
147
  )
146
148
  )
@@ -153,7 +155,9 @@ class InferenceRouter(Inference):
153
155
  total_tokens: int,
154
156
  model: Model,
155
157
  ) -> list[MetricInResponse]:
156
- metrics = self._construct_metrics(prompt_tokens, completion_tokens, total_tokens, model)
158
+ metrics = self._construct_metrics(
159
+ prompt_tokens, completion_tokens, total_tokens, model.model_id, model.provider_id
160
+ )
157
161
  if self.telemetry:
158
162
  for metric in metrics:
159
163
  enqueue_event(metric)
@@ -173,14 +177,25 @@ class InferenceRouter(Inference):
173
177
  encoded = self.formatter.encode_content(messages)
174
178
  return len(encoded.tokens) if encoded and encoded.tokens else 0
175
179
 
176
- async def _get_model(self, model_id: str, expected_model_type: str) -> Model:
177
- """takes a model id and gets model after ensuring that it is accessible and of the correct type"""
178
- model = await self.routing_table.get_model(model_id)
179
- if model is None:
180
+ async def _get_model_provider(self, model_id: str, expected_model_type: str) -> tuple[Inference, str]:
181
+ model = await self.routing_table.get_object_by_identifier("model", model_id)
182
+ if model:
183
+ if model.model_type != expected_model_type:
184
+ raise ModelTypeError(model_id, model.model_type, expected_model_type)
185
+
186
+ provider = await self.routing_table.get_provider_impl(model.identifier)
187
+ return provider, model.provider_resource_id
188
+
189
+ splits = model_id.split("/", maxsplit=1)
190
+ if len(splits) != 2:
191
+ raise ModelNotFoundError(model_id)
192
+
193
+ provider_id, provider_resource_id = splits
194
+ if provider_id not in self.routing_table.impls_by_provider_id:
195
+ logger.warning(f"Provider {provider_id} not found for model {model_id}")
180
196
  raise ModelNotFoundError(model_id)
181
- if model.model_type != expected_model_type:
182
- raise ModelTypeError(model_id, model.model_type, expected_model_type)
183
- return model
197
+
198
+ return self.routing_table.impls_by_provider_id[provider_id], provider_resource_id
184
199
 
185
200
  async def openai_completion(
186
201
  self,
@@ -189,24 +204,24 @@ class InferenceRouter(Inference):
189
204
  logger.debug(
190
205
  f"InferenceRouter.openai_completion: model={params.model}, stream={params.stream}, prompt={params.prompt}",
191
206
  )
192
- model_obj = await self._get_model(params.model, ModelType.llm)
193
-
194
- # Update params with the resolved model identifier
195
- params.model = model_obj.identifier
207
+ request_model_id = params.model
208
+ provider, provider_resource_id = await self._get_model_provider(params.model, ModelType.llm)
209
+ params.model = provider_resource_id
196
210
 
197
- provider = await self.routing_table.get_provider_impl(model_obj.identifier)
198
211
  if params.stream:
199
212
  return await provider.openai_completion(params)
200
213
  # TODO: Metrics do NOT work with openai_completion stream=True due to the fact
201
214
  # that we do not return an AsyncIterator, our tests expect a stream of chunks we cannot intercept currently.
202
215
 
203
216
  response = await provider.openai_completion(params)
217
+ response.model = request_model_id
204
218
  if self.telemetry:
205
219
  metrics = self._construct_metrics(
206
220
  prompt_tokens=response.usage.prompt_tokens,
207
221
  completion_tokens=response.usage.completion_tokens,
208
222
  total_tokens=response.usage.total_tokens,
209
- model=model_obj,
223
+ fully_qualified_model_id=request_model_id,
224
+ provider_id=provider.__provider_id__,
210
225
  )
211
226
  for metric in metrics:
212
227
  enqueue_event(metric)
@@ -224,7 +239,9 @@ class InferenceRouter(Inference):
224
239
  logger.debug(
225
240
  f"InferenceRouter.openai_chat_completion: model={params.model}, stream={params.stream}, messages={params.messages}",
226
241
  )
227
- model_obj = await self._get_model(params.model, ModelType.llm)
242
+ request_model_id = params.model
243
+ provider, provider_resource_id = await self._get_model_provider(params.model, ModelType.llm)
244
+ params.model = provider_resource_id
228
245
 
229
246
  # Use the OpenAI client for a bit of extra input validation without
230
247
  # exposing the OpenAI client itself as part of our API surface
@@ -242,10 +259,6 @@ class InferenceRouter(Inference):
242
259
  params.tool_choice = None
243
260
  params.tools = None
244
261
 
245
- # Update params with the resolved model identifier
246
- params.model = model_obj.identifier
247
-
248
- provider = await self.routing_table.get_provider_impl(model_obj.identifier)
249
262
  if params.stream:
250
263
  response_stream = await provider.openai_chat_completion(params)
251
264
 
@@ -253,11 +266,13 @@ class InferenceRouter(Inference):
253
266
  # We need to add metrics to each chunk and store the final completion
254
267
  return self.stream_tokens_and_compute_metrics_openai_chat(
255
268
  response=response_stream,
256
- model=model_obj,
269
+ fully_qualified_model_id=request_model_id,
270
+ provider_id=provider.__provider_id__,
257
271
  messages=params.messages,
258
272
  )
259
273
 
260
274
  response = await self._nonstream_openai_chat_completion(provider, params)
275
+ response.model = request_model_id
261
276
 
262
277
  # Store the response with the ID that will be returned to the client
263
278
  if self.store:
@@ -268,7 +283,8 @@ class InferenceRouter(Inference):
268
283
  prompt_tokens=response.usage.prompt_tokens,
269
284
  completion_tokens=response.usage.completion_tokens,
270
285
  total_tokens=response.usage.total_tokens,
271
- model=model_obj,
286
+ fully_qualified_model_id=request_model_id,
287
+ provider_id=provider.__provider_id__,
272
288
  )
273
289
  for metric in metrics:
274
290
  enqueue_event(metric)
@@ -285,13 +301,13 @@ class InferenceRouter(Inference):
285
301
  logger.debug(
286
302
  f"InferenceRouter.openai_embeddings: model={params.model}, input_type={type(params.input)}, encoding_format={params.encoding_format}, dimensions={params.dimensions}",
287
303
  )
288
- model_obj = await self._get_model(params.model, ModelType.embedding)
289
-
290
- # Update model to use resolved identifier
291
- params.model = model_obj.identifier
304
+ request_model_id = params.model
305
+ provider, provider_resource_id = await self._get_model_provider(params.model, ModelType.embedding)
306
+ params.model = provider_resource_id
292
307
 
293
- provider = await self.routing_table.get_provider_impl(model_obj.identifier)
294
- return await provider.openai_embeddings(params)
308
+ response = await provider.openai_embeddings(params)
309
+ response.model = request_model_id
310
+ return response
295
311
 
296
312
  async def list_chat_completions(
297
313
  self,
@@ -347,7 +363,8 @@ class InferenceRouter(Inference):
347
363
  self,
348
364
  response,
349
365
  prompt_tokens,
350
- model,
366
+ fully_qualified_model_id: str,
367
+ provider_id: str,
351
368
  tool_prompt_format: ToolPromptFormat | None = None,
352
369
  ) -> AsyncGenerator[ChatCompletionResponseStreamChunk, None] | AsyncGenerator[CompletionResponseStreamChunk, None]:
353
370
  completion_text = ""
@@ -385,7 +402,8 @@ class InferenceRouter(Inference):
385
402
  prompt_tokens=prompt_tokens,
386
403
  completion_tokens=completion_tokens,
387
404
  total_tokens=total_tokens,
388
- model=model,
405
+ fully_qualified_model_id=fully_qualified_model_id,
406
+ provider_id=provider_id,
389
407
  )
390
408
  for metric in completion_metrics:
391
409
  if metric.metric in [
@@ -405,7 +423,8 @@ class InferenceRouter(Inference):
405
423
  prompt_tokens or 0,
406
424
  completion_tokens or 0,
407
425
  total_tokens,
408
- model,
426
+ fully_qualified_model_id=fully_qualified_model_id,
427
+ provider_id=provider_id,
409
428
  )
410
429
  async_metrics = [
411
430
  MetricInResponse(metric=metric.metric, value=metric.value) for metric in completion_metrics
@@ -417,7 +436,8 @@ class InferenceRouter(Inference):
417
436
  self,
418
437
  response: ChatCompletionResponse | CompletionResponse,
419
438
  prompt_tokens,
420
- model,
439
+ fully_qualified_model_id: str,
440
+ provider_id: str,
421
441
  tool_prompt_format: ToolPromptFormat | None = None,
422
442
  ):
423
443
  if isinstance(response, ChatCompletionResponse):
@@ -434,7 +454,8 @@ class InferenceRouter(Inference):
434
454
  prompt_tokens=prompt_tokens,
435
455
  completion_tokens=completion_tokens,
436
456
  total_tokens=total_tokens,
437
- model=model,
457
+ fully_qualified_model_id=fully_qualified_model_id,
458
+ provider_id=provider_id,
438
459
  )
439
460
  for metric in completion_metrics:
440
461
  if metric.metric in ["completion_tokens", "total_tokens"]: # Only log completion and total tokens
@@ -448,14 +469,16 @@ class InferenceRouter(Inference):
448
469
  prompt_tokens or 0,
449
470
  completion_tokens or 0,
450
471
  total_tokens,
451
- model,
472
+ fully_qualified_model_id=fully_qualified_model_id,
473
+ provider_id=provider_id,
452
474
  )
453
475
  return [MetricInResponse(metric=metric.metric, value=metric.value) for metric in metrics]
454
476
 
455
477
  async def stream_tokens_and_compute_metrics_openai_chat(
456
478
  self,
457
479
  response: AsyncIterator[OpenAIChatCompletionChunk],
458
- model: Model,
480
+ fully_qualified_model_id: str,
481
+ provider_id: str,
459
482
  messages: list[OpenAIMessageParam] | None = None,
460
483
  ) -> AsyncIterator[OpenAIChatCompletionChunk]:
461
484
  """Stream OpenAI chat completion chunks, compute metrics, and store the final completion."""
@@ -475,6 +498,8 @@ class InferenceRouter(Inference):
475
498
  if created is None and chunk.created:
476
499
  created = chunk.created
477
500
 
501
+ chunk.model = fully_qualified_model_id
502
+
478
503
  # Accumulate choice data for final assembly
479
504
  if chunk.choices:
480
505
  for choice_delta in chunk.choices:
@@ -531,7 +556,8 @@ class InferenceRouter(Inference):
531
556
  prompt_tokens=chunk.usage.prompt_tokens,
532
557
  completion_tokens=chunk.usage.completion_tokens,
533
558
  total_tokens=chunk.usage.total_tokens,
534
- model=model,
559
+ model_id=fully_qualified_model_id,
560
+ provider_id=provider_id,
535
561
  )
536
562
  for metric in metrics:
537
563
  enqueue_event(metric)
@@ -579,7 +605,7 @@ class InferenceRouter(Inference):
579
605
  id=id,
580
606
  choices=assembled_choices,
581
607
  created=created or int(time.time()),
582
- model=model.identifier,
608
+ model=fully_qualified_model_id,
583
609
  object="chat.completion",
584
610
  )
585
611
  logger.debug(f"InferenceRouter.completion_response: {final_response}")
@@ -0,0 +1,84 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ # All rights reserved.
3
+ #
4
+ # This source code is licensed under the terms described in the LICENSE file in
5
+ # the root directory of this source tree.
6
+
7
+ from collections.abc import AsyncGenerator
8
+ from contextvars import ContextVar
9
+
10
+ from llama_stack.providers.utils.telemetry.tracing import CURRENT_TRACE_CONTEXT
11
+
12
+ _MISSING = object()
13
+
14
+
15
+ def preserve_contexts_async_generator[T](
16
+ gen: AsyncGenerator[T, None], context_vars: list[ContextVar]
17
+ ) -> AsyncGenerator[T, None]:
18
+ """
19
+ Wraps an async generator to preserve context variables across iterations.
20
+ This is needed because we start a new asyncio event loop for each streaming request,
21
+ and we need to preserve the context across the event loop boundary.
22
+ """
23
+ # Capture initial context values
24
+ initial_context_values = {context_var.name: context_var.get() for context_var in context_vars}
25
+
26
+ async def wrapper() -> AsyncGenerator[T, None]:
27
+ while True:
28
+ previous_values: dict[ContextVar, object] = {}
29
+ tokens: dict[ContextVar, object] = {}
30
+
31
+ # Restore ALL context values before any await and capture previous state
32
+ # This is needed to propagate context across async generator boundaries
33
+ for context_var in context_vars:
34
+ try:
35
+ previous_values[context_var] = context_var.get()
36
+ except LookupError:
37
+ previous_values[context_var] = _MISSING
38
+ tokens[context_var] = context_var.set(initial_context_values[context_var.name])
39
+
40
+ def _restore_context_var(context_var: ContextVar, *, _tokens=tokens, _prev=previous_values) -> None:
41
+ token = _tokens.get(context_var)
42
+ previous_value = _prev.get(context_var, _MISSING)
43
+ if token is not None:
44
+ try:
45
+ context_var.reset(token)
46
+ return
47
+ except (RuntimeError, ValueError):
48
+ pass
49
+
50
+ if previous_value is _MISSING:
51
+ context_var.set(None)
52
+ else:
53
+ context_var.set(previous_value)
54
+
55
+ try:
56
+ item = await gen.__anext__()
57
+ except StopAsyncIteration:
58
+ # Restore all context vars before exiting to prevent leaks
59
+ # Use _restore_context_var for all vars to properly restore to previous values
60
+ for context_var in context_vars:
61
+ _restore_context_var(context_var)
62
+ break
63
+ except Exception:
64
+ # Restore all context vars on exception
65
+ for context_var in context_vars:
66
+ _restore_context_var(context_var)
67
+ raise
68
+
69
+ try:
70
+ yield item
71
+ # Update our tracked values with any changes made during this iteration
72
+ # Only for non-trace context vars - trace context must persist across yields
73
+ # to allow nested span tracking for telemetry
74
+ for context_var in context_vars:
75
+ if context_var is not CURRENT_TRACE_CONTEXT:
76
+ initial_context_values[context_var.name] = context_var.get()
77
+ finally:
78
+ # Restore non-trace context vars after each yield to prevent leaks between requests
79
+ # CURRENT_TRACE_CONTEXT is NOT restored here to preserve telemetry span stack
80
+ for context_var in context_vars:
81
+ if context_var is not CURRENT_TRACE_CONTEXT:
82
+ _restore_context_var(context_var)
83
+
84
+ return wrapper()
@@ -57,4 +57,5 @@ image_type: venv
57
57
  additional_pip_packages:
58
58
  - aiosqlite
59
59
  - asyncpg
60
+ - psycopg2-binary
60
61
  - sqlalchemy[asyncio]