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.
- {pygeai-0.2.7b37/pygeai.egg-info → pygeai-0.2.7b38}/PKG-INFO +1 -1
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/mappers.py +11 -2
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/models.py +20 -11
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/managers.py +2 -2
- pygeai-0.2.7b38/pygeai/organization/responses.py +47 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/test_managers.py +45 -45
- {pygeai-0.2.7b37 → pygeai-0.2.7b38/pygeai.egg-info}/PKG-INFO +1 -1
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pyproject.toml +1 -1
- pygeai-0.2.7b37/pygeai/organization/responses.py +0 -24
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/LICENSE +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/MANIFEST.in +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/README.md +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/docs/geai-proxy/README.md +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/admin/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/admin/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/admin/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data_analyst/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data_analyst/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/data_analyst/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/assistant/rag/responses.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/iris.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/session.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/settings.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/chat/ui.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/__main__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/admin.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/base.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/builders.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/chat.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/common.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/configuration.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/embeddings.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/evaluation.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/feedback.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/files.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/flows/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/gam.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/ai_lab.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/common.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/lab/spec.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/llm.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/migrate.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/options.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/organization.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/rag.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/rerank.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/secrets.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/usage_limits.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/validators.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/commands/version.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/geai.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/geai_proxy.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/install_man.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/parsers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/texts/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/cli/texts/help.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/responses.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/base/session.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/config.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/decorators.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/common/exceptions.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/embeddings/responses.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/feedback/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/files/responses.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/handlers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/llm/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/llm/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/llm/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/plugins/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/rerank/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/responses.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/secrets/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/secrets/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/secrets/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/llm/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/llm/model.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/llm/providers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/response.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/services/rest.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/singleton.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/utils/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/core/utils/console.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/dbg/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/dbg/debugger.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/dataset/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/dataset/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/dataset/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/plan/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/plan/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/plan/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/result/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/result/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/evaluation/result/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/flows/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/flows/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/flows/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/gam/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/gam/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/gam/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/health/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/health/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/health/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/agents/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/constants.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/processes/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/runners.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/spec/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/spec/loader.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/spec/parsers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/strategies/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/lab/tools/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/man1/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/man1/geai-proxy.1 +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/man/man1/geai.1 +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/migration/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/migration/strategies.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/migration/tools.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/endpoints.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/limits/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/organization/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/config.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/servers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/proxy/tool.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/admin/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/admin/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/rag/test_models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/test_managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/assistants/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_iris.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_session.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/chat/test_ui.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/test_ai_lab.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/test_common.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/lab/test_spec.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_chat.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_common.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_embeddings.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_feedback.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_files.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_gam.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_llm.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_migrate.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_organization.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_rag.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_rerank.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_show_help.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_usage_limits.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_validators.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/commands/test_version.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/cli/test_parsers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/data/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/data/mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/data/models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/base/test_models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/data/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/test_config.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/common/test_decorators.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/embeddings/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/embeddings/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/feedback/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/feedback/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/files/test_responses.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/llm/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/llm/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/test_managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/rerank/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/secrets/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/secrets/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/services/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/services/test_rest.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/test_handlers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/utils/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/core/utils/test_console.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/dbg/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/dbg/test_debugger.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/gam/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/gam/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/health/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/health/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_agents_list.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_create_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_create_sharing_link.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_delete_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_get_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_publish_agent_revision.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/integration/lab/agents/test_update_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/agents/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/agents/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/agents/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/processes/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/processes/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/processes/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/spec/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/spec/test_loader.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/spec/test_parsers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/strategies/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/strategies/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/strategies/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/test_models.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/tools/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/tools/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/lab/tools/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/migration/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/migration/test_strategies.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/migration/test_tools.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/limits/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/limits/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/limits/test_managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/test_clients.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/test_managers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/organization/test_mappers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/create_chat_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/create_text_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/extend_and_check.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/extend_dataset.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/data_analyst/get_status.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/file_summarizer_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/get_assistant_data.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/get_assistant_list.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/create_rag_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/delete_al_documents.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/delete_document.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/delete_rag_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/get_document.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/get_documents.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/get_rag_assistant_data.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/update_rag_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/rag/upload_document.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/send_feedback.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/assistants/update_chat_assistant.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/cancel_request.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_1.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_2.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_3.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_4.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/chat_completion_streaming.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/get_request_status.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/chat/send_chat_request.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/embeddings/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/embeddings/generate_embeddings.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/evaluation/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/delete_file.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/get_file_content.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/get_file_data.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/get_file_list.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/files/upload_file.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/gam/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/gam/gam_access_token.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_1.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_2.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_3.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agentic_flow_example_4.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/create_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/create_agent_2.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/delete_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/get_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/get_sharing_link.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/list_agents.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/publish_agent_revision.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/agents/update_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/assistant_to_agent.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/crud_ui.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/create_process.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/create_task.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/jobs/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/jobs/list_jobs.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/create_kb.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/get_kb.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/list_kbs.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/kbs/try_all.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/processes/list_processes.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/runner_1.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/samples/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/samples/summarize_files.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/create_reasoning_strategy.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/get_reasoning_strategy.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/list_reasoning_strategies.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/strategies/update_reasoning_strategy.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/create_tool.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/delete_tool.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/get_parameter.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/get_tool.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/list_tools.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/publish_tool_revision.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/set_parameters.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/tools/update_tool.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/c_code_fixer_agent_flow.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_cli_expert.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_lab_expert.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_tool_headless_web_browser.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_web_designer.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/create_web_reader.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/file_summarizer_example.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/file_summarizer_example_2.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_cli_expert.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_lab_expert.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_web_designer.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_web_reader.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/lab/use_cases/update_web_reader_with_tool.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/migrate/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/create_project.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/delete_project.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/export_request_data.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/get_project_data.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/get_project_list.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/get_project_tokens.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/organization/update_project.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/rerank/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/rerank/rerank_chunks.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/secrets/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/delete_usage_limit.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/get_all_usage_limit_from_organization.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/get_usage_limit_from_organization.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/get_usage_limit_from_project.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/set_usage_limit_organization.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/set_usage_limit_project.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/update_usage_limit_organization.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/tests/snippets/usage_limit/update_usage_limit_project.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/auth/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/auth/user.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/client.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/errors.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/client/helpers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/py.typed +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/agent_executor.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/context.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/request_context_builder.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/agent_execution/simple_request_context_builder.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/fastapi_app.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/jsonrpc_app.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/apps/jsonrpc/starlette_app.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/context.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/event_consumer.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/event_queue.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/in_memory_queue_manager.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/events/queue_manager.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/default_request_handler.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/jsonrpc_handler.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/request_handler.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/request_handlers/response_helpers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/inmemory_push_notifier.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/inmemory_task_store.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/push_notifier.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/result_aggregator.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/task_manager.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/task_store.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/server/tasks/task_updater.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/types.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/__init__.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/artifact.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/errors.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/helpers.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/message.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/task.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai/vendor/a2a/utils/telemetry.py +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/SOURCES.txt +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/dependency_links.txt +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/entry_points.txt +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/requires.txt +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/pygeai.egg-info/top_level.txt +0 -0
- {pygeai-0.2.7b37 → pygeai-0.2.7b38}/setup.cfg +0 -0
|
@@ -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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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.
|
|
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.
|
|
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(
|
|
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(
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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(
|
|
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(
|
|
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.
|
|
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(
|
|
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.
|
|
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.
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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.
|
|
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.
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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.
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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.
|
|
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.
|
|
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.
|
|
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(
|
|
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.
|
|
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(
|
|
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(
|
|
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(
|
|
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(
|
|
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.
|
|
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,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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|