pygeai 0.4.0b10__tar.gz → 0.4.0b12__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.

Potentially problematic release.


This version of pygeai might be problematic. Click here for more details.

Files changed (517) hide show
  1. {pygeai-0.4.0b10/pygeai.egg-info → pygeai-0.4.0b12}/PKG-INFO +1 -1
  2. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/ui.py +0 -1
  3. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/chat.py +47 -55
  4. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/lab/ai_lab.py +0 -1
  5. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/common/config.py +0 -2
  6. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/managers.py +2 -2
  7. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/tools/clients.py +13 -17
  8. pygeai-0.4.0b12/pygeai/tests/integration/assistants/rag/test_create_rag.py +72 -0
  9. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/agents/test_create_agent.py +0 -1
  10. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/agents/test_publish_agent_revision.py +0 -1
  11. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/agents/test_update_agent.py +0 -1
  12. pygeai-0.4.0b12/pygeai/tests/integration/lab/tools/test_get_parameter.py +98 -0
  13. pygeai-0.4.0b12/pygeai/tests/integration/lab/tools/test_publish_tool_revision.py +119 -0
  14. pygeai-0.4.0b12/pygeai/tests/integration/lab/tools/test_set_parameter.py +114 -0
  15. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/get_sharing_link.py +1 -2
  16. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/create_tool.py +1 -1
  17. pygeai-0.4.0b12/pygeai/vendor/a2a/auth/__init__.py +0 -0
  18. pygeai-0.4.0b12/pygeai/vendor/a2a/py.typed +0 -0
  19. {pygeai-0.4.0b10 → pygeai-0.4.0b12/pygeai.egg-info}/PKG-INFO +1 -1
  20. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai.egg-info/SOURCES.txt +6 -0
  21. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pyproject.toml +1 -1
  22. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/LICENSE +0 -0
  23. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/MANIFEST.in +0 -0
  24. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/README.md +0 -0
  25. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/docs/geai-proxy/README.md +0 -0
  26. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/__init__.py +0 -0
  27. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/admin/__init__.py +0 -0
  28. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/admin/clients.py +0 -0
  29. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/admin/endpoints.py +0 -0
  30. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/__init__.py +0 -0
  31. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/clients.py +0 -0
  32. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/data/__init__.py +0 -0
  33. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/data/clients.py +0 -0
  34. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/data_analyst/__init__.py +0 -0
  35. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/data_analyst/clients.py +0 -0
  36. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/data_analyst/endpoints.py +0 -0
  37. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/endpoints.py +0 -0
  38. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/managers.py +0 -0
  39. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/mappers.py +0 -0
  40. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/rag/__init__.py +0 -0
  41. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/rag/clients.py +0 -0
  42. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/rag/endpoints.py +0 -0
  43. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/rag/mappers.py +0 -0
  44. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/rag/models.py +0 -0
  45. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/assistant/rag/responses.py +0 -0
  46. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/__init__.py +0 -0
  47. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/clients.py +0 -0
  48. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/endpoints.py +0 -0
  49. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/iris.py +0 -0
  50. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/managers.py +0 -0
  51. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/session.py +0 -0
  52. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/chat/settings.py +0 -0
  53. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/__init__.py +0 -0
  54. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/__main__.py +0 -0
  55. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/__init__.py +0 -0
  56. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/admin.py +0 -0
  57. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/assistant.py +0 -0
  58. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/base.py +0 -0
  59. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/builders.py +0 -0
  60. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/common.py +0 -0
  61. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/configuration.py +0 -0
  62. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/embeddings.py +0 -0
  63. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/evaluation.py +0 -0
  64. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/feedback.py +0 -0
  65. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/files.py +0 -0
  66. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/flows/__init__.py +0 -0
  67. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/gam.py +0 -0
  68. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/lab/__init__.py +0 -0
  69. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/lab/common.py +0 -0
  70. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/lab/options.py +0 -0
  71. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/lab/spec.py +0 -0
  72. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/lab/utils.py +0 -0
  73. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/llm.py +0 -0
  74. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/migrate.py +0 -0
  75. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/options.py +0 -0
  76. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/organization.py +0 -0
  77. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/rag.py +0 -0
  78. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/rerank.py +0 -0
  79. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/secrets.py +0 -0
  80. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/usage_limits.py +0 -0
  81. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/validators.py +0 -0
  82. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/commands/version.py +0 -0
  83. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/geai.py +0 -0
  84. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/geai_proxy.py +0 -0
  85. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/install_man.py +0 -0
  86. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/parsers.py +0 -0
  87. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/texts/__init__.py +0 -0
  88. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/cli/texts/help.py +0 -0
  89. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/__init__.py +0 -0
  90. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/base/__init__.py +0 -0
  91. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/base/clients.py +0 -0
  92. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/base/mappers.py +0 -0
  93. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/base/models.py +0 -0
  94. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/base/responses.py +0 -0
  95. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/base/session.py +0 -0
  96. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/common/__init__.py +0 -0
  97. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/common/decorators.py +0 -0
  98. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/common/exceptions.py +0 -0
  99. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/embeddings/__init__.py +0 -0
  100. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/embeddings/clients.py +0 -0
  101. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/embeddings/endpoints.py +0 -0
  102. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/embeddings/managers.py +0 -0
  103. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/embeddings/mappers.py +0 -0
  104. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/embeddings/models.py +0 -0
  105. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/embeddings/responses.py +0 -0
  106. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/feedback/__init__.py +0 -0
  107. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/feedback/clients.py +0 -0
  108. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/feedback/endpoints.py +0 -0
  109. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/feedback/models.py +0 -0
  110. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/files/__init__.py +0 -0
  111. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/files/clients.py +0 -0
  112. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/files/endpoints.py +0 -0
  113. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/files/managers.py +0 -0
  114. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/files/mappers.py +0 -0
  115. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/files/models.py +0 -0
  116. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/files/responses.py +0 -0
  117. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/handlers.py +0 -0
  118. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/llm/__init__.py +0 -0
  119. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/llm/clients.py +0 -0
  120. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/llm/endpoints.py +0 -0
  121. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/models.py +0 -0
  122. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/plugins/__init__.py +0 -0
  123. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/plugins/clients.py +0 -0
  124. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/plugins/endpoints.py +0 -0
  125. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/plugins/models.py +0 -0
  126. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/rerank/__init__.py +0 -0
  127. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/rerank/clients.py +0 -0
  128. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/rerank/endpoints.py +0 -0
  129. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/rerank/managers.py +0 -0
  130. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/rerank/mappers.py +0 -0
  131. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/rerank/models.py +0 -0
  132. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/responses.py +0 -0
  133. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/secrets/__init__.py +0 -0
  134. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/secrets/clients.py +0 -0
  135. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/secrets/endpoints.py +0 -0
  136. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/services/__init__.py +0 -0
  137. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/services/llm/__init__.py +0 -0
  138. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/services/llm/model.py +0 -0
  139. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/services/llm/providers.py +0 -0
  140. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/services/response.py +0 -0
  141. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/services/rest.py +0 -0
  142. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/singleton.py +0 -0
  143. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/utils/__init__.py +0 -0
  144. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/core/utils/console.py +0 -0
  145. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/dbg/__init__.py +0 -0
  146. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/dbg/debugger.py +0 -0
  147. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/__init__.py +0 -0
  148. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/clients.py +0 -0
  149. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/dataset/__init__.py +0 -0
  150. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/dataset/clients.py +0 -0
  151. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/dataset/endpoints.py +0 -0
  152. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/plan/__init__.py +0 -0
  153. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/plan/clients.py +0 -0
  154. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/plan/endpoints.py +0 -0
  155. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/result/__init__.py +0 -0
  156. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/result/clients.py +0 -0
  157. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/evaluation/result/endpoints.py +0 -0
  158. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/flows/__init__.py +0 -0
  159. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/flows/endpoints.py +0 -0
  160. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/flows/models.py +0 -0
  161. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/gam/__init__.py +0 -0
  162. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/gam/clients.py +0 -0
  163. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/gam/endpoints.py +0 -0
  164. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/health/__init__.py +0 -0
  165. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/health/clients.py +0 -0
  166. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/health/endpoints.py +0 -0
  167. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/__init__.py +0 -0
  168. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/agents/__init__.py +0 -0
  169. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/agents/clients.py +0 -0
  170. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/agents/endpoints.py +0 -0
  171. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/agents/mappers.py +0 -0
  172. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/clients.py +0 -0
  173. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/constants.py +0 -0
  174. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/models.py +0 -0
  175. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/processes/__init__.py +0 -0
  176. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/processes/clients.py +0 -0
  177. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/processes/endpoints.py +0 -0
  178. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/processes/mappers.py +0 -0
  179. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/runners.py +0 -0
  180. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/spec/__init__.py +0 -0
  181. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/spec/loader.py +0 -0
  182. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/spec/parsers.py +0 -0
  183. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/strategies/__init__.py +0 -0
  184. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/strategies/clients.py +0 -0
  185. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/strategies/endpoints.py +0 -0
  186. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/strategies/mappers.py +0 -0
  187. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/tools/__init__.py +0 -0
  188. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/tools/endpoints.py +0 -0
  189. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/lab/tools/mappers.py +0 -0
  190. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/man/__init__.py +0 -0
  191. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/man/man1/__init__.py +0 -0
  192. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/man/man1/geai-proxy.1 +0 -0
  193. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/man/man1/geai.1 +0 -0
  194. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/migration/__init__.py +0 -0
  195. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/migration/strategies.py +0 -0
  196. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/migration/tools.py +0 -0
  197. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/__init__.py +0 -0
  198. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/clients.py +0 -0
  199. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/endpoints.py +0 -0
  200. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/limits/__init__.py +0 -0
  201. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/limits/clients.py +0 -0
  202. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/limits/endpoints.py +0 -0
  203. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/limits/managers.py +0 -0
  204. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/limits/mappers.py +0 -0
  205. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/managers.py +0 -0
  206. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/mappers.py +0 -0
  207. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/organization/responses.py +0 -0
  208. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/proxy/__init__.py +0 -0
  209. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/proxy/clients.py +0 -0
  210. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/proxy/config.py +0 -0
  211. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/proxy/managers.py +0 -0
  212. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/proxy/servers.py +0 -0
  213. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/proxy/tool.py +0 -0
  214. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/__init__.py +0 -0
  215. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/admin/__init__.py +0 -0
  216. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/admin/test_clients.py +0 -0
  217. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/__init__.py +0 -0
  218. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/rag/__init__.py +0 -0
  219. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/rag/test_clients.py +0 -0
  220. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/rag/test_mappers.py +0 -0
  221. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/rag/test_models.py +0 -0
  222. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/test_clients.py +0 -0
  223. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/test_managers.py +0 -0
  224. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/assistants/test_mappers.py +0 -0
  225. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/chat/__init__.py +0 -0
  226. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/chat/test_clients.py +0 -0
  227. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/chat/test_iris.py +0 -0
  228. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/chat/test_session.py +0 -0
  229. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/chat/test_ui.py +0 -0
  230. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/__init__.py +0 -0
  231. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/__init__.py +0 -0
  232. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/lab/__init__.py +0 -0
  233. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/lab/test_ai_lab.py +0 -0
  234. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/lab/test_common.py +0 -0
  235. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/lab/test_spec.py +0 -0
  236. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_assistant.py +0 -0
  237. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_chat.py +0 -0
  238. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_common.py +0 -0
  239. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_embeddings.py +0 -0
  240. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_feedback.py +0 -0
  241. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_files.py +0 -0
  242. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_gam.py +0 -0
  243. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_llm.py +0 -0
  244. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_migrate.py +0 -0
  245. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_organization.py +0 -0
  246. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_rag.py +0 -0
  247. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_rerank.py +0 -0
  248. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_show_help.py +0 -0
  249. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_usage_limits.py +0 -0
  250. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_validators.py +0 -0
  251. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/commands/test_version.py +0 -0
  252. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/cli/test_parsers.py +0 -0
  253. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/__init__.py +0 -0
  254. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/base/__init__.py +0 -0
  255. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/base/data/__init__.py +0 -0
  256. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/base/data/mappers.py +0 -0
  257. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/base/data/models.py +0 -0
  258. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/base/test_mappers.py +0 -0
  259. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/base/test_models.py +0 -0
  260. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/common/__init__.py +0 -0
  261. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/common/data/__init__.py +0 -0
  262. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/common/test_config.py +0 -0
  263. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/common/test_decorators.py +0 -0
  264. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/embeddings/__init__.py +0 -0
  265. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/embeddings/test_clients.py +0 -0
  266. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/feedback/__init__.py +0 -0
  267. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/feedback/test_clients.py +0 -0
  268. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/files/__init__.py +0 -0
  269. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/files/test_clients.py +0 -0
  270. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/files/test_managers.py +0 -0
  271. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/files/test_models.py +0 -0
  272. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/files/test_responses.py +0 -0
  273. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/llm/__init__.py +0 -0
  274. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/llm/test_clients.py +0 -0
  275. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/rerank/__init__.py +0 -0
  276. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/rerank/test_clients.py +0 -0
  277. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/rerank/test_managers.py +0 -0
  278. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/rerank/test_mappers.py +0 -0
  279. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/secrets/__init__.py +0 -0
  280. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/secrets/test_clients.py +0 -0
  281. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/services/__init__.py +0 -0
  282. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/services/test_rest.py +0 -0
  283. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/test_handlers.py +0 -0
  284. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/utils/__init__.py +0 -0
  285. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/core/utils/test_console.py +0 -0
  286. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/dbg/__init__.py +0 -0
  287. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/dbg/test_debugger.py +0 -0
  288. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/gam/__init__.py +0 -0
  289. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/gam/test_clients.py +0 -0
  290. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/health/__init__.py +0 -0
  291. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/health/test_clients.py +0 -0
  292. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/__init__.py +0 -0
  293. {pygeai-0.4.0b10/pygeai/tests/integration/chat → pygeai-0.4.0b12/pygeai/tests/integration/assistants}/__init__.py +0 -0
  294. {pygeai-0.4.0b10/pygeai/tests/integration/lab → pygeai-0.4.0b12/pygeai/tests/integration/assistants/rag}/__init__.py +0 -0
  295. {pygeai-0.4.0b10/pygeai/tests/integration/lab/agents → pygeai-0.4.0b12/pygeai/tests/integration/chat}/__init__.py +0 -0
  296. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/chat/test_generate_image.py +0 -0
  297. {pygeai-0.4.0b10/pygeai/tests/integration/lab/tools → pygeai-0.4.0b12/pygeai/tests/integration/lab}/__init__.py +0 -0
  298. {pygeai-0.4.0b10/pygeai/tests/lab → pygeai-0.4.0b12/pygeai/tests/integration/lab/agents}/__init__.py +0 -0
  299. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/agents/test_agents_list.py +0 -0
  300. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/agents/test_create_sharing_link.py +0 -0
  301. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/agents/test_delete_agent.py +0 -0
  302. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/agents/test_get_agent.py +0 -0
  303. {pygeai-0.4.0b10/pygeai/tests/lab/agents → pygeai-0.4.0b12/pygeai/tests/integration/lab/tools}/__init__.py +0 -0
  304. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/tools/test_create_tool.py +0 -0
  305. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/tools/test_delete_tool.py +0 -0
  306. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/tools/test_get_tool.py +0 -0
  307. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/tools/test_list_tools.py +0 -0
  308. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/integration/lab/tools/test_update_tool.py +0 -0
  309. {pygeai-0.4.0b10/pygeai/tests/lab/processes → pygeai-0.4.0b12/pygeai/tests/lab}/__init__.py +0 -0
  310. {pygeai-0.4.0b10/pygeai/tests/lab/spec → pygeai-0.4.0b12/pygeai/tests/lab/agents}/__init__.py +0 -0
  311. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/agents/test_clients.py +0 -0
  312. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/agents/test_mappers.py +0 -0
  313. {pygeai-0.4.0b10/pygeai/tests/lab/strategies → pygeai-0.4.0b12/pygeai/tests/lab/processes}/__init__.py +0 -0
  314. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/processes/test_clients.py +0 -0
  315. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/processes/test_mappers.py +0 -0
  316. {pygeai-0.4.0b10/pygeai/tests/lab/tools → pygeai-0.4.0b12/pygeai/tests/lab/spec}/__init__.py +0 -0
  317. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/spec/test_loader.py +0 -0
  318. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/spec/test_parsers.py +0 -0
  319. {pygeai-0.4.0b10/pygeai/tests/migration → pygeai-0.4.0b12/pygeai/tests/lab/strategies}/__init__.py +0 -0
  320. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/strategies/test_clients.py +0 -0
  321. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/strategies/test_mappers.py +0 -0
  322. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/test_managers.py +0 -0
  323. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/test_mappers.py +0 -0
  324. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/test_models.py +0 -0
  325. {pygeai-0.4.0b10/pygeai/tests/organization → pygeai-0.4.0b12/pygeai/tests/lab/tools}/__init__.py +0 -0
  326. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/tools/test_clients.py +0 -0
  327. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/lab/tools/test_mappers.py +0 -0
  328. {pygeai-0.4.0b10/pygeai/tests/organization/limits → pygeai-0.4.0b12/pygeai/tests/migration}/__init__.py +0 -0
  329. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/migration/test_strategies.py +0 -0
  330. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/migration/test_tools.py +0 -0
  331. {pygeai-0.4.0b10/pygeai/tests/snippets → pygeai-0.4.0b12/pygeai/tests/organization}/__init__.py +0 -0
  332. {pygeai-0.4.0b10/pygeai/tests/snippets/assistants → pygeai-0.4.0b12/pygeai/tests/organization/limits}/__init__.py +0 -0
  333. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/organization/limits/test_clients.py +0 -0
  334. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/organization/limits/test_managers.py +0 -0
  335. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/organization/test_clients.py +0 -0
  336. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/organization/test_managers.py +0 -0
  337. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/organization/test_mappers.py +0 -0
  338. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/proxy/__init__.py +0 -0
  339. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/proxy/test_clients.py +0 -0
  340. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/proxy/test_config.py +0 -0
  341. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/proxy/test_integration.py +0 -0
  342. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/proxy/test_managers.py +0 -0
  343. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/proxy/test_servers.py +0 -0
  344. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/proxy/test_tool.py +0 -0
  345. {pygeai-0.4.0b10/pygeai/tests/snippets/assistants/data_analyst → pygeai-0.4.0b12/pygeai/tests/snippets}/__init__.py +0 -0
  346. {pygeai-0.4.0b10/pygeai/tests/snippets/assistants/rag → pygeai-0.4.0b12/pygeai/tests/snippets/assistants}/__init__.py +0 -0
  347. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/create_chat_assistant.py +0 -0
  348. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/create_text_assistant.py +0 -0
  349. {pygeai-0.4.0b10/pygeai/tests/snippets/chat → pygeai-0.4.0b12/pygeai/tests/snippets/assistants/data_analyst}/__init__.py +0 -0
  350. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/data_analyst/extend_and_check.py +0 -0
  351. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/data_analyst/extend_dataset.py +0 -0
  352. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/data_analyst/get_status.py +0 -0
  353. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/file_summarizer_assistant.py +0 -0
  354. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/get_assistant_data.py +0 -0
  355. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/get_assistant_list.py +0 -0
  356. {pygeai-0.4.0b10/pygeai/tests/snippets/embeddings → pygeai-0.4.0b12/pygeai/tests/snippets/assistants/rag}/__init__.py +0 -0
  357. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/create_rag_assistant.py +0 -0
  358. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/delete_al_documents.py +0 -0
  359. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/delete_document.py +0 -0
  360. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/delete_rag_assistant.py +0 -0
  361. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/get_document.py +0 -0
  362. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/get_documents.py +0 -0
  363. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/get_rag_assistant_data.py +0 -0
  364. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/update_rag_assistant.py +0 -0
  365. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/rag/upload_document.py +0 -0
  366. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/send_feedback.py +0 -0
  367. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/assistants/update_chat_assistant.py +0 -0
  368. {pygeai-0.4.0b10/pygeai/tests/snippets/evaluation → pygeai-0.4.0b12/pygeai/tests/snippets/chat}/__init__.py +0 -0
  369. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/cancel_request.py +0 -0
  370. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/chat_completion.py +0 -0
  371. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/chat_completion_1.py +0 -0
  372. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/chat_completion_2.py +0 -0
  373. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/chat_completion_3.py +0 -0
  374. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/chat_completion_4.py +0 -0
  375. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/chat_completion_streaming.py +0 -0
  376. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/get_request_status.py +0 -0
  377. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/chat/send_chat_request.py +0 -0
  378. {pygeai-0.4.0b10/pygeai/tests/snippets/files → pygeai-0.4.0b12/pygeai/tests/snippets/embeddings}/__init__.py +0 -0
  379. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/embeddings/generate_embeddings.py +0 -0
  380. {pygeai-0.4.0b10/pygeai/tests/snippets/gam → pygeai-0.4.0b12/pygeai/tests/snippets/evaluation}/__init__.py +0 -0
  381. {pygeai-0.4.0b10/pygeai/tests/snippets/lab → pygeai-0.4.0b12/pygeai/tests/snippets/files}/__init__.py +0 -0
  382. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/files/delete_file.py +0 -0
  383. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/files/get_file_content.py +0 -0
  384. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/files/get_file_data.py +0 -0
  385. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/files/get_file_list.py +0 -0
  386. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/files/upload_file.py +0 -0
  387. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/agents → pygeai-0.4.0b12/pygeai/tests/snippets/gam}/__init__.py +0 -0
  388. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/gam/gam_access_token.py +0 -0
  389. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/processes → pygeai-0.4.0b12/pygeai/tests/snippets/lab}/__init__.py +0 -0
  390. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agentic_flow_example_1.py +0 -0
  391. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agentic_flow_example_2.py +0 -0
  392. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agentic_flow_example_3.py +0 -0
  393. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agentic_flow_example_4.py +0 -0
  394. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/processes/jobs → pygeai-0.4.0b12/pygeai/tests/snippets/lab/agents}/__init__.py +0 -0
  395. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/create_agent.py +0 -0
  396. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/create_agent_2.py +0 -0
  397. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/create_agent_edge_case.py +0 -0
  398. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/create_agent_without_instructions.py +0 -0
  399. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/delete_agent.py +0 -0
  400. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/get_agent.py +0 -0
  401. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/list_agents.py +0 -0
  402. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/publish_agent_revision.py +0 -0
  403. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/agents/update_agent.py +0 -0
  404. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/assistant_to_agent.py +0 -0
  405. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/crud_ui.py +0 -0
  406. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/processes/kbs → pygeai-0.4.0b12/pygeai/tests/snippets/lab/processes}/__init__.py +0 -0
  407. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/create_process.py +0 -0
  408. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/create_task.py +0 -0
  409. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/samples → pygeai-0.4.0b12/pygeai/tests/snippets/lab/processes/jobs}/__init__.py +0 -0
  410. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/jobs/list_jobs.py +0 -0
  411. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/strategies → pygeai-0.4.0b12/pygeai/tests/snippets/lab/processes/kbs}/__init__.py +0 -0
  412. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/kbs/create_kb.py +0 -0
  413. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/kbs/get_kb.py +0 -0
  414. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/kbs/list_kbs.py +0 -0
  415. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/kbs/try_all.py +0 -0
  416. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/processes/list_processes.py +0 -0
  417. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/runner_1.py +0 -0
  418. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/tools → pygeai-0.4.0b12/pygeai/tests/snippets/lab/samples}/__init__.py +0 -0
  419. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/samples/summarize_files.py +0 -0
  420. {pygeai-0.4.0b10/pygeai/tests/snippets/lab/use_cases → pygeai-0.4.0b12/pygeai/tests/snippets/lab/strategies}/__init__.py +0 -0
  421. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/strategies/create_reasoning_strategy.py +0 -0
  422. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/strategies/get_reasoning_strategy.py +0 -0
  423. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/strategies/list_reasoning_strategies.py +0 -0
  424. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/strategies/update_reasoning_strategy.py +0 -0
  425. {pygeai-0.4.0b10/pygeai/tests/snippets/migrate → pygeai-0.4.0b12/pygeai/tests/snippets/lab/tools}/__init__.py +0 -0
  426. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/create_tool_edge_case.py +0 -0
  427. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/delete_tool.py +0 -0
  428. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/get_parameter.py +0 -0
  429. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/get_tool.py +0 -0
  430. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/list_tools.py +0 -0
  431. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/publish_tool_revision.py +0 -0
  432. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/set_parameters.py +0 -0
  433. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/tools/update_tool.py +0 -0
  434. {pygeai-0.4.0b10/pygeai/tests/snippets/organization → pygeai-0.4.0b12/pygeai/tests/snippets/lab/use_cases}/__init__.py +0 -0
  435. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/c_code_fixer_agent_flow.py +0 -0
  436. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/create_cli_expert.py +0 -0
  437. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/create_lab_expert.py +0 -0
  438. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/create_tool_headless_web_browser.py +0 -0
  439. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/create_web_designer.py +0 -0
  440. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/create_web_reader.py +0 -0
  441. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/file_summarizer_example.py +0 -0
  442. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/file_summarizer_example_2.py +0 -0
  443. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/update_cli_expert.py +0 -0
  444. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/update_lab_expert.py +0 -0
  445. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/update_web_designer.py +0 -0
  446. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/update_web_reader.py +0 -0
  447. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/lab/use_cases/update_web_reader_with_tool.py +0 -0
  448. {pygeai-0.4.0b10/pygeai/tests/snippets/rerank → pygeai-0.4.0b12/pygeai/tests/snippets/migrate}/__init__.py +0 -0
  449. {pygeai-0.4.0b10/pygeai/tests/snippets/secrets → pygeai-0.4.0b12/pygeai/tests/snippets/organization}/__init__.py +0 -0
  450. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/organization/create_project.py +0 -0
  451. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/organization/delete_project.py +0 -0
  452. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/organization/export_request_data.py +0 -0
  453. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/organization/get_project_data.py +0 -0
  454. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/organization/get_project_list.py +0 -0
  455. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/organization/get_project_tokens.py +0 -0
  456. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/organization/update_project.py +0 -0
  457. {pygeai-0.4.0b10/pygeai/tests/snippets/usage_limit → pygeai-0.4.0b12/pygeai/tests/snippets/rerank}/__init__.py +0 -0
  458. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/rerank/rerank_chunks.py +0 -0
  459. {pygeai-0.4.0b10/pygeai/vendor/a2a/auth → pygeai-0.4.0b12/pygeai/tests/snippets/secrets}/__init__.py +0 -0
  460. /pygeai-0.4.0b10/pygeai/vendor/a2a/py.typed → /pygeai-0.4.0b12/pygeai/tests/snippets/usage_limit/__init__.py +0 -0
  461. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/delete_usage_limit.py +0 -0
  462. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/get_all_usage_limit_from_organization.py +0 -0
  463. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/get_usage_limit_from_organization.py +0 -0
  464. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/get_usage_limit_from_project.py +0 -0
  465. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/set_usage_limit_organization.py +0 -0
  466. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/set_usage_limit_project.py +0 -0
  467. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/update_usage_limit_organization.py +0 -0
  468. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/tests/snippets/usage_limit/update_usage_limit_project.py +0 -0
  469. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/__init__.py +0 -0
  470. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/auth/user.py +0 -0
  471. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/client/__init__.py +0 -0
  472. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/client/client.py +0 -0
  473. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/client/errors.py +0 -0
  474. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/client/helpers.py +0 -0
  475. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/__init__.py +0 -0
  476. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/agent_execution/__init__.py +0 -0
  477. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/agent_execution/agent_executor.py +0 -0
  478. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/agent_execution/context.py +0 -0
  479. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/agent_execution/request_context_builder.py +0 -0
  480. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/agent_execution/simple_request_context_builder.py +0 -0
  481. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/apps/__init__.py +0 -0
  482. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/apps/jsonrpc/__init__.py +0 -0
  483. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/apps/jsonrpc/fastapi_app.py +0 -0
  484. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/apps/jsonrpc/jsonrpc_app.py +0 -0
  485. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/apps/jsonrpc/starlette_app.py +0 -0
  486. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/context.py +0 -0
  487. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/events/__init__.py +0 -0
  488. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/events/event_consumer.py +0 -0
  489. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/events/event_queue.py +0 -0
  490. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/events/in_memory_queue_manager.py +0 -0
  491. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/events/queue_manager.py +0 -0
  492. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/request_handlers/__init__.py +0 -0
  493. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/request_handlers/default_request_handler.py +0 -0
  494. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/request_handlers/jsonrpc_handler.py +0 -0
  495. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/request_handlers/request_handler.py +0 -0
  496. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/request_handlers/response_helpers.py +0 -0
  497. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/__init__.py +0 -0
  498. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/inmemory_push_notifier.py +0 -0
  499. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/inmemory_task_store.py +0 -0
  500. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/push_notifier.py +0 -0
  501. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/result_aggregator.py +0 -0
  502. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/task_manager.py +0 -0
  503. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/task_store.py +0 -0
  504. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/server/tasks/task_updater.py +0 -0
  505. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/types.py +0 -0
  506. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/utils/__init__.py +0 -0
  507. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/utils/artifact.py +0 -0
  508. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/utils/errors.py +0 -0
  509. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/utils/helpers.py +0 -0
  510. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/utils/message.py +0 -0
  511. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/utils/task.py +0 -0
  512. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai/vendor/a2a/utils/telemetry.py +0 -0
  513. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai.egg-info/dependency_links.txt +0 -0
  514. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai.egg-info/entry_points.txt +0 -0
  515. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai.egg-info/requires.txt +0 -0
  516. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/pygeai.egg-info/top_level.txt +0 -0
  517. {pygeai-0.4.0b10 → pygeai-0.4.0b12}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pygeai
3
- Version: 0.4.0b10
3
+ Version: 0.4.0b12
4
4
  Summary: Software Development Kit to interact with Globant Enterprise AI.
5
5
  Author-email: Globant <geai-sdk@globant.com>
6
6
  License-Expression: MIT
@@ -1,5 +1,4 @@
1
1
  import logging
2
- from pathlib import Path
3
2
 
4
3
  import streamlit as st
5
4
  import argparse
@@ -362,7 +362,7 @@ def chat_with_agent(option_list: list):
362
362
  raise MissingRequirementException(f"Agent name must be specified.")
363
363
 
364
364
  project_id = get_project_id()
365
- agent_data = AgentClient().get_agent(project_id=project_id, agent_id=agent_name)
365
+ agent_data = AgentClient(project_id=project_id).get_agent(agent_id=agent_name)
366
366
  if 'errors' in agent_data:
367
367
  raise InvalidAgentException(f"There is no agent with that name: {agent_data.get('errors')}")
368
368
 
@@ -374,62 +374,54 @@ def chat_with_agent(option_list: list):
374
374
  Console.write_stderr("Streamlit is required for GUI mode. Install it with 'pip install streamlit'.")
375
375
  sys.exit(1)
376
376
 
377
- if use_gui:
378
- try:
379
- import streamlit
380
- except ImportError:
381
- logger.error("Streamlit not installed")
382
- Console.write_stderr("Streamlit is required for GUI mode. Install it with 'pip install streamlit'.")
383
- sys.exit(1)
377
+ try:
378
+ ui_path = resources.files("pygeai.chat").joinpath("ui.py")
379
+ ui_file_path = str(ui_path)
380
+
381
+ # Add the top-level project root to PYTHONPATH
382
+ package_root = str(Path(ui_file_path).resolve().parents[2])
383
+ env = os.environ.copy()
384
+ env["PYTHONPATH"] = package_root + os.pathsep + env.get("PYTHONPATH", "")
385
+
386
+ streamlit_cmd = [
387
+ sys.executable, "-m", "streamlit", "run", ui_file_path,
388
+ "--server.address", "127.0.0.1",
389
+ "--", "--agent-name", agent_name
390
+ ]
391
+
392
+ if platform.system() == "Linux":
393
+ streamlit_cmd.insert(5, "--server.headless=true")
394
+
395
+ process = subprocess.Popen(
396
+ streamlit_cmd,
397
+ stdout=subprocess.PIPE,
398
+ stderr=subprocess.PIPE,
399
+ text=True
400
+ )
384
401
 
385
- try:
386
- ui_path = resources.files("pygeai.chat").joinpath("ui.py")
387
- ui_file_path = str(ui_path)
388
-
389
- # Add the top-level project root to PYTHONPATH
390
- package_root = str(Path(ui_file_path).resolve().parents[2])
391
- env = os.environ.copy()
392
- env["PYTHONPATH"] = package_root + os.pathsep + env.get("PYTHONPATH", "")
393
-
394
- streamlit_cmd = [
395
- sys.executable, "-m", "streamlit", "run", ui_file_path,
396
- "--server.address", "127.0.0.1",
397
- "--", "--agent-name", agent_name
398
- ]
399
-
400
- if platform.system() == "Linux":
401
- streamlit_cmd.insert(5, "--server.headless=true")
402
-
403
- process = subprocess.Popen(
404
- streamlit_cmd,
405
- stdout=subprocess.PIPE,
406
- stderr=subprocess.PIPE,
407
- text=True
408
- )
409
-
410
- url = "http://localhost:8501"
411
- if platform.system() == "Linux":
412
- Console.write_stdout(f"Open Streamlit app at {url} (or next port like 8502 if 8501 is taken)")
413
-
414
- try:
415
- stdout, stderr = process.communicate()
416
- if stderr:
417
- logger.error(f"Streamlit stderr:\n{stderr}")
418
- Console.write_stderr(f"Streamlit error:\n{stderr}")
419
- except KeyboardInterrupt:
420
- process.terminate()
421
- Console.write_stdout("Streamlit stopped.")
422
- sys.exit(0)
402
+ url = "http://localhost:8501"
403
+ if platform.system() == "Linux":
404
+ Console.write_stdout(f"Open Streamlit app at {url} (or next port like 8502 if 8501 is taken)")
423
405
 
424
- except FileNotFoundError:
425
- logger.error("Could not locate pygeai/chat/ui.py")
426
- Console.write_stderr("Streamlit UI file not found. Ensure pygeai is installed correctly.")
427
- sys.exit(1)
428
- except Exception as e:
429
- logger.error(f"Streamlit error: {e}")
430
- Console.write_stderr(
431
- f"Failed to launch Streamlit. Check port with 'lsof -i :8501' and kill any process, or try {url}.")
432
- sys.exit(1)
406
+ try:
407
+ stdout, stderr = process.communicate()
408
+ if stderr:
409
+ logger.error(f"Streamlit stderr:\n{stderr}")
410
+ Console.write_stderr(f"Streamlit error:\n{stderr}")
411
+ except KeyboardInterrupt:
412
+ process.terminate()
413
+ Console.write_stdout("Streamlit stopped.")
414
+ sys.exit(0)
415
+
416
+ except FileNotFoundError:
417
+ logger.error("Could not locate pygeai/chat/ui.py")
418
+ Console.write_stderr("Streamlit UI file not found. Ensure pygeai is installed correctly.")
419
+ sys.exit(1)
420
+ except Exception as e:
421
+ logger.error(f"Streamlit error: {e}")
422
+ Console.write_stderr(
423
+ f"Failed to launch Streamlit. Check port with 'lsof -i :8501' and kill any process, or try {url}.")
424
+ sys.exit(1)
433
425
  else:
434
426
  chat_session = AgentChatSession(agent_name)
435
427
  messages = list()
@@ -15,7 +15,6 @@ from pygeai.lab.processes.clients import AgenticProcessClient
15
15
  from pygeai.lab.strategies.clients import ReasoningStrategyClient
16
16
  from pygeai.lab.tools.clients import ToolClient
17
17
  from pygeai.lab.constants import VALID_SCOPES
18
- from pygeai.tests.snippets.lab.crud_ui import project_id
19
18
 
20
19
 
21
20
  def show_help():
@@ -114,9 +114,7 @@ def get_settings():
114
114
 
115
115
  if __name__ == "__main__":
116
116
  settings = get_settings()
117
- geai_api_key = settings.get_api_key()
118
117
  geai_base_url = settings.get_base_url()
119
118
  geai_eval_url = settings.get_eval_url()
120
- print(f"api_key: {geai_api_key}")
121
119
  print(f"base_url: {geai_base_url}")
122
120
  print(f"eval_url: {geai_eval_url}")
@@ -559,7 +559,7 @@ class AILabManager:
559
559
  tool_id: Optional[str] = None,
560
560
  tool_public_name: Optional[str] = None,
561
561
  parameters: List[ToolParameter] = None
562
- ) -> Tool:
562
+ ) -> EmptyResponse:
563
563
  """
564
564
  Sets or updates parameters for a specific tool in the specified project.
565
565
 
@@ -591,7 +591,7 @@ class AILabManager:
591
591
  logger.error(f"Error received while setting tool parameters: {error}")
592
592
  raise APIError(f"Error received while setting tool parameters: {error}")
593
593
 
594
- result = ToolMapper.map_to_tool(response_data)
594
+ result = ResponseMapper.map_to_empty_response(response_data or "Parameter set successfully")
595
595
  return result
596
596
 
597
597
  def list_reasoning_strategies(
@@ -114,7 +114,8 @@ class ToolClient(AILabClient):
114
114
  headers=headers,
115
115
  data=data
116
116
  )
117
- if response.status_code != 200:
117
+
118
+ if response.status_code >= 300:
118
119
  logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
119
120
  raise APIResponseError(f"API returned an error: {response.text}")
120
121
  try:
@@ -168,7 +169,7 @@ class ToolClient(AILabClient):
168
169
  "allowExternal": allow_external
169
170
  }
170
171
  )
171
- if response.status_code != 200:
172
+ if response.status_code >= 300:
172
173
  logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
173
174
  raise APIResponseError(f"API returned an error: {response.text}")
174
175
  try:
@@ -212,7 +213,7 @@ class ToolClient(AILabClient):
212
213
  "allowDrafts": allow_drafts,
213
214
  }
214
215
  )
215
- if response.status_code != 200:
216
+ if response.status_code >= 300:
216
217
  logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
217
218
  raise APIResponseError(f"API returned an error: {response.text}")
218
219
  try:
@@ -255,7 +256,7 @@ class ToolClient(AILabClient):
255
256
  endpoint=endpoint,
256
257
  headers=headers
257
258
  )
258
- if response.status_code != 200:
259
+ if response.status_code >= 300:
259
260
  logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
260
261
  raise APIResponseError(f"API returned an error: {response.text}")
261
262
 
@@ -375,7 +376,7 @@ class ToolClient(AILabClient):
375
376
  headers=headers,
376
377
  data=data
377
378
  )
378
- if response.status_code != 200:
379
+ if response.status_code >= 300:
379
380
  logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
380
381
  raise APIResponseError(f"API returned an error: {response.text}")
381
382
  try:
@@ -463,7 +464,7 @@ class ToolClient(AILabClient):
463
464
  "allowDrafts": allow_drafts,
464
465
  }
465
466
  )
466
- if response.status_code != 200:
467
+ if response.status_code >= 300:
467
468
  logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
468
469
  raise APIResponseError(f"API returned an error: {response.text}")
469
470
  try:
@@ -520,16 +521,11 @@ class ToolClient(AILabClient):
520
521
  headers=headers,
521
522
  data=data
522
523
  )
523
- if response.status_code != 200:
524
- logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
525
- raise APIResponseError(f"API returned an error: {response.text}")
526
- try:
527
- result = response.json()
528
- except JSONDecodeError as e:
529
- logger.error(f"Unable to set parameters for tool {tool_id or tool_public_name} in project {self.project_id}: JSON parsing error (status {response.status_code}): {e}. Response: {response.text}")
530
- raise InvalidAPIResponseException(f"Unable to set parameters for tool {tool_id or tool_public_name} in project {self.project_id}: {response.text}")
531
-
532
- return result
524
+ if response.status_code != 204:
525
+ logger.error(f"Unable to set parameter for tool {tool_id or tool_public_name} from project {self.project_id}: JSON parsing error (status {response.status_code}). Response: {response.text}")
526
+ raise InvalidAPIResponseException(f"Unable to set parameter for tool {tool_id or tool_public_name} from project {self.project_id}: {response.text}")
527
+ else:
528
+ return {}
533
529
 
534
530
  def export_tool(
535
531
  self,
@@ -559,7 +555,7 @@ class ToolClient(AILabClient):
559
555
  endpoint=endpoint,
560
556
  headers=headers,
561
557
  )
562
- if response.status_code != 200:
558
+ if response.status_code >= 300:
563
559
  logger.error(f"Invalid status code returned from the API endpoint: {response.text}")
564
560
  raise APIResponseError(f"API returned an error: {response.text}")
565
561
  try:
@@ -0,0 +1,72 @@
1
+ from unittest import TestCase
2
+ from pygeai.assistant.managers import AssistantManager
3
+ from pygeai.core.models import WelcomeData, LlmSettings
4
+ from pygeai.assistant.rag.models import (
5
+ Search,
6
+ RetrieverOptions,
7
+ SearchOptions,
8
+ ChunkOptions,
9
+ IndexOptions,
10
+ RAGAssistant,
11
+ )
12
+
13
+ assistant_manager = AssistantManager(alias="beta")
14
+
15
+ class TestAssistantCreateRagIntegration(TestCase):
16
+
17
+ def __load_rag(self):
18
+ llm_options = LlmSettings(
19
+ cache=False,
20
+ temperature=0.1,
21
+ max_tokens=999,
22
+ model_name="gpt-3.5-turbo-16k",
23
+ n=1,
24
+ presence_penalty=0,
25
+ frequency_penalty=0,
26
+ provider="OpenAI",
27
+ stream=False,
28
+ top_p=1.0,
29
+ type=None,
30
+ verbose=True,
31
+ )
32
+
33
+ retriever_options = RetrieverOptions(type="vectorStore")
34
+
35
+ search_options = SearchOptions(
36
+ history_count=2,
37
+ llm=llm_options,
38
+ search=Search(
39
+ k=5,
40
+ return_source_documents=False,
41
+ score_threshold=0,
42
+ prompt="Use {context} and {question}",
43
+ template="",
44
+ ),
45
+ retriever=retriever_options,
46
+ )
47
+
48
+ chunk_options = ChunkOptions(chunk_size=999, chunk_overlap=0)
49
+
50
+ index_options = IndexOptions(chunks=chunk_options)
51
+
52
+ welcome_data = WelcomeData(
53
+ title="Test Profile Welcome Data",
54
+ description="Test Profile with WelcomeData",
55
+ features=[],
56
+ examples_prompt=[],
57
+ )
58
+
59
+ return RAGAssistant(
60
+ name="Testaasdfasdfsasdfdfsdfsdf123in123g12355",
61
+ description="Test Profile with WelcomeData",
62
+ search_options=search_options,
63
+ index_options=index_options,
64
+ welcome_data=welcome_data,
65
+ )
66
+
67
+
68
+ def test_create_rag_assistant(self):
69
+ rag_assistant = self.__load_rag()
70
+ response = assistant_manager.create_assistant(rag_assistant)
71
+
72
+ self.assertIsInstance(response, RAGAssistant, "Failed to create RAG assistant")
@@ -33,7 +33,6 @@ class TestAILabCreateAgentIntegration(TestCase):
33
33
  access_scope="public",
34
34
  public_name=f"public_{random_str}",
35
35
  job_description="Translator",
36
- avatar_image="https://www.shareicon.net/data/128x128/2016/11/09/851442_logo_512x512.png",
37
36
  description="Agent that translates from any language to english.",
38
37
  agent_data=AgentData(
39
38
  prompt=Prompt(
@@ -28,7 +28,6 @@ class TestAILabPublishAgentRevisionIntegration(TestCase):
28
28
  access_scope="public",
29
29
  public_name=f"public_{random_str}",
30
30
  job_description=f"SummarizerAgent{random_str}",
31
- avatar_image="https://www.shareicon.net/data/128x128/2016/11/09/851442_logo_512x512.png",
32
31
  description=f"Agent that summarized documents. {random_str}",
33
32
  agent_data=AgentData(
34
33
  prompt=Prompt(
@@ -25,7 +25,6 @@ class TestAILabUpdateAgentIntegration(TestCase):
25
25
  access_scope="public",
26
26
  public_name=f"public_{random_str}",
27
27
  job_description=f"SummarizerAgent{random_str}",
28
- avatar_image="https://www.shareicon.net/data/128x128/2016/11/09/851442_logo_512x512.png",
29
28
  description=f"Agent that summarized documents. {random_str}",
30
29
  agent_data=AgentData(
31
30
  prompt=Prompt(
@@ -0,0 +1,98 @@
1
+ from unittest import TestCase
2
+ from pygeai.lab.managers import AILabManager
3
+ from pygeai.lab.models import FilterSettings, ToolParameter
4
+ from pygeai.core.common.exceptions import APIResponseError, MissingRequirementException
5
+ import copy
6
+
7
+ ai_lab_manager: AILabManager
8
+
9
+ class TestAILabGetParameterIntegration(TestCase):
10
+
11
+ def setUp(self):
12
+ self.ai_lab_manager = AILabManager(alias="beta")
13
+ self.tool_id = "42610b61-cb47-49bf-9475-36ee652f31f3"
14
+ self.filter_settings = FilterSettings(
15
+ revision="0",
16
+ version="0",
17
+ allow_drafts=True
18
+ )
19
+
20
+
21
+ def __get_parameter(self, tool_id: str = None, tool_public_name: str = None, filter_settings: FilterSettings = None):
22
+ return self.ai_lab_manager.get_parameter(
23
+ tool_id=self.tool_id if tool_id is None else tool_id,
24
+ tool_public_name=tool_public_name,
25
+ filter_settings=self.filter_settings if filter_settings is None else filter_settings
26
+ )
27
+
28
+
29
+ def test_get_parameter(self):
30
+ tool_parameters = self.__get_parameter()
31
+
32
+ for param in tool_parameters:
33
+ self.assertIsInstance(param, ToolParameter, "Expected a tool parameter")
34
+
35
+
36
+ def test_get_parameter_invalid_tool_id(self):
37
+ invalid_id = "0026e53d-ea78-4cac-af9f-12650invalid"
38
+
39
+ with self.assertRaises(APIResponseError) as exception:
40
+ self.__get_parameter(tool_id=invalid_id)
41
+ self.assertIn(
42
+ f"Tool not found [IdOrName= {invalid_id}]",
43
+ str(exception.exception),
44
+ "Expected error when trying to send an invalid tool id"
45
+ )
46
+
47
+
48
+ def test_get_parameter_no_tool_id(self):
49
+ with self.assertRaises(MissingRequirementException) as exception:
50
+ self.__get_parameter(tool_id="")
51
+ self.assertIn(
52
+ "Either tool_id or tool_public_name must be provided.",
53
+ str(exception.exception),
54
+ "Expected error when trying to send a request without tool_id"
55
+ )
56
+
57
+
58
+ def test_get_parameter_by_tool_public_name(self):
59
+ tool_parameters = self.__get_parameter(tool_public_name="test.sdk.beta.tool")
60
+
61
+ for param in tool_parameters:
62
+ self.assertIsInstance(param, ToolParameter, "Expected a tool parameter")
63
+
64
+
65
+ def test_get_parameter_by_invalid_public_name(self):
66
+ invalid_public_name = "test.sdk.beta.tool.invalid"
67
+
68
+ with self.assertRaises(APIResponseError) as exception:
69
+ self.__get_parameter(tool_public_name=invalid_public_name)
70
+ self.assertIn(
71
+ f"Tool not found [IdOrName= {invalid_public_name}]",
72
+ str(exception.exception),
73
+ "Expected error when trying to send a request without tool_id"
74
+ )
75
+
76
+
77
+ def test_get_parameter_by_past_revision(self):
78
+ filter_settings = copy.deepcopy(self.filter_settings)
79
+ filter_settings.revision = "3"
80
+
81
+ with self.assertRaises(APIResponseError) as exception:
82
+ self.__get_parameter(filter_settings=filter_settings)
83
+ self.assertIn(
84
+ "Requested revision not found [revision=3].",
85
+ str(exception.exception),
86
+ "Expected error when trying to send a request without tool_id"
87
+ )
88
+
89
+
90
+ def test_get_parameter_by_draft_revision(self):
91
+ filter_settings = copy.deepcopy(self.filter_settings)
92
+ filter_settings.revision = "10"
93
+ tool_parameters = self.__get_parameter(filter_settings=filter_settings)
94
+
95
+ for param in tool_parameters:
96
+ self.assertIsInstance(param, ToolParameter, "Expected a tool parameter")
97
+
98
+
@@ -0,0 +1,119 @@
1
+ from unittest import TestCase
2
+ import uuid
3
+ from pygeai.lab.managers import AILabManager
4
+ from pygeai.lab.models import Tool
5
+ from pygeai.core.common.exceptions import APIError
6
+
7
+ ai_lab_manager: AILabManager
8
+
9
+ class TestAILabPublishToolRevisionIntegration(TestCase):
10
+
11
+ def setUp(self):
12
+ self.ai_lab_manager = AILabManager(alias="beta")
13
+ self.tool_id = "c77e1f2e-0322-4dd0-b6ec-aff217f1cb32"
14
+
15
+
16
+ def __publish_tool_revision(self, revision: str, tool_id=None):
17
+ return self.ai_lab_manager.publish_tool_revision(
18
+ tool_id=self.tool_id if tool_id is None else tool_id,
19
+ revision=revision
20
+ )
21
+
22
+ def __load_tool(self):
23
+ self.random_str = str(uuid.uuid4())
24
+ return Tool(
25
+ id="c77e1f2e-0322-4dd0-b6ec-aff217f1cb32",
26
+ name=f"sdk_project_updated_tool_{self.random_str}",
27
+ description=f"Tool updated for sdk testing purposes {self.random_str}",
28
+ scope="builtin",
29
+ openApi="https://raw.usercontent.com//openapi.json",
30
+ openApiJson={"openapi": "3.0.0","info": {"title": f"Simple API overview {self.random_str}","version": "3.0.0"}},
31
+ accessScope="private",
32
+ reportEvents="None",
33
+ parameters=[{
34
+ "key": "param",
35
+ "description": f"param description {self.random_str}",
36
+ "type":"app",
37
+ "value": f"value {self.random_str}",
38
+ "data_type": "String",
39
+ "isRequired": False
40
+ }]
41
+ )
42
+
43
+
44
+ def __update_tool(self, tool: Tool = None, automatic_publish: bool = False, upsert: bool = False):
45
+ """
46
+ Helper method to update a tool.
47
+ """
48
+ tool = self.__load_tool()
49
+ return self.ai_lab_manager.update_tool(
50
+ tool = tool,
51
+ automatic_publish=False,
52
+ upsert=False
53
+ )
54
+
55
+
56
+ def test_publish_tool_revision(self):
57
+ updated_tool = self.__update_tool()
58
+ new_revision = updated_tool.revision
59
+
60
+ published_tool = self.__publish_tool_revision(revision=str(new_revision))
61
+
62
+ self.assertFalse(published_tool.is_draft, "Expected draft to be false after publishing the revision")
63
+ self.assertEqual(published_tool.revision, new_revision, "Expected last revision to be published")
64
+
65
+
66
+ def test_publish_tool_earlier_revision_with_newer_revision_published(self):
67
+ with self.assertRaises(APIError) as exception:
68
+ self.__publish_tool_revision(revision="1")
69
+ self.assertIn(
70
+ "There are newer published revisions.",
71
+ str(exception.exception),
72
+ "Expected error when trying to send a earlier revision"
73
+ )
74
+
75
+
76
+ def test_publish_tool_earlier_revision(self):
77
+ earlier_revision = (self.__update_tool()).revision
78
+ #update the tool to create a newer revision
79
+ self.__update_tool()
80
+
81
+ published_tool = self.__publish_tool_revision(revision=earlier_revision)
82
+
83
+ self.assertFalse(published_tool.is_draft, "Expected draft to be false after publishing the revision")
84
+ self.assertEqual(published_tool.revision, earlier_revision, "Expected last revision to be published")
85
+
86
+
87
+ def test_publish_tool_invalid_revision(self):
88
+ with self.assertRaises(APIError) as exception:
89
+ self.__publish_tool_revision(revision="10000000")
90
+ self.assertIn(
91
+ "Invalid revision [rev=10000000]",
92
+ str(exception.exception),
93
+ "Expected error when trying to send a revision that does not exist"
94
+ )
95
+
96
+
97
+ def test_publish_tool_string_revision(self):
98
+ with self.assertRaises(APIError) as exception:
99
+ self.__publish_tool_revision(revision="revision")
100
+ self.assertIn("Bad Request", str(exception.exception))
101
+ self.assertIn("400", str(exception.exception))
102
+
103
+
104
+ def test_publish_tool_invalid_tool_id(self):
105
+ invalid_id = "0026e53d-ea78-4cac-af9f-12650invalid"
106
+ with self.assertRaises(APIError) as exception:
107
+ self.__publish_tool_revision(revision="103", tool_id=invalid_id)
108
+ self.assertIn(
109
+ f"Tool not found [IdOrName= {invalid_id}].",
110
+ str(exception.exception),
111
+ "Expected error when sending and invalid agent id"
112
+ )
113
+
114
+
115
+ def test_publish_tool_no_tool_id(self):
116
+ with self.assertRaises(APIError) as exception:
117
+ self.__publish_tool_revision(revision="103", tool_id="")
118
+ self.assertIn("Not Found", str(exception.exception))
119
+ self.assertIn("404", str(exception.exception))