pygeai 0.2.7b37__tar.gz → 0.2.7b38__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 (491) hide show
  1. {pygeai-0.2.7b37/pygeai.egg-info → pygeai-0.2.7b38}/PKG-INFO +1 -1
  2. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/mappers.py +11 -2
  3. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/models.py +20 -11
  4. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/managers.py +2 -2
  5. pygeai-0.2.7b38/pygeai/organization/responses.py +47 -0
  6. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/test_managers.py +45 -45
  7. {pygeai-0.2.7b37 → pygeai-0.2.7b38/pygeai.egg-info}/PKG-INFO +1 -1
  8. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pyproject.toml +1 -1
  9. pygeai-0.2.7b37/pygeai/organization/responses.py +0 -24
  10. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/LICENSE +0 -0
  11. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/MANIFEST.in +0 -0
  12. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/README.md +0 -0
  13. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/docs/geai-proxy/README.md +0 -0
  14. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/__init__.py +0 -0
  15. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/admin/__init__.py +0 -0
  16. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/admin/clients.py +0 -0
  17. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/admin/endpoints.py +0 -0
  18. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/__init__.py +0 -0
  19. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/clients.py +0 -0
  20. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data/__init__.py +0 -0
  21. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data/clients.py +0 -0
  22. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data_analyst/__init__.py +0 -0
  23. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data_analyst/clients.py +0 -0
  24. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data_analyst/endpoints.py +0 -0
  25. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/endpoints.py +0 -0
  26. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/managers.py +0 -0
  27. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/mappers.py +0 -0
  28. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/__init__.py +0 -0
  29. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/clients.py +0 -0
  30. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/endpoints.py +0 -0
  31. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/mappers.py +0 -0
  32. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/models.py +0 -0
  33. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/responses.py +0 -0
  34. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/__init__.py +0 -0
  35. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/clients.py +0 -0
  36. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/endpoints.py +0 -0
  37. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/iris.py +0 -0
  38. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/managers.py +0 -0
  39. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/session.py +0 -0
  40. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/settings.py +0 -0
  41. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/ui.py +0 -0
  42. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/__init__.py +0 -0
  43. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/__main__.py +0 -0
  44. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/__init__.py +0 -0
  45. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/admin.py +0 -0
  46. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/assistant.py +0 -0
  47. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/base.py +0 -0
  48. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/builders.py +0 -0
  49. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/chat.py +0 -0
  50. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/common.py +0 -0
  51. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/configuration.py +0 -0
  52. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/embeddings.py +0 -0
  53. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/evaluation.py +0 -0
  54. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/feedback.py +0 -0
  55. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/files.py +0 -0
  56. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/flows/__init__.py +0 -0
  57. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/gam.py +0 -0
  58. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/__init__.py +0 -0
  59. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/ai_lab.py +0 -0
  60. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/common.py +0 -0
  61. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/spec.py +0 -0
  62. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/llm.py +0 -0
  63. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/migrate.py +0 -0
  64. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/options.py +0 -0
  65. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/organization.py +0 -0
  66. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/rag.py +0 -0
  67. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/rerank.py +0 -0
  68. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/secrets.py +0 -0
  69. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/usage_limits.py +0 -0
  70. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/validators.py +0 -0
  71. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/version.py +0 -0
  72. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/geai.py +0 -0
  73. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/geai_proxy.py +0 -0
  74. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/install_man.py +0 -0
  75. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/parsers.py +0 -0
  76. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/texts/__init__.py +0 -0
  77. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/texts/help.py +0 -0
  78. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/__init__.py +0 -0
  79. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/__init__.py +0 -0
  80. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/clients.py +0 -0
  81. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/models.py +0 -0
  82. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/responses.py +0 -0
  83. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/session.py +0 -0
  84. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/__init__.py +0 -0
  85. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/config.py +0 -0
  86. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/decorators.py +0 -0
  87. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/exceptions.py +0 -0
  88. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/__init__.py +0 -0
  89. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/clients.py +0 -0
  90. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/endpoints.py +0 -0
  91. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/managers.py +0 -0
  92. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/mappers.py +0 -0
  93. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/models.py +0 -0
  94. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/responses.py +0 -0
  95. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/__init__.py +0 -0
  96. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/clients.py +0 -0
  97. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/endpoints.py +0 -0
  98. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/models.py +0 -0
  99. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/__init__.py +0 -0
  100. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/clients.py +0 -0
  101. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/endpoints.py +0 -0
  102. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/managers.py +0 -0
  103. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/mappers.py +0 -0
  104. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/models.py +0 -0
  105. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/responses.py +0 -0
  106. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/handlers.py +0 -0
  107. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/llm/__init__.py +0 -0
  108. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/llm/clients.py +0 -0
  109. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/llm/endpoints.py +0 -0
  110. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/__init__.py +0 -0
  111. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/clients.py +0 -0
  112. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/endpoints.py +0 -0
  113. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/models.py +0 -0
  114. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/__init__.py +0 -0
  115. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/clients.py +0 -0
  116. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/endpoints.py +0 -0
  117. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/managers.py +0 -0
  118. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/mappers.py +0 -0
  119. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/models.py +0 -0
  120. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/responses.py +0 -0
  121. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/secrets/__init__.py +0 -0
  122. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/secrets/clients.py +0 -0
  123. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/secrets/endpoints.py +0 -0
  124. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/__init__.py +0 -0
  125. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/llm/__init__.py +0 -0
  126. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/llm/model.py +0 -0
  127. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/llm/providers.py +0 -0
  128. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/response.py +0 -0
  129. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/rest.py +0 -0
  130. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/singleton.py +0 -0
  131. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/utils/__init__.py +0 -0
  132. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/utils/console.py +0 -0
  133. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/dbg/__init__.py +0 -0
  134. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/dbg/debugger.py +0 -0
  135. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/__init__.py +0 -0
  136. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/clients.py +0 -0
  137. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/dataset/__init__.py +0 -0
  138. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/dataset/clients.py +0 -0
  139. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/dataset/endpoints.py +0 -0
  140. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/plan/__init__.py +0 -0
  141. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/plan/clients.py +0 -0
  142. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/plan/endpoints.py +0 -0
  143. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/result/__init__.py +0 -0
  144. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/result/clients.py +0 -0
  145. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/result/endpoints.py +0 -0
  146. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/flows/__init__.py +0 -0
  147. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/flows/endpoints.py +0 -0
  148. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/flows/models.py +0 -0
  149. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/gam/__init__.py +0 -0
  150. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/gam/clients.py +0 -0
  151. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/gam/endpoints.py +0 -0
  152. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/health/__init__.py +0 -0
  153. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/health/clients.py +0 -0
  154. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/health/endpoints.py +0 -0
  155. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/__init__.py +0 -0
  156. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/__init__.py +0 -0
  157. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/clients.py +0 -0
  158. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/endpoints.py +0 -0
  159. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/mappers.py +0 -0
  160. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/constants.py +0 -0
  161. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/models.py +0 -0
  162. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/__init__.py +0 -0
  163. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/clients.py +0 -0
  164. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/endpoints.py +0 -0
  165. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/mappers.py +0 -0
  166. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/runners.py +0 -0
  167. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/spec/__init__.py +0 -0
  168. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/spec/loader.py +0 -0
  169. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/spec/parsers.py +0 -0
  170. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/__init__.py +0 -0
  171. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/clients.py +0 -0
  172. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/endpoints.py +0 -0
  173. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/mappers.py +0 -0
  174. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/__init__.py +0 -0
  175. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/clients.py +0 -0
  176. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/endpoints.py +0 -0
  177. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/mappers.py +0 -0
  178. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/__init__.py +0 -0
  179. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/man1/__init__.py +0 -0
  180. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/man1/geai-proxy.1 +0 -0
  181. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/man1/geai.1 +0 -0
  182. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/migration/__init__.py +0 -0
  183. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/migration/strategies.py +0 -0
  184. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/migration/tools.py +0 -0
  185. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/__init__.py +0 -0
  186. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/clients.py +0 -0
  187. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/endpoints.py +0 -0
  188. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/__init__.py +0 -0
  189. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/clients.py +0 -0
  190. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/endpoints.py +0 -0
  191. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/managers.py +0 -0
  192. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/mappers.py +0 -0
  193. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/managers.py +0 -0
  194. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/mappers.py +0 -0
  195. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/__init__.py +0 -0
  196. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/clients.py +0 -0
  197. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/config.py +0 -0
  198. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/managers.py +0 -0
  199. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/servers.py +0 -0
  200. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/tool.py +0 -0
  201. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/__init__.py +0 -0
  202. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/admin/__init__.py +0 -0
  203. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/admin/test_clients.py +0 -0
  204. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/__init__.py +0 -0
  205. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/__init__.py +0 -0
  206. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/test_clients.py +0 -0
  207. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/test_mappers.py +0 -0
  208. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/test_models.py +0 -0
  209. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/test_clients.py +0 -0
  210. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/test_managers.py +0 -0
  211. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/test_mappers.py +0 -0
  212. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/__init__.py +0 -0
  213. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_clients.py +0 -0
  214. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_iris.py +0 -0
  215. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_session.py +0 -0
  216. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_ui.py +0 -0
  217. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/__init__.py +0 -0
  218. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/__init__.py +0 -0
  219. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/__init__.py +0 -0
  220. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/test_ai_lab.py +0 -0
  221. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/test_common.py +0 -0
  222. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/test_spec.py +0 -0
  223. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_assistant.py +0 -0
  224. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_chat.py +0 -0
  225. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_common.py +0 -0
  226. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_embeddings.py +0 -0
  227. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_feedback.py +0 -0
  228. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_files.py +0 -0
  229. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_gam.py +0 -0
  230. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_llm.py +0 -0
  231. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_migrate.py +0 -0
  232. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_organization.py +0 -0
  233. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_rag.py +0 -0
  234. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_rerank.py +0 -0
  235. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_show_help.py +0 -0
  236. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_usage_limits.py +0 -0
  237. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_validators.py +0 -0
  238. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_version.py +0 -0
  239. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/test_parsers.py +0 -0
  240. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/__init__.py +0 -0
  241. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/__init__.py +0 -0
  242. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/data/__init__.py +0 -0
  243. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/data/mappers.py +0 -0
  244. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/data/models.py +0 -0
  245. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/test_mappers.py +0 -0
  246. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/test_models.py +0 -0
  247. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/__init__.py +0 -0
  248. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/data/__init__.py +0 -0
  249. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/test_config.py +0 -0
  250. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/test_decorators.py +0 -0
  251. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/embeddings/__init__.py +0 -0
  252. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/embeddings/test_clients.py +0 -0
  253. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/feedback/__init__.py +0 -0
  254. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/feedback/test_clients.py +0 -0
  255. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/__init__.py +0 -0
  256. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_clients.py +0 -0
  257. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_managers.py +0 -0
  258. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_models.py +0 -0
  259. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_responses.py +0 -0
  260. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/llm/__init__.py +0 -0
  261. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/llm/test_clients.py +0 -0
  262. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/__init__.py +0 -0
  263. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/test_clients.py +0 -0
  264. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/test_managers.py +0 -0
  265. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/test_mappers.py +0 -0
  266. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/secrets/__init__.py +0 -0
  267. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/secrets/test_clients.py +0 -0
  268. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/services/__init__.py +0 -0
  269. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/services/test_rest.py +0 -0
  270. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/test_handlers.py +0 -0
  271. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/utils/__init__.py +0 -0
  272. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/utils/test_console.py +0 -0
  273. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/dbg/__init__.py +0 -0
  274. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/dbg/test_debugger.py +0 -0
  275. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/gam/__init__.py +0 -0
  276. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/gam/test_clients.py +0 -0
  277. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/health/__init__.py +0 -0
  278. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/health/test_clients.py +0 -0
  279. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/__init__.py +0 -0
  280. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/__init__.py +0 -0
  281. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/__init__.py +0 -0
  282. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_agents_list.py +0 -0
  283. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_create_agent.py +0 -0
  284. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_create_sharing_link.py +0 -0
  285. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_delete_agent.py +0 -0
  286. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_get_agent.py +0 -0
  287. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_publish_agent_revision.py +0 -0
  288. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_update_agent.py +0 -0
  289. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/__init__.py +0 -0
  290. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/agents/__init__.py +0 -0
  291. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/agents/test_clients.py +0 -0
  292. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/agents/test_mappers.py +0 -0
  293. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/processes/__init__.py +0 -0
  294. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/processes/test_clients.py +0 -0
  295. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/processes/test_mappers.py +0 -0
  296. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/spec/__init__.py +0 -0
  297. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/spec/test_loader.py +0 -0
  298. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/spec/test_parsers.py +0 -0
  299. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/strategies/__init__.py +0 -0
  300. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/strategies/test_clients.py +0 -0
  301. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/strategies/test_mappers.py +0 -0
  302. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/test_mappers.py +0 -0
  303. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/test_models.py +0 -0
  304. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/tools/__init__.py +0 -0
  305. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/tools/test_clients.py +0 -0
  306. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/tools/test_mappers.py +0 -0
  307. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/migration/__init__.py +0 -0
  308. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/migration/test_strategies.py +0 -0
  309. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/migration/test_tools.py +0 -0
  310. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/__init__.py +0 -0
  311. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/limits/__init__.py +0 -0
  312. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/limits/test_clients.py +0 -0
  313. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/limits/test_managers.py +0 -0
  314. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/test_clients.py +0 -0
  315. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/test_managers.py +0 -0
  316. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/test_mappers.py +0 -0
  317. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/__init__.py +0 -0
  318. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/__init__.py +0 -0
  319. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/create_chat_assistant.py +0 -0
  320. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/create_text_assistant.py +0 -0
  321. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/__init__.py +0 -0
  322. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/extend_and_check.py +0 -0
  323. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/extend_dataset.py +0 -0
  324. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/get_status.py +0 -0
  325. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/file_summarizer_assistant.py +0 -0
  326. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/get_assistant_data.py +0 -0
  327. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/get_assistant_list.py +0 -0
  328. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/__init__.py +0 -0
  329. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/create_rag_assistant.py +0 -0
  330. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/delete_al_documents.py +0 -0
  331. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/delete_document.py +0 -0
  332. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/delete_rag_assistant.py +0 -0
  333. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/get_document.py +0 -0
  334. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/get_documents.py +0 -0
  335. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/get_rag_assistant_data.py +0 -0
  336. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/update_rag_assistant.py +0 -0
  337. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/upload_document.py +0 -0
  338. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/send_feedback.py +0 -0
  339. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/update_chat_assistant.py +0 -0
  340. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/__init__.py +0 -0
  341. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/cancel_request.py +0 -0
  342. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion.py +0 -0
  343. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_1.py +0 -0
  344. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_2.py +0 -0
  345. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_3.py +0 -0
  346. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_4.py +0 -0
  347. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_streaming.py +0 -0
  348. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/get_request_status.py +0 -0
  349. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/send_chat_request.py +0 -0
  350. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/embeddings/__init__.py +0 -0
  351. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/embeddings/generate_embeddings.py +0 -0
  352. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/evaluation/__init__.py +0 -0
  353. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/__init__.py +0 -0
  354. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/delete_file.py +0 -0
  355. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/get_file_content.py +0 -0
  356. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/get_file_data.py +0 -0
  357. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/get_file_list.py +0 -0
  358. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/upload_file.py +0 -0
  359. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/gam/__init__.py +0 -0
  360. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/gam/gam_access_token.py +0 -0
  361. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/__init__.py +0 -0
  362. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_1.py +0 -0
  363. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_2.py +0 -0
  364. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_3.py +0 -0
  365. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_4.py +0 -0
  366. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/__init__.py +0 -0
  367. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/create_agent.py +0 -0
  368. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/create_agent_2.py +0 -0
  369. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/delete_agent.py +0 -0
  370. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/get_agent.py +0 -0
  371. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/get_sharing_link.py +0 -0
  372. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/list_agents.py +0 -0
  373. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/publish_agent_revision.py +0 -0
  374. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/update_agent.py +0 -0
  375. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/assistant_to_agent.py +0 -0
  376. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/crud_ui.py +0 -0
  377. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/__init__.py +0 -0
  378. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/create_process.py +0 -0
  379. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/create_task.py +0 -0
  380. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/jobs/__init__.py +0 -0
  381. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/jobs/list_jobs.py +0 -0
  382. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/__init__.py +0 -0
  383. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/create_kb.py +0 -0
  384. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/get_kb.py +0 -0
  385. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/list_kbs.py +0 -0
  386. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/try_all.py +0 -0
  387. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/list_processes.py +0 -0
  388. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/runner_1.py +0 -0
  389. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/samples/__init__.py +0 -0
  390. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/samples/summarize_files.py +0 -0
  391. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/__init__.py +0 -0
  392. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/create_reasoning_strategy.py +0 -0
  393. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/get_reasoning_strategy.py +0 -0
  394. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/list_reasoning_strategies.py +0 -0
  395. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/update_reasoning_strategy.py +0 -0
  396. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/__init__.py +0 -0
  397. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/create_tool.py +0 -0
  398. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/delete_tool.py +0 -0
  399. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/get_parameter.py +0 -0
  400. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/get_tool.py +0 -0
  401. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/list_tools.py +0 -0
  402. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/publish_tool_revision.py +0 -0
  403. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/set_parameters.py +0 -0
  404. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/update_tool.py +0 -0
  405. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/__init__.py +0 -0
  406. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/c_code_fixer_agent_flow.py +0 -0
  407. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_cli_expert.py +0 -0
  408. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_lab_expert.py +0 -0
  409. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_tool_headless_web_browser.py +0 -0
  410. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_web_designer.py +0 -0
  411. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_web_reader.py +0 -0
  412. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/file_summarizer_example.py +0 -0
  413. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/file_summarizer_example_2.py +0 -0
  414. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_cli_expert.py +0 -0
  415. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_lab_expert.py +0 -0
  416. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_web_designer.py +0 -0
  417. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_web_reader.py +0 -0
  418. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_web_reader_with_tool.py +0 -0
  419. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/migrate/__init__.py +0 -0
  420. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/__init__.py +0 -0
  421. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/create_project.py +0 -0
  422. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/delete_project.py +0 -0
  423. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/export_request_data.py +0 -0
  424. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/get_project_data.py +0 -0
  425. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/get_project_list.py +0 -0
  426. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/get_project_tokens.py +0 -0
  427. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/update_project.py +0 -0
  428. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/rerank/__init__.py +0 -0
  429. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/rerank/rerank_chunks.py +0 -0
  430. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/secrets/__init__.py +0 -0
  431. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/__init__.py +0 -0
  432. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/delete_usage_limit.py +0 -0
  433. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/get_all_usage_limit_from_organization.py +0 -0
  434. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/get_usage_limit_from_organization.py +0 -0
  435. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/get_usage_limit_from_project.py +0 -0
  436. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/set_usage_limit_organization.py +0 -0
  437. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/set_usage_limit_project.py +0 -0
  438. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/update_usage_limit_organization.py +0 -0
  439. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/update_usage_limit_project.py +0 -0
  440. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/__init__.py +0 -0
  441. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/auth/__init__.py +0 -0
  442. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/auth/user.py +0 -0
  443. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/__init__.py +0 -0
  444. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/client.py +0 -0
  445. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/errors.py +0 -0
  446. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/helpers.py +0 -0
  447. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/py.typed +0 -0
  448. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/__init__.py +0 -0
  449. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/__init__.py +0 -0
  450. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/agent_executor.py +0 -0
  451. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/context.py +0 -0
  452. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/request_context_builder.py +0 -0
  453. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/simple_request_context_builder.py +0 -0
  454. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/__init__.py +0 -0
  455. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/__init__.py +0 -0
  456. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/fastapi_app.py +0 -0
  457. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/jsonrpc_app.py +0 -0
  458. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/starlette_app.py +0 -0
  459. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/context.py +0 -0
  460. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/__init__.py +0 -0
  461. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/event_consumer.py +0 -0
  462. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/event_queue.py +0 -0
  463. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/in_memory_queue_manager.py +0 -0
  464. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/queue_manager.py +0 -0
  465. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/__init__.py +0 -0
  466. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/default_request_handler.py +0 -0
  467. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/jsonrpc_handler.py +0 -0
  468. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/request_handler.py +0 -0
  469. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/response_helpers.py +0 -0
  470. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/__init__.py +0 -0
  471. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/inmemory_push_notifier.py +0 -0
  472. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/inmemory_task_store.py +0 -0
  473. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/push_notifier.py +0 -0
  474. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/result_aggregator.py +0 -0
  475. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/task_manager.py +0 -0
  476. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/task_store.py +0 -0
  477. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/task_updater.py +0 -0
  478. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/types.py +0 -0
  479. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/__init__.py +0 -0
  480. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/artifact.py +0 -0
  481. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/errors.py +0 -0
  482. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/helpers.py +0 -0
  483. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/message.py +0 -0
  484. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/task.py +0 -0
  485. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/telemetry.py +0 -0
  486. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/SOURCES.txt +0 -0
  487. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/dependency_links.txt +0 -0
  488. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/entry_points.txt +0 -0
  489. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/requires.txt +0 -0
  490. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/top_level.txt +0 -0
  491. {pygeai-0.2.7b37 → pygeai-0.2.7b38}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pygeai
3
- Version: 0.2.7b37
3
+ Version: 0.2.7b38
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
@@ -351,13 +351,22 @@ class ModelMapper:
351
351
  @classmethod
352
352
  def map_to_item(cls, data: dict) -> RequestItem:
353
353
  return RequestItem(
354
+ api_token=data.get('apiToken'),
354
355
  assistant=data.get('assistant'),
356
+ cost=data.get('cost'),
357
+ elapsed_time_ms=data.get('elapsedTimeMs'),
358
+ end_timestamp=data.get('endTimestamp'),
359
+ feedback=data.get('feedback'),
355
360
  intent=data.get('intent'),
356
- timestamp=data.get('timestamp'),
361
+ module=data.get('module'),
357
362
  prompt=data.get('prompt'),
358
363
  output=data.get('output'),
359
364
  input_text=data.get('inputText'),
360
- status=data.get('status')
365
+ rag_sources_consulted=data.get('ragSourcesConsulted'),
366
+ session_id=data.get('sessionId'),
367
+ start_timestamp=data.get('startTimestamp'),
368
+ status=data.get('status'),
369
+ timestamp=data.get('timestamp')
361
370
  )
362
371
 
363
372
  @classmethod
@@ -1,6 +1,6 @@
1
1
  from datetime import datetime
2
2
 
3
- from pydantic import Field, field_validator
3
+ from pydantic import Field, field_validator, model_validator
4
4
  from typing import Optional, Literal, Any, List, Union, Iterator
5
5
 
6
6
  from pygeai.core import CustomBaseModel
@@ -247,23 +247,32 @@ class Project(CustomBaseModel):
247
247
 
248
248
  class RequestItem(CustomBaseModel):
249
249
  """
250
- {
251
- "assistant": "string",
252
- "intent": "string",
253
- "timestamp": "string",
254
- "prompt": "string",
255
- "output": "string",
256
- "inputText": "string",
257
- "status": "string"
258
- }
250
+ Represents a request item with metadata about an API interaction.
251
+ Follows a JSON schema with camelCase aliases for external compatibility.
259
252
  """
253
+ api_token: str = Field(..., alias="apiToken")
260
254
  assistant: str = Field(..., alias="assistant")
255
+ cost: float = Field(..., alias="cost")
256
+ elapsed_time_ms: int = Field(..., alias="elapsedTimeMs")
257
+ end_timestamp: datetime = Field(..., alias="endTimestamp")
258
+ feedback: Optional[str] = Field(None, alias="feedback")
261
259
  intent: Optional[str] = Field(None, alias="intent")
262
- timestamp: str = Field(..., alias="timestamp")
260
+ module: str = Field(..., alias="module")
263
261
  prompt: Optional[str] = Field(None, alias="prompt")
264
262
  output: Optional[str] = Field(None, alias="output")
265
263
  input_text: Optional[str] = Field(None, alias="inputText")
264
+ rag_sources_consulted: Optional[str] = Field(None, alias="ragSourcesConsulted")
265
+ session_id: str = Field(..., alias="sessionId")
266
+ start_timestamp: datetime = Field(..., alias="startTimestamp")
266
267
  status: str = Field(..., alias="status")
268
+ timestamp: datetime = Field(..., alias="timestamp")
269
+
270
+ @model_validator(mode="after")
271
+ def validate_status(self):
272
+ valid_statuses = {"succeeded", "failed", "pending"}
273
+ if self.status not in valid_statuses:
274
+ raise ValueError(f"Status must be one of {valid_statuses}")
275
+ return self
267
276
 
268
277
  def to_dict(self):
269
278
  return self.model_dump(by_alias=True, exclude_none=True)
@@ -22,12 +22,12 @@ from pygeai.lab.tools.mappers import ToolMapper
22
22
 
23
23
  class AILabManager:
24
24
 
25
- def __init__(self, api_key: str = None, base_url: str = None, alias: str = "default"):
25
+ def __init__(self, api_key: str = None, base_url: str = None, alias: str = "default", project_id: str = None):
26
26
  self.__agent_client = AgentClient(api_key=api_key, base_url=base_url, alias=alias)
27
27
  self.__tool_client = ToolClient(api_key=api_key, base_url=base_url, alias=alias)
28
28
  self.__reasoning_strategy_client = ReasoningStrategyClient(api_key=api_key, base_url=base_url, alias=alias)
29
29
  self.__process_client = AgenticProcessClient(api_key=api_key, base_url=base_url, alias=alias)
30
- self.project_id = self.__get_project_id()
30
+ self.project_id = self.__get_project_id() if not project_id else project_id
31
31
 
32
32
  def __get_project_id(self):
33
33
  response = None
@@ -0,0 +1,47 @@
1
+ from pydantic.main import BaseModel
2
+
3
+ from pygeai.core.models import Assistant, Project, ProjectToken, \
4
+ RequestItem
5
+
6
+
7
+ class AssistantListResponse(BaseModel):
8
+ assistants: list[Assistant]
9
+
10
+
11
+ class ProjectListResponse(BaseModel):
12
+ projects: list[Project]
13
+
14
+
15
+ class ProjectDataResponse(BaseModel):
16
+ project: Project
17
+
18
+
19
+ class ProjectTokensResponse(BaseModel):
20
+ tokens: list[ProjectToken]
21
+
22
+
23
+ class ProjectItemListResponse(BaseModel):
24
+ items: list[RequestItem]
25
+
26
+ def to_list(self):
27
+ return [item.to_dict() for item in self.items] if self.items else []
28
+
29
+ def __getitem__(self, index: int) -> RequestItem:
30
+ if self.items is None:
31
+ raise IndexError("ProjectItemListResponse is empty")
32
+ return self.items[index]
33
+
34
+ def __len__(self) -> int:
35
+ return len(self.items) if self.items else 0
36
+
37
+ def __iter__(self):
38
+ """Make ProjectItemListResponse iterable over its items."""
39
+ if self.items is None:
40
+ return iter([])
41
+ return iter(self.items)
42
+
43
+ def append(self, item: RequestItem) -> None:
44
+ """Append an Agent instance to the items list."""
45
+ if self.items is None:
46
+ self.items = []
47
+ self.items.append(item)
@@ -13,9 +13,9 @@ class TestAILabManager(unittest.TestCase):
13
13
  """
14
14
  python -m unittest pygeai.tests.lab.test_managers.TestAILabManager
15
15
  """
16
+
16
17
  def setUp(self):
17
- self.manager = AILabManager(api_key="test_key", base_url="test_url", alias="test_alias")
18
- self.project_id = "test_project"
18
+ self.manager = AILabManager(api_key="test_key", base_url="test_url", alias="test_alias", project_id="test_project")
19
19
  self.agent_id = "test_agent"
20
20
  self.tool_id = "test_tool"
21
21
  self.process_id = "test_process"
@@ -31,7 +31,7 @@ class TestAILabManager(unittest.TestCase):
31
31
  mock_list_agents.return_value = {"data": "test_data"}
32
32
  mock_map_to_agent_list.return_value = AgentList(agents=[])
33
33
 
34
- result = self.manager.get_agent_list(self.project_id, self.filter_settings)
34
+ result = self.manager.get_agent_list(self.filter_settings)
35
35
 
36
36
  mock_list_agents.assert_called_once()
37
37
  mock_map_to_agent_list.assert_called_once_with({"data": "test_data"})
@@ -42,7 +42,7 @@ class TestAILabManager(unittest.TestCase):
42
42
  mock_list_agents.return_value = {"error": {"id": 1, "message": "API error"}}
43
43
 
44
44
  with self.assertRaises(APIError):
45
- self.manager.get_agent_list(self.project_id, self.filter_settings)
45
+ self.manager.get_agent_list(self.filter_settings)
46
46
 
47
47
  @patch('pygeai.lab.agents.clients.AgentClient.create_agent')
48
48
  @patch('pygeai.lab.agents.mappers.AgentMapper.map_to_agent')
@@ -51,7 +51,7 @@ class TestAILabManager(unittest.TestCase):
51
51
  mock_map_to_agent.return_value = Agent(id=self.agent_id, name="test_agent")
52
52
  agent = Agent(name="test_agent")
53
53
 
54
- result = self.manager.create_agent(self.project_id, agent, automatic_publish=False)
54
+ result = self.manager.create_agent(agent, automatic_publish=False)
55
55
 
56
56
  mock_create_agent.assert_called_once()
57
57
  mock_map_to_agent.assert_called_once_with({"data": "test_data"})
@@ -64,7 +64,7 @@ class TestAILabManager(unittest.TestCase):
64
64
  mock_map_to_agent.return_value = Agent(id=self.agent_id, name="test_agent")
65
65
  agent = Agent(id=self.agent_id, name="test_agent")
66
66
 
67
- result = self.manager.update_agent(self.project_id, agent, automatic_publish=False, upsert=False)
67
+ result = self.manager.update_agent(agent, automatic_publish=False, upsert=False)
68
68
 
69
69
  mock_update_agent.assert_called_once()
70
70
  mock_map_to_agent.assert_called_once_with({"data": "test_data"})
@@ -76,7 +76,7 @@ class TestAILabManager(unittest.TestCase):
76
76
  mock_get_agent.return_value = {"data": "test_data"}
77
77
  mock_map_to_agent.return_value = Agent(id=self.agent_id, name="test_agent")
78
78
 
79
- result = self.manager.get_agent(self.project_id, self.agent_id, self.filter_settings)
79
+ result = self.manager.get_agent(self.agent_id, self.filter_settings)
80
80
 
81
81
  mock_get_agent.assert_called_once()
82
82
  mock_map_to_agent.assert_called_once_with({"data": "test_data"})
@@ -88,7 +88,7 @@ class TestAILabManager(unittest.TestCase):
88
88
  mock_create_sharing_link.return_value = {"data": "test_data"}
89
89
  mock_map_to_sharing_link.return_value = SharingLink(agent_id="test_agent", api_token="test_token", shared_link="test_link")
90
90
 
91
- result = self.manager.create_sharing_link(self.project_id, self.agent_id)
91
+ result = self.manager.create_sharing_link(self.agent_id)
92
92
 
93
93
  mock_create_sharing_link.assert_called_once()
94
94
  mock_map_to_sharing_link.assert_called_once_with({"data": "test_data"})
@@ -100,7 +100,7 @@ class TestAILabManager(unittest.TestCase):
100
100
  mock_publish_agent_revision.return_value = {"data": "test_data"}
101
101
  mock_map_to_agent.return_value = Agent(id=self.agent_id, name="test_agent")
102
102
 
103
- result = self.manager.publish_agent_revision(self.project_id, self.agent_id, self.revision)
103
+ result = self.manager.publish_agent_revision(self.agent_id, self.revision)
104
104
 
105
105
  mock_publish_agent_revision.assert_called_once()
106
106
  mock_map_to_agent.assert_called_once_with({"data": "test_data"})
@@ -112,7 +112,7 @@ class TestAILabManager(unittest.TestCase):
112
112
  mock_delete_agent.return_value = {"data": "test_data"}
113
113
  mock_map_to_empty_response.return_value = {"status": "success"}
114
114
 
115
- result = self.manager.delete_agent(self.project_id, self.agent_id)
115
+ result = self.manager.delete_agent(self.agent_id)
116
116
 
117
117
  mock_delete_agent.assert_called_once()
118
118
  mock_map_to_empty_response.assert_called_once()
@@ -125,7 +125,7 @@ class TestAILabManager(unittest.TestCase):
125
125
  mock_map_to_tool.return_value = Tool(id=self.tool_id, name="test_tool", description="test_desc")
126
126
  tool = Tool(name="test_tool", description="test_desc")
127
127
 
128
- result = self.manager.create_tool(self.project_id, tool, automatic_publish=False)
128
+ result = self.manager.create_tool(tool, automatic_publish=False)
129
129
 
130
130
  mock_create_tool.assert_called_once()
131
131
  mock_map_to_tool.assert_called_once_with({"data": "test_data"})
@@ -138,7 +138,7 @@ class TestAILabManager(unittest.TestCase):
138
138
  mock_map_to_tool.return_value = Tool(id=self.tool_id, name="test_tool", description="test_desc")
139
139
  tool = Tool(id=self.tool_id, name="test_tool", description="test_desc")
140
140
 
141
- result = self.manager.update_tool(self.project_id, tool, automatic_publish=False, upsert=False)
141
+ result = self.manager.update_tool(tool, automatic_publish=False, upsert=False)
142
142
 
143
143
  mock_update_tool.assert_called_once()
144
144
  mock_map_to_tool.assert_called_once_with({"data": "test_data"})
@@ -150,7 +150,7 @@ class TestAILabManager(unittest.TestCase):
150
150
  mock_get_tool.return_value = {"data": "test_data"}
151
151
  mock_map_to_tool.return_value = Tool(id=self.tool_id, name="test_tool", description="test_desc")
152
152
 
153
- result = self.manager.get_tool(self.project_id, self.tool_id, self.filter_settings)
153
+ result = self.manager.get_tool(self.tool_id, self.filter_settings)
154
154
 
155
155
  mock_get_tool.assert_called_once()
156
156
  mock_map_to_tool.assert_called_once_with({"data": "test_data"})
@@ -162,7 +162,7 @@ class TestAILabManager(unittest.TestCase):
162
162
  mock_delete_tool.return_value = {"data": "test_data"}
163
163
  mock_map_to_empty_response.return_value = {"status": "success"}
164
164
 
165
- result = self.manager.delete_tool(self.project_id, tool_id=self.tool_id)
165
+ result = self.manager.delete_tool(tool_id=self.tool_id)
166
166
 
167
167
  mock_delete_tool.assert_called_once()
168
168
  mock_map_to_empty_response.assert_called_once()
@@ -174,7 +174,7 @@ class TestAILabManager(unittest.TestCase):
174
174
  mock_list_tools.return_value = {"data": "test_data"}
175
175
  mock_map_to_tool_list.return_value = ToolList(tools=[])
176
176
 
177
- result = self.manager.list_tools(self.project_id, self.filter_settings)
177
+ result = self.manager.list_tools(self.filter_settings)
178
178
 
179
179
  mock_list_tools.assert_called_once()
180
180
  mock_map_to_tool_list.assert_called_once_with({"data": "test_data"})
@@ -186,7 +186,7 @@ class TestAILabManager(unittest.TestCase):
186
186
  mock_publish_tool_revision.return_value = {"data": "test_data"}
187
187
  mock_map_to_tool.return_value = Tool(id=self.tool_id, name="test_tool", description="test_desc")
188
188
 
189
- result = self.manager.publish_tool_revision(self.project_id, self.tool_id, self.revision)
189
+ result = self.manager.publish_tool_revision(self.tool_id, self.revision)
190
190
 
191
191
  mock_publish_tool_revision.assert_called_once()
192
192
  mock_map_to_tool.assert_called_once_with({"data": "test_data"})
@@ -198,7 +198,7 @@ class TestAILabManager(unittest.TestCase):
198
198
  mock_get_parameter.return_value = {"data": "test_data"}
199
199
  mock_map_to_parameter_list.return_value = [ToolParameter(key="test_key", data_type="String", description="test_desc", is_required=True)]
200
200
 
201
- result = self.manager.get_parameter(self.project_id, tool_id=self.tool_id, filter_settings=self.filter_settings)
201
+ result = self.manager.get_parameter(tool_id=self.tool_id, filter_settings=self.filter_settings)
202
202
 
203
203
  mock_get_parameter.assert_called_once()
204
204
  mock_map_to_parameter_list.assert_called_once_with({"data": "test_data"})
@@ -211,7 +211,7 @@ class TestAILabManager(unittest.TestCase):
211
211
  mock_map_to_tool.return_value = Tool(id=self.tool_id, name="test_tool", description="test_desc")
212
212
  parameters = [ToolParameter(key="test_key", data_type="String", description="test_desc", is_required=True)]
213
213
 
214
- result = self.manager.set_parameter(self.project_id, tool_id=self.tool_id, parameters=parameters)
214
+ result = self.manager.set_parameter(tool_id=self.tool_id, parameters=parameters)
215
215
 
216
216
  mock_set_parameter.assert_called_once()
217
217
  mock_map_to_tool.assert_called_once_with({"data": "test_data"})
@@ -236,7 +236,7 @@ class TestAILabManager(unittest.TestCase):
236
236
  mock_map_to_strategy.return_value = ReasoningStrategy(id="test_strategy", name="test_strategy", access_scope="private", type="addendum")
237
237
  strategy = ReasoningStrategy(name="test_strategy", access_scope="private", type="addendum", localized_descriptions=[])
238
238
 
239
- result = self.manager.create_reasoning_strategy(self.project_id, strategy, automatic_publish=False)
239
+ result = self.manager.create_reasoning_strategy(strategy, automatic_publish=False)
240
240
 
241
241
  mock_create_strategy.assert_called_once()
242
242
  mock_map_to_strategy.assert_called_once_with({"data": "test_data"})
@@ -249,7 +249,7 @@ class TestAILabManager(unittest.TestCase):
249
249
  mock_map_to_strategy.return_value = ReasoningStrategy(id="test_strategy", name="test_strategy", access_scope="private", type="addendum")
250
250
  strategy = ReasoningStrategy(id="test_strategy", name="test_strategy", access_scope="private", type="addendum", localized_descriptions=[])
251
251
 
252
- result = self.manager.update_reasoning_strategy(self.project_id, strategy, automatic_publish=False, upsert=False)
252
+ result = self.manager.update_reasoning_strategy(strategy, automatic_publish=False, upsert=False)
253
253
 
254
254
  mock_update_strategy.assert_called_once()
255
255
  mock_map_to_strategy.assert_called_once_with({"data": "test_data"})
@@ -261,7 +261,7 @@ class TestAILabManager(unittest.TestCase):
261
261
  mock_get_strategy.return_value = {"data": "test_data"}
262
262
  mock_map_to_strategy.return_value = ReasoningStrategy(id="test_strategy", name="test_strategy", access_scope="private", type="addendum")
263
263
 
264
- result = self.manager.get_reasoning_strategy(self.project_id, reasoning_strategy_id="test_strategy")
264
+ result = self.manager.get_reasoning_strategy(reasoning_strategy_id="test_strategy")
265
265
 
266
266
  mock_get_strategy.assert_called_once()
267
267
  mock_map_to_strategy.assert_called_once_with({"data": "test_data"})
@@ -274,7 +274,7 @@ class TestAILabManager(unittest.TestCase):
274
274
  mock_map_to_process.return_value = AgenticProcess(id=self.process_id, name="test_process")
275
275
  process = AgenticProcess(name="test_process", key="test_key")
276
276
 
277
- result = self.manager.create_process(self.project_id, process, automatic_publish=False)
277
+ result = self.manager.create_process(process, automatic_publish=False)
278
278
 
279
279
  mock_create_process.assert_called_once()
280
280
  mock_map_to_process.assert_called_once_with({"data": "test_data"})
@@ -287,7 +287,7 @@ class TestAILabManager(unittest.TestCase):
287
287
  mock_map_to_process.return_value = AgenticProcess(id=self.process_id, name="test_process")
288
288
  process = AgenticProcess(id=self.process_id, name="test_process", key="test_key")
289
289
 
290
- result = self.manager.update_process(self.project_id, process, automatic_publish=False, upsert=False)
290
+ result = self.manager.update_process(process, automatic_publish=False, upsert=False)
291
291
 
292
292
  mock_update_process.assert_called_once()
293
293
  mock_map_to_process.assert_called_once_with({"data": "test_data"})
@@ -299,7 +299,7 @@ class TestAILabManager(unittest.TestCase):
299
299
  mock_get_process.return_value = {"data": "test_data"}
300
300
  mock_map_to_process.return_value = AgenticProcess(id=self.process_id, name="test_process")
301
301
 
302
- result = self.manager.get_process(self.project_id, process_id=self.process_id, filter_settings=self.filter_settings)
302
+ result = self.manager.get_process(process_id=self.process_id, filter_settings=self.filter_settings)
303
303
 
304
304
  mock_get_process.assert_called_once()
305
305
  mock_map_to_process.assert_called_once_with({"data": "test_data"})
@@ -311,7 +311,7 @@ class TestAILabManager(unittest.TestCase):
311
311
  mock_list_processes.return_value = {"data": "test_data"}
312
312
  mock_map_to_process_list.return_value = AgenticProcessList(processes=[])
313
313
 
314
- result = self.manager.list_processes(self.project_id, self.filter_settings)
314
+ result = self.manager.list_processes(self.filter_settings)
315
315
 
316
316
  mock_list_processes.assert_called_once()
317
317
  mock_map_to_process_list.assert_called_once_with({"data": "test_data"})
@@ -323,7 +323,7 @@ class TestAILabManager(unittest.TestCase):
323
323
  mock_list_instances.return_value = {"data": "test_data"}
324
324
  mock_map_to_instance_list.return_value = ProcessInstanceList(instances=[])
325
325
 
326
- result = self.manager.list_process_instances(self.project_id, self.process_id, self.filter_settings)
326
+ result = self.manager.list_process_instances(self.process_id, self.filter_settings)
327
327
 
328
328
  mock_list_instances.assert_called_once()
329
329
  mock_map_to_instance_list.assert_called_once_with({"data": "test_data"})
@@ -335,7 +335,7 @@ class TestAILabManager(unittest.TestCase):
335
335
  mock_delete_process.return_value = {"data": "test_data"}
336
336
  mock_map_to_empty_response.return_value = {"status": "success"}
337
337
 
338
- result = self.manager.delete_process(self.project_id, process_id=self.process_id)
338
+ result = self.manager.delete_process(process_id=self.process_id)
339
339
 
340
340
  mock_delete_process.assert_called_once()
341
341
  mock_map_to_empty_response.assert_called_once()
@@ -347,7 +347,7 @@ class TestAILabManager(unittest.TestCase):
347
347
  mock_publish_process_revision.return_value = {"data": "test_data"}
348
348
  mock_map_to_process.return_value = AgenticProcess(id=self.process_id, name="test_process")
349
349
 
350
- result = self.manager.publish_process_revision(self.project_id, process_id=self.process_id, revision=self.revision)
350
+ result = self.manager.publish_process_revision(process_id=self.process_id, revision=self.revision)
351
351
 
352
352
  mock_publish_process_revision.assert_called_once()
353
353
  mock_map_to_process.assert_called_once_with({"data": "test_data"})
@@ -360,7 +360,7 @@ class TestAILabManager(unittest.TestCase):
360
360
  mock_map_to_task.return_value = Task(id=self.task_id, name="test_task")
361
361
  task = Task(name="test_task")
362
362
 
363
- result = self.manager.create_task(self.project_id, task, automatic_publish=False)
363
+ result = self.manager.create_task(task, automatic_publish=False)
364
364
 
365
365
  mock_create_task.assert_called_once()
366
366
  mock_map_to_task.assert_called_once_with({"data": "test_data"})
@@ -372,7 +372,7 @@ class TestAILabManager(unittest.TestCase):
372
372
  mock_get_task.return_value = {"data": "test_data"}
373
373
  mock_map_to_task.return_value = Task(id=self.task_id, name="test_task")
374
374
 
375
- result = self.manager.get_task(self.project_id, task_id=self.task_id)
375
+ result = self.manager.get_task(task_id=self.task_id)
376
376
 
377
377
  mock_get_task.assert_called_once()
378
378
  mock_map_to_task.assert_called_once_with({"data": "test_data"})
@@ -384,7 +384,7 @@ class TestAILabManager(unittest.TestCase):
384
384
  mock_list_tasks.return_value = {"data": "test_data"}
385
385
  mock_map_to_task_list.return_value = TaskList(tasks=[])
386
386
 
387
- result = self.manager.list_tasks(self.project_id, self.filter_settings)
387
+ result = self.manager.list_tasks(self.filter_settings)
388
388
 
389
389
  mock_list_tasks.assert_called_once()
390
390
  mock_map_to_task_list.assert_called_once_with({"data": "test_data"})
@@ -397,7 +397,7 @@ class TestAILabManager(unittest.TestCase):
397
397
  mock_map_to_task.return_value = Task(id=self.task_id, name="test_task")
398
398
  task = Task(id=self.task_id, name="test_task")
399
399
 
400
- result = self.manager.update_task(self.project_id, task, automatic_publish=False, upsert=False)
400
+ result = self.manager.update_task(task, automatic_publish=False, upsert=False)
401
401
 
402
402
  mock_update_task.assert_called_once()
403
403
  mock_map_to_task.assert_called_once_with({"data": "test_data"})
@@ -409,7 +409,7 @@ class TestAILabManager(unittest.TestCase):
409
409
  mock_delete_task.return_value = {"data": "test_data"}
410
410
  mock_map_to_empty_response.return_value = {"status": "success"}
411
411
 
412
- result = self.manager.delete_task(self.project_id, task_id=self.task_id)
412
+ result = self.manager.delete_task(task_id=self.task_id)
413
413
 
414
414
  mock_delete_task.assert_called_once()
415
415
  mock_map_to_empty_response.assert_called_once()
@@ -421,7 +421,7 @@ class TestAILabManager(unittest.TestCase):
421
421
  mock_publish_task_revision.return_value = {"data": "test_data"}
422
422
  mock_map_to_task.return_value = Task(id=self.task_id, name="test_task")
423
423
 
424
- result = self.manager.publish_task_revision(self.project_id, task_id=self.task_id, revision=self.revision)
424
+ result = self.manager.publish_task_revision(task_id=self.task_id, revision=self.revision)
425
425
 
426
426
  mock_publish_task_revision.assert_called_once()
427
427
  mock_map_to_task.assert_called_once_with({"data": "test_data"})
@@ -433,7 +433,7 @@ class TestAILabManager(unittest.TestCase):
433
433
  mock_start_instance.return_value = {"data": "test_data"}
434
434
  mock_map_to_instance.return_value = ProcessInstance(id=self.instance_id, subject="test_subject", process=AgenticProcess(name="test_process"))
435
435
 
436
- result = self.manager.start_instance(self.project_id, "test_process", subject="test_subject", variables=VariableList())
436
+ result = self.manager.start_instance("test_process", subject="test_subject", variables=VariableList())
437
437
 
438
438
  mock_start_instance.assert_called_once()
439
439
  mock_map_to_instance.assert_called_once_with({"data": "test_data"})
@@ -445,7 +445,7 @@ class TestAILabManager(unittest.TestCase):
445
445
  mock_abort_instance.return_value = {"data": "test_data"}
446
446
  mock_map_to_empty_response.return_value = {"status": "success"}
447
447
 
448
- result = self.manager.abort_instance(self.project_id, self.instance_id)
448
+ result = self.manager.abort_instance(self.instance_id)
449
449
 
450
450
  mock_abort_instance.assert_called_once()
451
451
  mock_map_to_empty_response.assert_called_once()
@@ -457,7 +457,7 @@ class TestAILabManager(unittest.TestCase):
457
457
  mock_get_instance.return_value = {"data": "test_data"}
458
458
  mock_map_to_instance.return_value = ProcessInstance(id=self.instance_id, subject="test_subject", process=AgenticProcess(name="test_process"))
459
459
 
460
- result = self.manager.get_instance(self.project_id, self.instance_id)
460
+ result = self.manager.get_instance(self.instance_id)
461
461
 
462
462
  mock_get_instance.assert_called_once()
463
463
  mock_map_to_instance.assert_called_once_with({"data": "test_data"})
@@ -467,7 +467,7 @@ class TestAILabManager(unittest.TestCase):
467
467
  def test_get_instance_history_success(self, mock_get_instance_history):
468
468
  mock_get_instance_history.return_value = {"history": "test_history"}
469
469
 
470
- result = self.manager.get_instance_history(self.project_id, self.instance_id)
470
+ result = self.manager.get_instance_history(self.instance_id)
471
471
 
472
472
  mock_get_instance_history.assert_called_once()
473
473
  self.assertIsInstance(result, dict)
@@ -476,7 +476,7 @@ class TestAILabManager(unittest.TestCase):
476
476
  def test_get_thread_information_success(self, mock_get_thread_information):
477
477
  mock_get_thread_information.return_value = {"info": "test_info"}
478
478
 
479
- result = self.manager.get_thread_information(self.project_id, "test_thread")
479
+ result = self.manager.get_thread_information("test_thread")
480
480
 
481
481
  mock_get_thread_information.assert_called_once()
482
482
  self.assertIsInstance(result, dict)
@@ -487,7 +487,7 @@ class TestAILabManager(unittest.TestCase):
487
487
  mock_send_user_signal.return_value = {"data": "test_data"}
488
488
  mock_map_to_empty_response.return_value = {"status": "success"}
489
489
 
490
- result = self.manager.send_user_signal(self.project_id, self.instance_id, "test_signal")
490
+ result = self.manager.send_user_signal(self.instance_id, "test_signal")
491
491
 
492
492
  mock_send_user_signal.assert_called_once()
493
493
  mock_map_to_empty_response.assert_called_once()
@@ -500,7 +500,7 @@ class TestAILabManager(unittest.TestCase):
500
500
  mock_map_to_kb.return_value = KnowledgeBase(id=self.kb_id, name="test_kb")
501
501
  kb = KnowledgeBase(name="test_kb")
502
502
 
503
- result = self.manager.create_knowledge_base(self.project_id, kb)
503
+ result = self.manager.create_knowledge_base(kb)
504
504
 
505
505
  mock_create_kb.assert_called_once()
506
506
  mock_map_to_kb.assert_called_once_with({"data": "test_data"})
@@ -512,7 +512,7 @@ class TestAILabManager(unittest.TestCase):
512
512
  mock_list_kbs.return_value = {"data": "test_data"}
513
513
  mock_map_to_kb_list.return_value = KnowledgeBaseList(knowledge_bases=[])
514
514
 
515
- result = self.manager.list_knowledge_bases(self.project_id, start=0, count=10)
515
+ result = self.manager.list_knowledge_bases(start=0, count=10)
516
516
 
517
517
  mock_list_kbs.assert_called_once()
518
518
  mock_map_to_kb_list.assert_called_once_with({"data": "test_data"})
@@ -524,7 +524,7 @@ class TestAILabManager(unittest.TestCase):
524
524
  mock_get_kb.return_value = {"data": "test_data"}
525
525
  mock_map_to_kb.return_value = KnowledgeBase(id=self.kb_id, name="test_kb")
526
526
 
527
- result = self.manager.get_knowledge_base(self.project_id, kb_id=self.kb_id)
527
+ result = self.manager.get_knowledge_base(kb_id=self.kb_id)
528
528
 
529
529
  mock_get_kb.assert_called_once()
530
530
  mock_map_to_kb.assert_called_once_with({"data": "test_data"})
@@ -536,7 +536,7 @@ class TestAILabManager(unittest.TestCase):
536
536
  mock_delete_kb.return_value = {"data": "test_data"}
537
537
  mock_map_to_empty_response.return_value = {"status": "success"}
538
538
 
539
- result = self.manager.delete_knowledge_base(self.project_id, kb_id=self.kb_id)
539
+ result = self.manager.delete_knowledge_base(kb_id=self.kb_id)
540
540
 
541
541
  mock_delete_kb.assert_called_once()
542
542
  mock_map_to_empty_response.assert_called_once()
@@ -548,7 +548,7 @@ class TestAILabManager(unittest.TestCase):
548
548
  mock_list_jobs.return_value = {"data": "test_data"}
549
549
  mock_map_to_job_list.return_value = JobList(jobs=[])
550
550
 
551
- result = self.manager.list_jobs(self.project_id, self.filter_settings)
551
+ result = self.manager.list_jobs(self.filter_settings)
552
552
 
553
553
  mock_list_jobs.assert_called_once()
554
554
  mock_map_to_job_list.assert_called_once_with({"data": "test_data"})
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pygeai
3
- Version: 0.2.7b37
3
+ Version: 0.2.7b38
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
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "pygeai"
7
- version = "0.2.7b37"
7
+ version = "0.2.7b38"
8
8
  description = "Software Development Kit to interact with Globant Enterprise AI."
9
9
  license = "MIT"
10
10
  requires-python = ">=3.10"
@@ -1,24 +0,0 @@
1
- from pydantic.main import BaseModel
2
-
3
- from pygeai.core.models import Assistant, Project, ProjectToken, \
4
- RequestItem
5
-
6
-
7
- class AssistantListResponse(BaseModel):
8
- assistants: list[Assistant]
9
-
10
-
11
- class ProjectListResponse(BaseModel):
12
- projects: list[Project]
13
-
14
-
15
- class ProjectDataResponse(BaseModel):
16
- project: Project
17
-
18
-
19
- class ProjectTokensResponse(BaseModel):
20
- tokens: list[ProjectToken]
21
-
22
-
23
- class ProjectItemListResponse(BaseModel):
24
- items: list[RequestItem]
File without changes
File without changes
File without changes
File without changes