vanna 2.0.1__tar.gz → 2.0.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 (288) hide show
  1. {vanna-2.0.1 → vanna-2.0.2}/PKG-INFO +1 -1
  2. {vanna-2.0.1 → vanna-2.0.2}/pyproject.toml +2 -2
  3. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/chromadb/agent_memory.py +74 -6
  4. {vanna-2.0.1 → vanna-2.0.2}/LICENSE +0 -0
  5. {vanna-2.0.1 → vanna-2.0.2}/README.md +0 -0
  6. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/__init__.py +0 -0
  7. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/agents/__init__.py +0 -0
  8. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/__init__.py +0 -0
  9. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/agent_memory/__init__.py +0 -0
  10. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/agent_memory/base.py +0 -0
  11. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/agent_memory/models.py +0 -0
  12. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/file_system/__init__.py +0 -0
  13. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/file_system/base.py +0 -0
  14. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/file_system/models.py +0 -0
  15. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/sql_runner/__init__.py +0 -0
  16. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/sql_runner/base.py +0 -0
  17. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/capabilities/sql_runner/models.py +0 -0
  18. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/__init__.py +0 -0
  19. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/base.py +0 -0
  20. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/__init__.py +0 -0
  21. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/containers/__init__.py +0 -0
  22. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/containers/card.py +0 -0
  23. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/data/__init__.py +0 -0
  24. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/data/chart.py +0 -0
  25. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/data/dataframe.py +0 -0
  26. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/__init__.py +0 -0
  27. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/badge.py +0 -0
  28. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/icon_text.py +0 -0
  29. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/log_viewer.py +0 -0
  30. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/notification.py +0 -0
  31. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/progress.py +0 -0
  32. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/status_card.py +0 -0
  33. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/feedback/status_indicator.py +0 -0
  34. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/interactive/__init__.py +0 -0
  35. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/interactive/button.py +0 -0
  36. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/interactive/task_list.py +0 -0
  37. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/interactive/ui_state.py +0 -0
  38. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/specialized/__init__.py +0 -0
  39. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/specialized/artifact.py +0 -0
  40. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/rich/text.py +0 -0
  41. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/simple/__init__.py +0 -0
  42. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/simple/image.py +0 -0
  43. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/simple/link.py +0 -0
  44. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/components/simple/text.py +0 -0
  45. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/__init__.py +0 -0
  46. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/_compat.py +0 -0
  47. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/agent/__init__.py +0 -0
  48. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/agent/agent.py +0 -0
  49. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/agent/config.py +0 -0
  50. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/audit/__init__.py +0 -0
  51. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/audit/base.py +0 -0
  52. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/audit/models.py +0 -0
  53. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/component_manager.py +0 -0
  54. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/components.py +0 -0
  55. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/enhancer/__init__.py +0 -0
  56. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/enhancer/base.py +0 -0
  57. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/enhancer/default.py +0 -0
  58. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/enricher/__init__.py +0 -0
  59. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/enricher/base.py +0 -0
  60. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/errors.py +0 -0
  61. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/evaluation/__init__.py +0 -0
  62. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/evaluation/base.py +0 -0
  63. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/evaluation/dataset.py +0 -0
  64. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/evaluation/evaluators.py +0 -0
  65. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/evaluation/report.py +0 -0
  66. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/evaluation/runner.py +0 -0
  67. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/filter/__init__.py +0 -0
  68. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/filter/base.py +0 -0
  69. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/lifecycle/__init__.py +0 -0
  70. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/lifecycle/base.py +0 -0
  71. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/llm/__init__.py +0 -0
  72. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/llm/base.py +0 -0
  73. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/llm/models.py +0 -0
  74. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/middleware/__init__.py +0 -0
  75. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/middleware/base.py +0 -0
  76. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/observability/__init__.py +0 -0
  77. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/observability/base.py +0 -0
  78. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/observability/models.py +0 -0
  79. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/recovery/__init__.py +0 -0
  80. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/recovery/base.py +0 -0
  81. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/recovery/models.py +0 -0
  82. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/registry.py +0 -0
  83. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/rich_component.py +0 -0
  84. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/simple_component.py +0 -0
  85. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/storage/__init__.py +0 -0
  86. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/storage/base.py +0 -0
  87. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/storage/models.py +0 -0
  88. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/system_prompt/__init__.py +0 -0
  89. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/system_prompt/base.py +0 -0
  90. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/system_prompt/default.py +0 -0
  91. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/tool/__init__.py +0 -0
  92. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/tool/base.py +0 -0
  93. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/tool/models.py +0 -0
  94. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/user/__init__.py +0 -0
  95. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/user/base.py +0 -0
  96. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/user/models.py +0 -0
  97. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/user/request_context.py +0 -0
  98. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/user/resolver.py +0 -0
  99. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/validation.py +0 -0
  100. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/workflow/__init__.py +0 -0
  101. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/workflow/base.py +0 -0
  102. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/core/workflow/default.py +0 -0
  103. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/__init__.py +0 -0
  104. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/__main__.py +0 -0
  105. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/anthropic_quickstart.py +0 -0
  106. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/artifact_example.py +0 -0
  107. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/claude_sqlite_example.py +0 -0
  108. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/coding_agent_example.py +0 -0
  109. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/custom_system_prompt_example.py +0 -0
  110. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/default_workflow_handler_example.py +0 -0
  111. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/email_auth_example.py +0 -0
  112. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/evaluation_example.py +0 -0
  113. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/extensibility_example.py +0 -0
  114. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/minimal_example.py +0 -0
  115. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/mock_auth_example.py +0 -0
  116. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/mock_custom_tool.py +0 -0
  117. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/mock_quickstart.py +0 -0
  118. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/mock_quota_example.py +0 -0
  119. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/mock_rich_components_demo.py +0 -0
  120. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/mock_sqlite_example.py +0 -0
  121. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/openai_quickstart.py +0 -0
  122. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/primitive_components_demo.py +0 -0
  123. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/quota_lifecycle_example.py +0 -0
  124. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/examples/visualization_example.py +0 -0
  125. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/__init__.py +0 -0
  126. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/anthropic/__init__.py +0 -0
  127. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/anthropic/llm.py +0 -0
  128. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/azureopenai/__init__.py +0 -0
  129. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/azureopenai/llm.py +0 -0
  130. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/azuresearch/__init__.py +0 -0
  131. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/azuresearch/agent_memory.py +0 -0
  132. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/bigquery/__init__.py +0 -0
  133. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/bigquery/sql_runner.py +0 -0
  134. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/chromadb/__init__.py +0 -0
  135. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/clickhouse/__init__.py +0 -0
  136. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/clickhouse/sql_runner.py +0 -0
  137. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/duckdb/__init__.py +0 -0
  138. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/duckdb/sql_runner.py +0 -0
  139. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/faiss/__init__.py +0 -0
  140. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/faiss/agent_memory.py +0 -0
  141. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/google/__init__.py +0 -0
  142. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/google/gemini.py +0 -0
  143. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/hive/__init__.py +0 -0
  144. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/hive/sql_runner.py +0 -0
  145. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/local/__init__.py +0 -0
  146. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/local/agent_memory/__init__.py +0 -0
  147. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/local/agent_memory/in_memory.py +0 -0
  148. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/local/audit.py +0 -0
  149. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/local/file_system.py +0 -0
  150. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/local/file_system_conversation_store.py +0 -0
  151. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/local/storage.py +0 -0
  152. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/marqo/__init__.py +0 -0
  153. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/marqo/agent_memory.py +0 -0
  154. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/milvus/__init__.py +0 -0
  155. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/milvus/agent_memory.py +0 -0
  156. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/mock/__init__.py +0 -0
  157. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/mock/llm.py +0 -0
  158. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/mssql/__init__.py +0 -0
  159. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/mssql/sql_runner.py +0 -0
  160. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/mysql/__init__.py +0 -0
  161. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/mysql/sql_runner.py +0 -0
  162. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/ollama/__init__.py +0 -0
  163. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/ollama/llm.py +0 -0
  164. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/openai/__init__.py +0 -0
  165. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/openai/llm.py +0 -0
  166. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/openai/responses.py +0 -0
  167. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/opensearch/__init__.py +0 -0
  168. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/opensearch/agent_memory.py +0 -0
  169. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/oracle/__init__.py +0 -0
  170. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/oracle/sql_runner.py +0 -0
  171. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/pinecone/__init__.py +0 -0
  172. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/pinecone/agent_memory.py +0 -0
  173. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/plotly/__init__.py +0 -0
  174. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/plotly/chart_generator.py +0 -0
  175. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/postgres/__init__.py +0 -0
  176. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/postgres/sql_runner.py +0 -0
  177. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/premium/agent_memory/__init__.py +0 -0
  178. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/premium/agent_memory/premium.py +0 -0
  179. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/presto/__init__.py +0 -0
  180. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/presto/sql_runner.py +0 -0
  181. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/qdrant/__init__.py +0 -0
  182. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/qdrant/agent_memory.py +0 -0
  183. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/snowflake/__init__.py +0 -0
  184. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/snowflake/sql_runner.py +0 -0
  185. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/sqlite/__init__.py +0 -0
  186. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/sqlite/sql_runner.py +0 -0
  187. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/weaviate/__init__.py +0 -0
  188. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/integrations/weaviate/agent_memory.py +0 -0
  189. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/ZhipuAI/ZhipuAI_Chat.py +0 -0
  190. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/ZhipuAI/ZhipuAI_embeddings.py +0 -0
  191. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/ZhipuAI/__init__.py +0 -0
  192. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/__init__.py +0 -0
  193. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/adapter.py +0 -0
  194. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/advanced/__init__.py +0 -0
  195. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/anthropic/__init__.py +0 -0
  196. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/anthropic/anthropic_chat.py +0 -0
  197. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/azuresearch/__init__.py +0 -0
  198. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/azuresearch/azuresearch_vector.py +0 -0
  199. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/base/__init__.py +0 -0
  200. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/base/base.py +0 -0
  201. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/bedrock/__init__.py +0 -0
  202. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/bedrock/bedrock_converse.py +0 -0
  203. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/chromadb/__init__.py +0 -0
  204. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/chromadb/chromadb_vector.py +0 -0
  205. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/cohere/__init__.py +0 -0
  206. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/cohere/cohere_chat.py +0 -0
  207. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/cohere/cohere_embeddings.py +0 -0
  208. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/deepseek/__init__.py +0 -0
  209. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/deepseek/deepseek_chat.py +0 -0
  210. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/exceptions/__init__.py +0 -0
  211. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/faiss/__init__.py +0 -0
  212. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/faiss/faiss.py +0 -0
  213. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/flask/__init__.py +0 -0
  214. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/flask/assets.py +0 -0
  215. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/flask/auth.py +0 -0
  216. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/google/__init__.py +0 -0
  217. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/google/bigquery_vector.py +0 -0
  218. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/google/gemini_chat.py +0 -0
  219. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/hf/__init__.py +0 -0
  220. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/hf/hf.py +0 -0
  221. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/local.py +0 -0
  222. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/marqo/__init__.py +0 -0
  223. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/marqo/marqo.py +0 -0
  224. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/milvus/__init__.py +0 -0
  225. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/milvus/milvus_vector.py +0 -0
  226. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/mistral/__init__.py +0 -0
  227. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/mistral/mistral.py +0 -0
  228. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/mock/__init__.py +0 -0
  229. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/mock/embedding.py +0 -0
  230. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/mock/llm.py +0 -0
  231. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/mock/vectordb.py +0 -0
  232. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/ollama/__init__.py +0 -0
  233. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/ollama/ollama.py +0 -0
  234. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/openai/__init__.py +0 -0
  235. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/openai/openai_chat.py +0 -0
  236. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/openai/openai_embeddings.py +0 -0
  237. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/opensearch/__init__.py +0 -0
  238. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/opensearch/opensearch_vector.py +0 -0
  239. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/opensearch/opensearch_vector_semantic.py +0 -0
  240. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/oracle/__init__.py +0 -0
  241. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/oracle/oracle_vector.py +0 -0
  242. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/pgvector/__init__.py +0 -0
  243. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/pgvector/pgvector.py +0 -0
  244. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/pinecone/__init__.py +0 -0
  245. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/pinecone/pinecone_vector.py +0 -0
  246. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qdrant/__init__.py +0 -0
  247. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qdrant/qdrant.py +0 -0
  248. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qianfan/Qianfan_Chat.py +0 -0
  249. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qianfan/Qianfan_embeddings.py +0 -0
  250. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qianfan/__init__.py +0 -0
  251. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qianwen/QianwenAI_chat.py +0 -0
  252. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qianwen/QianwenAI_embeddings.py +0 -0
  253. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/qianwen/__init__.py +0 -0
  254. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/remote.py +0 -0
  255. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/types/__init__.py +0 -0
  256. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/utils.py +0 -0
  257. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/vannadb/__init__.py +0 -0
  258. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/vannadb/vannadb_vector.py +0 -0
  259. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/vllm/__init__.py +0 -0
  260. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/vllm/vllm.py +0 -0
  261. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/weaviate/__init__.py +0 -0
  262. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/weaviate/weaviate_vector.py +0 -0
  263. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/xinference/__init__.py +0 -0
  264. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/legacy/xinference/xinference.py +0 -0
  265. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/py.typed +0 -0
  266. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/__init__.py +0 -0
  267. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/__main__.py +0 -0
  268. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/base/__init__.py +0 -0
  269. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/base/chat_handler.py +0 -0
  270. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/base/models.py +0 -0
  271. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/base/rich_chat_handler.py +0 -0
  272. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/base/templates.py +0 -0
  273. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/cli/__init__.py +0 -0
  274. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/cli/server_runner.py +0 -0
  275. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/fastapi/__init__.py +0 -0
  276. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/fastapi/app.py +0 -0
  277. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/fastapi/routes.py +0 -0
  278. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/flask/__init__.py +0 -0
  279. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/flask/app.py +0 -0
  280. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/servers/flask/routes.py +0 -0
  281. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/tools/__init__.py +0 -0
  282. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/tools/agent_memory.py +0 -0
  283. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/tools/file_system.py +0 -0
  284. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/tools/python.py +0 -0
  285. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/tools/run_sql.py +0 -0
  286. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/tools/visualize_data.py +0 -0
  287. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/utils/__init__.py +0 -0
  288. {vanna-2.0.1 → vanna-2.0.2}/src/vanna/web_components/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: vanna
3
- Version: 2.0.1
3
+ Version: 2.0.2
4
4
  Summary: Generate SQL queries from natural language
5
5
  Author-email: Zain Hoda <zain@vanna.ai>
6
6
  Requires-Python: >=3.9
@@ -4,7 +4,7 @@ build-backend = "flit_core.buildapi"
4
4
 
5
5
  [project]
6
6
  name = "vanna"
7
- version = "2.0.1"
7
+ version = "2.0.2"
8
8
  authors = [
9
9
  { name="Zain Hoda", email="zain@vanna.ai" },
10
10
  ]
@@ -219,4 +219,4 @@ indent-style = "space"
219
219
  skip-magic-trailing-comma = false
220
220
 
221
221
  # Automatically detect line endings
222
- line-ending = "auto"
222
+ line-ending = "auto"
@@ -16,6 +16,15 @@ try:
16
16
  from chromadb.config import Settings
17
17
  from chromadb.utils import embedding_functions
18
18
 
19
+ try:
20
+ from chromadb.errors import NotFoundError
21
+ except ImportError:
22
+ # Fallback for older ChromaDB versions that don't have chromadb.errors
23
+ class NotFoundError(Exception):
24
+ """Fallback NotFoundError for older ChromaDB versions."""
25
+
26
+ pass
27
+
19
28
  CHROMADB_AVAILABLE = True
20
29
  except ImportError:
21
30
  CHROMADB_AVAILABLE = False
@@ -31,7 +40,64 @@ from vanna.core.tool import ToolContext
31
40
 
32
41
 
33
42
  class ChromaAgentMemory(AgentMemory):
34
- """ChromaDB-based implementation of AgentMemory."""
43
+ """ChromaDB-based implementation of AgentMemory.
44
+
45
+ This implementation uses ChromaDB's PersistentClient to store agent memories
46
+ on disk, ensuring they persist across application restarts.
47
+
48
+ Key Features:
49
+ - Persistent storage: All memories are automatically saved to disk
50
+ - Efficient retrieval: Existing collections are loaded without re-initializing
51
+ embedding functions, avoiding unnecessary model downloads
52
+ - Flexible embedding: Supports custom embedding functions or uses ChromaDB's
53
+ default embedding function
54
+
55
+ Args:
56
+ persist_directory: Directory where ChromaDB will store its data.
57
+ Defaults to "./chroma_memory". Use an absolute path
58
+ for production deployments to ensure consistent location
59
+ across restarts.
60
+ collection_name: Name of the ChromaDB collection to use. Multiple agents
61
+ can share the same persist_directory with different
62
+ collection names.
63
+ embedding_function: Optional custom embedding function. If not provided,
64
+ ChromaDB's DefaultEmbeddingFunction is used (requires
65
+ internet connection on first use to download the model).
66
+ Once a collection is created, subsequent application
67
+ restarts will retrieve the existing collection without
68
+ re-downloading the model.
69
+
70
+ Example:
71
+ >>> from vanna.integrations.chromadb import ChromaAgentMemory
72
+ >>> # Basic usage with defaults
73
+ >>> memory = ChromaAgentMemory(
74
+ ... persist_directory="/app/data/chroma",
75
+ ... collection_name="my_agent_memory"
76
+ ... )
77
+ >>>
78
+ >>> # With custom embedding function (e.g., for offline use)
79
+ >>> from chromadb.utils import embedding_functions
80
+ >>> ef = embedding_functions.SentenceTransformerEmbeddingFunction()
81
+ >>> memory = ChromaAgentMemory(
82
+ ... persist_directory="/app/data/chroma",
83
+ ... embedding_function=ef
84
+ ... )
85
+
86
+ Note:
87
+ The default embedding function downloads an ONNX model (~80MB) on first use.
88
+ For air-gapped or offline environments, pre-download the model or provide
89
+ a custom embedding function.
90
+
91
+ Limitation:
92
+ This class does not validate that an existing Chroma collection was created
93
+ with the same embedding function as the one configured for the current
94
+ ``ChromaAgentMemory`` instance. If you reuse a collection (same
95
+ ``persist_directory`` and ``collection_name``) with a different embedding
96
+ function than was originally used, queries may fail or produce incorrect
97
+ similarity results. It is your responsibility to ensure that a given
98
+ collection is always accessed with a consistent embedding function, or to
99
+ implement your own validation around collection creation and reuse.
100
+ """
35
101
 
36
102
  def __init__(
37
103
  self,
@@ -76,12 +142,14 @@ class ChromaAgentMemory(AgentMemory):
76
142
  """Get or create ChromaDB collection."""
77
143
  if self._collection is None:
78
144
  client = self._get_client()
79
- embedding_func = self._get_embedding_function()
80
145
  try:
81
- self._collection = client.get_collection(
82
- name=self.collection_name, embedding_function=embedding_func
83
- )
84
- except Exception:
146
+ # Try to get existing collection first
147
+ # Don't pass embedding_function here to avoid re-instantiating/downloading it
148
+ # For existing collections, ChromaDB uses the stored embedding function configuration
149
+ self._collection = client.get_collection(name=self.collection_name)
150
+ except NotFoundError:
151
+ # Collection doesn't exist, create it with embedding function
152
+ embedding_func = self._get_embedding_function()
85
153
  self._collection = client.create_collection(
86
154
  name=self.collection_name,
87
155
  embedding_function=embedding_func,
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes