dao-ai 0.0.13__tar.gz → 0.0.15__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 (335) hide show
  1. {dao_ai-0.0.13 → dao_ai-0.0.15}/PKG-INFO +2 -2
  2. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/01_ingest_and_transform.py +1 -1
  3. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/02_provision_vector_search.py +3 -3
  4. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/03_generate_evaluation_data.py +35 -18
  5. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/04_unity_catalog_tools.py +3 -3
  6. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/05_agent_as_code_driver.py +3 -3
  7. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/06_run_evaluation.py +4 -9
  8. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/08_run_examples.py +4 -12
  9. {dao_ai-0.0.13 → dao_ai-0.0.15}/pyproject.toml +2 -2
  10. {dao_ai-0.0.13 → dao_ai-0.0.15}/requirements.txt +6 -2
  11. {dao_ai-0.0.13 → dao_ai-0.0.15}/schemas/model_config_schema.json +24 -0
  12. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/agent_as_code.py +1 -6
  13. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/config.py +9 -0
  14. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/vector_search.py +2 -0
  15. {dao_ai-0.0.13 → dao_ai-0.0.15}/.gitignore +0 -0
  16. {dao_ai-0.0.13 → dao_ai-0.0.15}/.python-version +0 -0
  17. {dao_ai-0.0.13 → dao_ai-0.0.15}/CHANGELOG.md +0 -0
  18. {dao_ai-0.0.13 → dao_ai-0.0.15}/CONTRIBUTING.md +0 -0
  19. {dao_ai-0.0.13 → dao_ai-0.0.15}/LICENSE +0 -0
  20. {dao_ai-0.0.13 → dao_ai-0.0.15}/Makefile +0 -0
  21. {dao_ai-0.0.13 → dao_ai-0.0.15}/README.md +0 -0
  22. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/Makefile +0 -0
  23. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/REFACTORING_SUMMARY.md +0 -0
  24. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/base-environment-serverless.yaml +0 -0
  25. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/demo_docs/BRAND_REP_DEMO_SUMMARY.md +0 -0
  26. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/demo_docs/demo_scripts/brand_rep_product_education_demo.md +0 -0
  27. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/demo_docs/demo_scripts/store_associate_ai_assistant_demo.md +0 -0
  28. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/demo_docs/demo_scripts/store_manager_alert_response_demo.md +0 -0
  29. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/development_workflows.md +0 -0
  30. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/.gitkeep +0 -0
  31. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/Makefile +0 -0
  32. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agent_implementation.mmd +0 -0
  33. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agent_tools_architecture.mmd +0 -0
  34. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/agent-troubleshooting.md +0 -0
  35. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/agents/agent-best-practices.md +0 -0
  36. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/agents/agent-development-patterns.md +0 -0
  37. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/agents/agent-performance.md +0 -0
  38. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/agents/agent-quickstart.md +0 -0
  39. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/ai-agents.md +0 -0
  40. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/overview.md +0 -0
  41. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/references/agent-reference.md +0 -0
  42. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/agents-and-tools/references/tools-reference.md +0 -0
  43. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/applications/streamlit-app.md +0 -0
  44. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/architecture/overview.md +0 -0
  45. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/architecture.mmd +0 -0
  46. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/architecture.png +0 -0
  47. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/customer_preparation_guide.md +0 -0
  48. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/databricks_integration.mmd +0 -0
  49. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/deployment/production.md +0 -0
  50. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/development/contributing.md +0 -0
  51. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/employee_tools_guide.md +0 -0
  52. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/getting-started/installation.md +0 -0
  53. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/getting-started/mkdocs-quickstart.md +0 -0
  54. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/getting-started/quick-start.md +0 -0
  55. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/index.md +0 -0
  56. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/mkdocs.yml +0 -0
  57. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/scenario_1_architecture.mmd +0 -0
  58. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/scenario_1_flow.mmd +0 -0
  59. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/setup-docs.sh +0 -0
  60. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/task_assignment_workflow_guide.md +0 -0
  61. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/docs/tools/overview.md +0 -0
  62. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/examples/customer_preparation_workflow.py +0 -0
  63. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/examples/task_assignment_workflow.py +0 -0
  64. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/load-env.sh +0 -0
  65. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/CSS_REFACTORING_SUMMARY.md +0 -0
  66. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/DEMO_CONTROLS_RESTORED.md +0 -0
  67. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/DEMO_IMPLEMENTATION_SUMMARY.md +0 -0
  68. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/DEMO_QUICK_START.md +0 -0
  69. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/Dockerfile +0 -0
  70. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/HOMEPAGE_README.md +0 -0
  71. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/Makefile +0 -0
  72. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/README.md +0 -0
  73. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/app.py +0 -0
  74. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/app.yaml +0 -0
  75. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/__init__.py +0 -0
  76. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/backup_homepage.py +0 -0
  77. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/chat.py +0 -0
  78. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/enhanced_charts.py +0 -0
  79. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/enhanced_navigation.py +0 -0
  80. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/__init__.py +0 -0
  81. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/associate/__init__.py +0 -0
  82. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/associate/associate_homepage.py +0 -0
  83. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/associate/dashboard_tab.py +0 -0
  84. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/associate/my_tasks_tab.py +0 -0
  85. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/associate/performance_tab.py +0 -0
  86. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/associate/products_tab.py +0 -0
  87. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/associate/schedule_tab.py +0 -0
  88. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/common/__init__.py +0 -0
  89. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/common/chat_integration.py +0 -0
  90. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/common/kpi_summary.py +0 -0
  91. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/common/notifications.py +0 -0
  92. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/homepage.py +0 -0
  93. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/__init__.py +0 -0
  94. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/alerts_tab.py +0 -0
  95. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/analytics_tab.py +0 -0
  96. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/dashboard_tab.py +0 -0
  97. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/demo_alerts.py +0 -0
  98. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/inventory_tab.py +0 -0
  99. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/manager_homepage.py +0 -0
  100. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/operations_tab.py +0 -0
  101. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/store_manager/team_tab.py +0 -0
  102. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/vp_retail_operations/__init__.py +0 -0
  103. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/vp_retail_operations/ai_insights_tab.py +0 -0
  104. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/vp_retail_operations/executive_dashboard_tab.py +0 -0
  105. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/vp_retail_operations/geographical_analysis_tab.py +0 -0
  106. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/vp_retail_operations/performance_metrics_tab.py +0 -0
  107. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/vp_retail_operations/strategic_insights_tab.py +0 -0
  108. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/homepage/vp_retail_operations/vp_homepage.py +0 -0
  109. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/metrics.py +0 -0
  110. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/navigation.py +0 -0
  111. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/oldhomepage.py +0 -0
  112. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/components/styles.py +0 -0
  113. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/config.yaml +0 -0
  114. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/demo_docs/BRAND_REP_DEMO_SUMMARY.md +0 -0
  115. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/demo_docs/comprehensive_demo_script.md +0 -0
  116. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/demo_docs/demo_scripts/brand_rep_product_education_demo.md +0 -0
  117. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/demo_docs/demo_scripts/store_associate_ai_assistant_demo.md +0 -0
  118. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/demo_docs/demo_scripts/store_manager_alert_response_demo.md +0 -0
  119. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/dev/README.md +0 -0
  120. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/dev/__init__.py +0 -0
  121. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/dev/components/__init__.py +0 -0
  122. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/dev/components/dashboard_card.py +0 -0
  123. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/dev/demo_alerts.py +0 -0
  124. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/dev/examples/sample_dashboard.py +0 -0
  125. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages/__init__.py +0 -0
  126. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages/component_showcase.py +0 -0
  127. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages/dev_playground.py +0 -0
  128. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages/playground.py +0 -0
  129. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/daily_operations.py +0 -0
  130. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/inventory.py +0 -0
  131. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/my_schedule.py +0 -0
  132. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/my_tasks.py +0 -0
  133. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/orders.py +0 -0
  134. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/products_promotions.py +0 -0
  135. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/staff.py +0 -0
  136. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pages_wip/team_insights.py +0 -0
  137. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/pyproject.toml +0 -0
  138. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/requirements.txt +0 -0
  139. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/static/css/style.css +0 -0
  140. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/styles/README.md +0 -0
  141. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/styles/__init__.py +0 -0
  142. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/styles/base.py +0 -0
  143. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/styles/components.py +0 -0
  144. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/styles/dashboard.py +0 -0
  145. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/styles/homepage.py +0 -0
  146. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/styles/theme.py +0 -0
  147. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/test_vip_notification.py +0 -0
  148. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/tests/test_calculations.py +0 -0
  149. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/utils/config.py +0 -0
  150. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/utils/database.py +0 -0
  151. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/utils/model_serving.py +0 -0
  152. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app/utils/store_context.py +0 -0
  153. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/Makefile +0 -0
  154. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/README.md +0 -0
  155. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/app.py +0 -0
  156. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/components/tailadmin/__init__.py +0 -0
  157. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/components/tailadmin/tailadmin/__init__.py +0 -0
  158. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/components/tailadmin/tailadmin/tailadmin_components.py +0 -0
  159. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/components/tailadmin/tailadmin/tailadmin_components_enhanced.py +0 -0
  160. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/components/tailadmin/tailadmin/tailadmin_styles.py +0 -0
  161. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/components/tailadmin/tailadmin_styles.py +0 -0
  162. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/old/TAILADMIN_README.md +0 -0
  163. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/old/homepage_tailadmin.py +0 -0
  164. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/old/tailadmin_demo.py +0 -0
  165. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/old/tailadmin_implementation_guide.py +0 -0
  166. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/old/test_vp_dashboard.py +0 -0
  167. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/old/vp_dashboard_enhanced.py +0 -0
  168. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/old/vp_dashboard_tailadmin.py +0 -0
  169. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/pages/components_demo.py +0 -0
  170. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/pages/homepage.py +0 -0
  171. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/pages/implementation_guide.py +0 -0
  172. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/pages/vp_dashboard_clean.py +0 -0
  173. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/pages/vp_dashboard_enhanced.py +0 -0
  174. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/pyproject.toml +0 -0
  175. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/tests/__init__.py +0 -0
  176. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/streamlit_store_app_tailadmin/tests/test_imports.py +0 -0
  177. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/tests/.gitkeep +0 -0
  178. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/tests/README.md +0 -0
  179. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/tests/images/doritos_upc.png +0 -0
  180. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/tests/images/lays_upc.png +0 -0
  181. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/tests/manager_demo_script.md +0 -0
  182. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/tests/notebook_vector_search_test.py +0 -0
  183. {dao_ai-0.0.13 → dao_ai-0.0.15}/apps/dais2025/store-app/tests/test_vector_search_integration.py +0 -0
  184. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/dais2025/model_config_dais.yaml +0 -0
  185. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/examples/genie.yaml +0 -0
  186. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/examples/genie_and_vector_search.yaml +0 -0
  187. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/examples/human_in_the_loop.yaml +0 -0
  188. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/examples/jira.yaml +0 -0
  189. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/examples/mcp.yaml +0 -0
  190. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/examples/minimal.yaml +0 -0
  191. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/examples/reservations.yaml +0 -0
  192. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/hardware_store/supervisor.yaml +0 -0
  193. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/hardware_store/supervisor_postgres.yaml +0 -0
  194. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/hardware_store/swarm.yaml +0 -0
  195. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/quick_serve_restaurant/.gitkeep +0 -0
  196. {dao_ai-0.0.13 → dao_ai-0.0.15}/config/quick_serve_restaurant/quick-serve-restaurant.yaml +0 -0
  197. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/appointments.sql +0 -0
  198. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/appointments_data.sql +0 -0
  199. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/brand_rep_demo_data.sql +0 -0
  200. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/brand_rep_demo_queries.sql +0 -0
  201. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/brand_rep_demo_tables.sql +0 -0
  202. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/brand_rep_demo_validation.sql +0 -0
  203. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/customers.sql +0 -0
  204. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/customers_data.sql +0 -0
  205. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/dim_stores.sql +0 -0
  206. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/dim_stores_data.sql +0 -0
  207. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/employee_performance.sql +0 -0
  208. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/employee_performance_data.sql +0 -0
  209. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/employee_tasks.sql +0 -0
  210. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/employee_tasks_data.sql +0 -0
  211. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/inventory.sql +0 -0
  212. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/inventory_data.sql +0 -0
  213. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/managers.sql +0 -0
  214. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/managers_data.sql +0 -0
  215. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/product_data.sql +0 -0
  216. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/products.sql +0 -0
  217. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/dais2025/task_assignments.sql +0 -0
  218. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/hardware_store/inventory.snappy.parquet +0 -0
  219. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/hardware_store/inventory.sql +0 -0
  220. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/hardware_store/products.snappy.parquet +0 -0
  221. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/hardware_store/products.sql +0 -0
  222. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/.gitkeep +0 -0
  223. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/fulfil_item_orders.sql +0 -0
  224. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/items_description.csv +0 -0
  225. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/items_description.sql +0 -0
  226. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/items_raw.csv +0 -0
  227. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/items_raw.sql +0 -0
  228. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/orders_raw.csv +0 -0
  229. {dao_ai-0.0.13 → dao_ai-0.0.15}/data/quick_serve_restaurant/orders_raw.sql +0 -0
  230. {dao_ai-0.0.13 → dao_ai-0.0.15}/databricks.yaml +0 -0
  231. {dao_ai-0.0.13 → dao_ai-0.0.15}/docs/genie.png +0 -0
  232. {dao_ai-0.0.13 → dao_ai-0.0.15}/docs/hardware_store/README.md +0 -0
  233. {dao_ai-0.0.13 → dao_ai-0.0.15}/docs/hardware_store/retail_supervisor.png +0 -0
  234. {dao_ai-0.0.13 → dao_ai-0.0.15}/docs/hardware_store/retail_swarm.png +0 -0
  235. {dao_ai-0.0.13 → dao_ai-0.0.15}/docs/quick_serve_restaurant/.gitkeep +0 -0
  236. {dao_ai-0.0.13 → dao_ai-0.0.15}/docs/quick_serve_restaurant/quick-serve-restaurant.png +0 -0
  237. {dao_ai-0.0.13 → dao_ai-0.0.15}/environment.yaml +0 -0
  238. {dao_ai-0.0.13 → dao_ai-0.0.15}/examples/dais2025/examples.yaml +0 -0
  239. {dao_ai-0.0.13 → dao_ai-0.0.15}/examples/hardware_store/examples.yaml +0 -0
  240. {dao_ai-0.0.13 → dao_ai-0.0.15}/examples/quick_serve_restaurant/.gitkeep +0 -0
  241. {dao_ai-0.0.13 → dao_ai-0.0.15}/examples/quick_serve_restaurant/examples.yaml +0 -0
  242. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/extract_store_numbers.sql +0 -0
  243. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/find_inventory_by_sku.sql +0 -0
  244. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/find_inventory_by_upc.sql +0 -0
  245. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/find_product_by_sku.sql +0 -0
  246. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/find_product_by_upc.sql +0 -0
  247. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/find_store_by_number.sql +0 -0
  248. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/find_store_inventory_by_sku.sql +0 -0
  249. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/dais2025/find_store_inventory_by_upc.sql +0 -0
  250. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/hardware_store/find_inventory_by_sku.sql +0 -0
  251. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/hardware_store/find_inventory_by_upc.sql +0 -0
  252. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/hardware_store/find_product_by_sku.sql +0 -0
  253. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/hardware_store/find_product_by_upc.sql +0 -0
  254. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/hardware_store/find_store_inventory_by_sku.sql +0 -0
  255. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/hardware_store/find_store_inventory_by_upc.sql +0 -0
  256. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/quick_serve_restaurant/.gitkeep +0 -0
  257. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/quick_serve_restaurant/insert_coffee_order.sql +0 -0
  258. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/quick_serve_restaurant/lookup_items_by_descriptions.sql +0 -0
  259. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/quick_serve_restaurant/match_historical_item_order_by_date.sql +0 -0
  260. {dao_ai-0.0.13 → dao_ai-0.0.15}/functions/quick_serve_restaurant/match_item_by_description_and_price.sql +0 -0
  261. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/09_evaluate_inferences.py +0 -0
  262. {dao_ai-0.0.13 → dao_ai-0.0.15}/notebooks/99_scratchpad.py +0 -0
  263. {dao_ai-0.0.13 → dao_ai-0.0.15}/schemas/bundle_config_schema.json +0 -0
  264. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/__init__.py +0 -0
  265. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/models.py +0 -0
  266. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/__init__.py +0 -0
  267. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/customer.py +0 -0
  268. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/employee.py +0 -0
  269. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/executive.py +0 -0
  270. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/genie.py +0 -0
  271. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/inventory.py +0 -0
  272. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/models.py +0 -0
  273. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dais2025/tools/store.py +0 -0
  274. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/__init__.py +0 -0
  275. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/catalog.py +0 -0
  276. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/chat_models.py +0 -0
  277. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/cli.py +0 -0
  278. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/graph.py +0 -0
  279. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/guardrails.py +0 -0
  280. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/hooks/__init__.py +0 -0
  281. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/hooks/core.py +0 -0
  282. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/memory/__init__.py +0 -0
  283. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/memory/base.py +0 -0
  284. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/memory/core.py +0 -0
  285. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/memory/postgres.py +0 -0
  286. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/messages.py +0 -0
  287. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/models.py +0 -0
  288. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/nodes.py +0 -0
  289. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/prompts.py +0 -0
  290. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/providers/__init__.py +0 -0
  291. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/providers/base.py +0 -0
  292. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/providers/databricks.py +0 -0
  293. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/state.py +0 -0
  294. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/__init__.py +0 -0
  295. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/agent.py +0 -0
  296. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/core.py +0 -0
  297. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/genie.py +0 -0
  298. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/human_in_the_loop.py +0 -0
  299. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/mcp.py +0 -0
  300. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/python.py +0 -0
  301. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/time.py +0 -0
  302. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/tools/unity_catalog.py +0 -0
  303. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/types.py +0 -0
  304. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/utils.py +0 -0
  305. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/dao_ai/vector_search.py +0 -0
  306. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/hardware_store/__init__.py +0 -0
  307. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/hardware_store/hooks.py +0 -0
  308. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/hardware_store/tools.py +0 -0
  309. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/quick_serve_restaurant/.gitkeep +0 -0
  310. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/quick_serve_restaurant/__init__.py +0 -0
  311. {dao_ai-0.0.13 → dao_ai-0.0.15}/src/quick_serve_restaurant/tools.py +0 -0
  312. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/config/test_model_config.yaml +0 -0
  313. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/conftest.py +0 -0
  314. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_catalog.py +0 -0
  315. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_chat_history.py +0 -0
  316. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_config.py +0 -0
  317. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_databricks.py +0 -0
  318. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_function_parsing.py +0 -0
  319. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_hooks.py +0 -0
  320. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_inference.py +0 -0
  321. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_mcp.py +0 -0
  322. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_messages.py +0 -0
  323. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_models.py +0 -0
  324. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_state.py +0 -0
  325. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_summarization_inference.py +0 -0
  326. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_tools.py +0 -0
  327. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_types.py +0 -0
  328. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_utils.py +0 -0
  329. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/test_vector_search.py +0 -0
  330. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/dao_ai/weather_server_mcp.py +0 -0
  331. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/hardware_store/.gitkeep +0 -0
  332. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/hardware_store/test_graph.py +0 -0
  333. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/images/doritos_upc.png +0 -0
  334. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/images/lays_upc.png +0 -0
  335. {dao_ai-0.0.13 → dao_ai-0.0.15}/tests/quick_serve_restaurant/.gitkeep +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dao-ai
3
- Version: 0.0.13
3
+ Version: 0.0.15
4
4
  Summary: DAO AI: A modular, multi-agent orchestration framework for complex AI workflows. Supports agent handoff, tool integration, and dynamic configuration via YAML.
5
5
  Project-URL: Homepage, https://github.com/natefleming/dao-ai
6
6
  Project-URL: Documentation, https://natefleming.github.io/dao-ai
@@ -38,7 +38,7 @@ Requires-Dist: langgraph>=0.6.5
38
38
  Requires-Dist: langmem>=0.0.29
39
39
  Requires-Dist: loguru>=0.7.3
40
40
  Requires-Dist: mcp>=1.9.1
41
- Requires-Dist: mlflow>=3.1.1
41
+ Requires-Dist: mlflow>=3.3.2
42
42
  Requires-Dist: nest-asyncio>=1.6.0
43
43
  Requires-Dist: openevals>=0.0.19
44
44
  Requires-Dist: openpyxl>=3.1.5
@@ -1,5 +1,5 @@
1
1
  # Databricks notebook source
2
- # MAGIC %pip install --quiet -r ../requirements.txt
2
+ # MAGIC %pip install --quiet --upgrade -r ../requirements.txt
3
3
  # MAGIC %restart_python
4
4
 
5
5
  # COMMAND ----------
@@ -1,7 +1,7 @@
1
1
  # Databricks notebook source
2
- # MAGIC %pip install --quiet -r ../requirements.txt
3
- # MAGIC %pip uninstall -y databricks-connect pyspark pyspark-connect
4
- # MAGIC %pip install databricks-connect
2
+ # MAGIC %pip install --quiet --upgrade -r ../requirements.txt
3
+ # MAGIC %pip uninstall --quiet -y databricks-connect pyspark pyspark-connect
4
+ # MAGIC %pip install --quiet databricks-connect
5
5
  # MAGIC %restart_python
6
6
 
7
7
  # COMMAND ----------
@@ -1,7 +1,7 @@
1
1
  # Databricks notebook source
2
- # MAGIC %pip install --quiet -r ../requirements.txt
3
- # MAGIC %pip uninstall -y databricks-connect pyspark pyspark-connect
4
- # MAGIC %pip install databricks-connect
2
+ # MAGIC %pip install --quiet --upgrade -r ../requirements.txt
3
+ # MAGIC %pip uninstall --quiet -y databricks-connect pyspark pyspark-connect
4
+ # MAGIC %pip install --quiet databricks-connect
5
5
  # MAGIC %restart_python
6
6
 
7
7
  # COMMAND ----------
@@ -65,26 +65,43 @@ for _, vector_store in config.resources.vector_stores.items():
65
65
  spark.table(vector_store.source_table.full_name)
66
66
  .withColumn("id", F.col(vector_store.primary_key))
67
67
  .withColumn("content", F.col(vector_store.embedding_source_column))
68
- .withColumn("doc_uri", F.lit("source"))
68
+ .withColumn("doc_uri", doc_uri)
69
69
  )
70
70
  parsed_docs_pdf: pd.DataFrame = parsed_docs_df.toPandas()
71
71
 
72
72
  display(parsed_docs_pdf)
73
73
 
74
- agent_description = f"""
75
- The agent is a RAG chatbot that answers questions about retail hardware and gives recommendations for purchases.
76
- """
77
- question_guidelines = f"""
78
- # User personas
79
- - An employee or client asking about products and inventory
80
-
81
-
82
- # Example questions
83
- - What grills do you have in stock?
84
- - Can you recommend a accessories for my Toro lawn mower?
85
-
86
- # Additional Guidelines
87
- - Questions should be succinct, and human-like
74
+ agent_description: str = evaluation.agent_description
75
+ if not agent_description:
76
+ agent_description = """
77
+ A general-purpose chatbot AI agent is designed to engage in natural conversations
78
+ across diverse topics and tasks, drawing from broad knowledge to answer questions,
79
+ assist with writing, solve problems, and provide explanations while maintaining
80
+ context throughout interactions. It aims to be a versatile, adaptable assistant
81
+ that can help with the wide spectrum of things people encounter in daily life,
82
+ adjusting its communication style and level of detail based on user needs.
83
+ """
84
+
85
+ question_guidelines: str = evaluation.question_guidelines
86
+ if not question_guidelines:
87
+ question_guidelines = f"""
88
+ # User personas
89
+ - A curious individual seeking information or explanations
90
+ - A student looking for homework help or learning assistance
91
+ - A professional needing quick research or writing support
92
+ - A creative person brainstorming ideas or seeking inspiration
93
+
94
+ # Example questions
95
+ - Can you explain how photosynthesis works?
96
+ - Help me write a professional email to my boss
97
+ - What are some good books similar to Harry Potter?
98
+ - How do I fix a leaky faucet?
99
+
100
+ # Additional Guidelines
101
+ - Questions should be conversational and natural
102
+ - Users may ask follow-up questions to dig deeper into topics
103
+ - Requests can range from simple facts to complex multi-step tasks
104
+ - Tone can vary from casual chat to formal assistance
88
105
  """
89
106
 
90
107
  evals_pdf: pd.DataFrame = generate_evals_df(
@@ -1,7 +1,7 @@
1
1
  # Databricks notebook source
2
- # MAGIC %pip install --quiet -r ../requirements.txt
3
- # MAGIC %pip uninstall -y databricks-connect pyspark pyspark-connect
4
- # MAGIC %pip install databricks-connect
2
+ # MAGIC %pip install --quiet --upgrade -r ../requirements.txt
3
+ # MAGIC %pip uninstall --quiet -y databricks-connect pyspark pyspark-connect
4
+ # MAGIC %pip install --quiet databricks-connect
5
5
  # MAGIC %restart_python
6
6
 
7
7
  # COMMAND ----------
@@ -1,7 +1,7 @@
1
1
  # Databricks notebook source
2
- # MAGIC %pip install --quiet -r ../requirements.txt
3
- # MAGIC %pip uninstall -y databricks-connect pyspark pyspark-connect
4
- # MAGIC %pip install databricks-connect
2
+ # MAGIC %pip install --quiet --upgrade -r ../requirements.txt
3
+ # MAGIC %pip uninstall --quiet -y databricks-connect pyspark pyspark-connect
4
+ # MAGIC %pip install --quiet databricks-connect
5
5
  # MAGIC %restart_python
6
6
 
7
7
  # COMMAND ----------
@@ -1,8 +1,8 @@
1
1
  # Databricks notebook source
2
2
  # DBTITLE 1,Install Required Python Packages and Restart Kernel
3
- # MAGIC %pip install --quiet -r ../requirements.txt
4
- # MAGIC %pip uninstall -y databricks-connect pyspark pyspark-connect
5
- # MAGIC %pip install databricks-connect
3
+ # MAGIC %pip install --quiet --upgrade -r ../requirements.txt
4
+ # MAGIC %pip uninstall --quiet -y databricks-connect pyspark pyspark-connect
5
+ # MAGIC %pip install --quiet databricks-connect
6
6
  # MAGIC %restart_python
7
7
 
8
8
  # COMMAND ----------
@@ -127,11 +127,6 @@ from mlflow.genai.scorers import scorer, Safety, Guidelines
127
127
  from mlflow.entities import Feedback, Trace
128
128
 
129
129
 
130
- clarity = Guidelines(
131
- name="clarity",
132
- guidelines=["The response must be clear, coherent, and concise"],
133
- )
134
-
135
130
  @scorer
136
131
  def response_completeness(outputs: dict[str, Any]) -> Feedback:
137
132
 
@@ -225,7 +220,7 @@ eval_df: pd.DataFrame = spark.read.table(payload_table).toPandas()
225
220
 
226
221
  evaluation_table_name: str = config.evaluation.table.full_name
227
222
 
228
- scorers = [Safety(), clarity, response_completeness, tool_call_efficiency]
223
+ scorers = [Safety(), response_completeness, tool_call_efficiency]
229
224
  custom_scorers = []
230
225
 
231
226
  if config.evaluation.guidelines:
@@ -1,7 +1,7 @@
1
1
  # Databricks notebook source
2
- # MAGIC %pip install --quiet -r ../requirements.txt
3
- # MAGIC %pip uninstall -y databricks-connect pyspark pyspark-connect
4
- # MAGIC %pip install databricks-connect
2
+ # MAGIC %pip install --quiet --upgrade -r ../requirements.txt
3
+ # MAGIC %pip uninstall --quiet -y databricks-connect pyspark pyspark-connect
4
+ # MAGIC %pip install --quiet databricks-connect
5
5
  # MAGIC %restart_python
6
6
 
7
7
  # COMMAND ----------
@@ -50,15 +50,7 @@ mlflow.langchain.autolog()
50
50
 
51
51
  config: AppConfig = AppConfig.from_file(path=config_path)
52
52
 
53
- log_level: str = config.app.log_level
54
-
55
- logger.remove()
56
- logger.add(sys.stderr, level=log_level)
57
-
58
- graph: CompiledStateGraph = create_dao_ai_graph(config=config)
59
-
60
- app: ChatModel = create_agent(graph)
61
-
53
+ app: ChatModel = config.as_chat_model()
62
54
 
63
55
  # COMMAND ----------
64
56
 
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "dao-ai"
7
- version = "0.0.13"
7
+ version = "0.0.15"
8
8
  description = "DAO AI: A modular, multi-agent orchestration framework for complex AI workflows. Supports agent handoff, tool integration, and dynamic configuration via YAML."
9
9
  readme = "README.md"
10
10
  license = { text = "MIT" }
@@ -56,7 +56,7 @@ dependencies = [
56
56
  "langmem>=0.0.29",
57
57
  "loguru>=0.7.3",
58
58
  "mcp>=1.9.1",
59
- "mlflow>=3.1.1",
59
+ "mlflow>=3.3.2",
60
60
  "nest-asyncio>=1.6.0",
61
61
  "openevals>=0.0.19",
62
62
  "openpyxl>=3.1.5",
@@ -12,11 +12,13 @@ boto3==1.40.1
12
12
  botocore==1.40.1
13
13
  cachetools==5.5.2
14
14
  certifi==2025.6.15
15
+ cffi==1.17.1
15
16
  cfgv==3.4.0
16
17
  charset-normalizer==3.4.2
17
18
  click==8.2.1
18
19
  cloudpickle==3.1.1
19
20
  contourpy==1.3.2
21
+ cryptography==45.0.7
20
22
  cycler==0.12.1
21
23
  databricks-agents==1.2.0
22
24
  databricks-ai-bridge==0.5.1
@@ -88,8 +90,9 @@ marshmallow==3.26.1
88
90
  matplotlib==3.10.3
89
91
  mcp==1.9.4
90
92
  mdurl==0.1.2
91
- mlflow==3.1.1
92
- mlflow-skinny==3.1.1
93
+ mlflow==3.3.2
94
+ mlflow-skinny==3.3.2
95
+ mlflow-tracing==3.3.2
93
96
  multidict==6.5.0
94
97
  mypy==1.16.1
95
98
  mypy-extensions==1.1.0
@@ -121,6 +124,7 @@ py4j==0.10.9.7
121
124
  pyarrow==20.0.0
122
125
  pyasn1==0.6.1
123
126
  pyasn1-modules==0.4.2
127
+ pycparser==2.22
124
128
  pydantic==2.11.7
125
129
  pydantic-core==2.33.2
126
130
  pydantic-settings==2.10.0
@@ -1086,6 +1086,30 @@
1086
1086
  "title": "Num Evals",
1087
1087
  "type": "integer"
1088
1088
  },
1089
+ "agent_description": {
1090
+ "anyOf": [
1091
+ {
1092
+ "type": "string"
1093
+ },
1094
+ {
1095
+ "type": "null"
1096
+ }
1097
+ ],
1098
+ "default": null,
1099
+ "title": "Agent Description"
1100
+ },
1101
+ "question_guidelines": {
1102
+ "anyOf": [
1103
+ {
1104
+ "type": "string"
1105
+ },
1106
+ {
1107
+ "type": "null"
1108
+ }
1109
+ ],
1110
+ "default": null,
1111
+ "title": "Question Guidelines"
1112
+ },
1089
1113
  "custom_inputs": {
1090
1114
  "additionalProperties": true,
1091
1115
  "title": "Custom Inputs",
@@ -1,14 +1,11 @@
1
1
  import sys
2
2
 
3
3
  import mlflow
4
- from langgraph.graph.state import CompiledStateGraph
5
4
  from loguru import logger
6
5
  from mlflow.models import ModelConfig
7
6
  from mlflow.pyfunc import ChatModel
8
7
 
9
8
  from dao_ai.config import AppConfig
10
- from dao_ai.graph import create_dao_ai_graph
11
- from dao_ai.models import create_agent
12
9
 
13
10
  mlflow.langchain.autolog()
14
11
 
@@ -20,8 +17,6 @@ log_level: str = config.app.log_level
20
17
  logger.remove()
21
18
  logger.add(sys.stderr, level=log_level)
22
19
 
23
- graph: CompiledStateGraph = create_dao_ai_graph(config=config)
24
-
25
- app: ChatModel = create_agent(graph)
20
+ app: ChatModel = config.as_chat_model()
26
21
 
27
22
  mlflow.models.set_model(app)
@@ -409,6 +409,9 @@ class VolumePathModel(BaseModel, HasFullName):
409
409
  return f"/Volumes/{catalog_name}/{schema_name}/{volume_name}{path}"
410
410
  return self.path
411
411
 
412
+ def as_path(self) -> Path:
413
+ return Path(self.full_name)
414
+
412
415
  def create(self, w: WorkspaceClient | None = None) -> None:
413
416
  from dao_ai.providers.databricks import DatabricksProvider
414
417
 
@@ -1126,6 +1129,8 @@ class EvaluationModel(BaseModel):
1126
1129
  model: LLMModel
1127
1130
  table: TableModel
1128
1131
  num_evals: int
1132
+ agent_description: Optional[str] = None
1133
+ question_guidelines: Optional[str] = None
1129
1134
  custom_inputs: dict[str, Any] = Field(default_factory=dict)
1130
1135
  guidelines: list[GuidelineModel] = Field(default_factory=list)
1131
1136
 
@@ -1229,6 +1234,10 @@ class AppConfig(BaseModel):
1229
1234
  def initialize(self) -> None:
1230
1235
  from dao_ai.hooks.core import create_hooks
1231
1236
 
1237
+ if self.app and self.app.log_level:
1238
+ logger.remove()
1239
+ logger.add(sys.stderr, level=self.app.log_level)
1240
+
1232
1241
  logger.debug("Calling initialization hooks...")
1233
1242
  initialization_functions: Sequence[Callable[..., Any]] = create_hooks(
1234
1243
  self.app.initialization_hooks
@@ -51,7 +51,9 @@ def create_vector_search_tool(
51
51
 
52
52
  vector_search_tool: BaseTool = VectorSearchRetrieverTool(
53
53
  name=name,
54
+ tool_name=name,
54
55
  description=description,
56
+ tool_description=description,
55
57
  index_name=index_name,
56
58
  columns=columns,
57
59
  **search_parameters,
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes