pygeai 0.1.6__py3-none-any.whl → 0.6.0b15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pygeai might be problematic. Click here for more details.
- pygeai/__init__.py +11 -2
- pygeai/_docs/Makefile +20 -0
- pygeai/_docs/make.bat +35 -0
- pygeai/_docs/source/conf.py +117 -0
- pygeai/_docs/source/content/ai_lab/cli.rst +747 -0
- pygeai/_docs/source/content/ai_lab/models.rst +1734 -0
- pygeai/_docs/source/content/ai_lab/runner.rst +253 -0
- pygeai/_docs/source/content/ai_lab/spec.rst +431 -0
- pygeai/_docs/source/content/ai_lab/usage.rst +1011 -0
- pygeai/_docs/source/content/ai_lab.rst +102 -0
- pygeai/_docs/source/content/analytics.rst +598 -0
- pygeai/_docs/source/content/api_reference/admin.rst +161 -0
- pygeai/_docs/source/content/api_reference/assistant.rst +326 -0
- pygeai/_docs/source/content/api_reference/auth.rst +379 -0
- pygeai/_docs/source/content/api_reference/chat.rst +754 -0
- pygeai/_docs/source/content/api_reference/embeddings.rst +154 -0
- pygeai/_docs/source/content/api_reference/evaluation.rst +590 -0
- pygeai/_docs/source/content/api_reference/feedback.rst +237 -0
- pygeai/_docs/source/content/api_reference/files.rst +592 -0
- pygeai/_docs/source/content/api_reference/gam.rst +401 -0
- pygeai/_docs/source/content/api_reference/health.rst +58 -0
- pygeai/_docs/source/content/api_reference/project.rst +738 -0
- pygeai/_docs/source/content/api_reference/proxy.rst +318 -0
- pygeai/_docs/source/content/api_reference/rag.rst +710 -0
- pygeai/_docs/source/content/api_reference/rerank.rst +94 -0
- pygeai/_docs/source/content/api_reference/secrets.rst +495 -0
- pygeai/_docs/source/content/api_reference/usage_limits.rst +390 -0
- pygeai/_docs/source/content/api_reference.rst +58 -0
- pygeai/_docs/source/content/authentication.rst +295 -0
- pygeai/_docs/source/content/chat_gui.rst +121 -0
- pygeai/_docs/source/content/cli.rst +203 -0
- pygeai/_docs/source/content/debugger.rst +651 -0
- pygeai/_docs/source/content/intro.rst +67 -0
- pygeai/_docs/source/content/migration.rst +929 -0
- pygeai/_docs/source/content/modules.rst +7 -0
- pygeai/_docs/source/content/quickstart.rst +143 -0
- pygeai/_docs/source/content/samples.rst +394 -0
- pygeai/_docs/source/index.rst +75 -0
- pygeai/_docs/source/modules.rst +7 -0
- pygeai/_docs/source/pygeai.admin.rst +29 -0
- pygeai/_docs/source/pygeai.analytics.rst +53 -0
- pygeai/_docs/source/pygeai.assistant.data.rst +21 -0
- pygeai/_docs/source/pygeai.assistant.data_analyst.rst +29 -0
- pygeai/_docs/source/pygeai.assistant.rag.rst +53 -0
- pygeai/_docs/source/pygeai.assistant.rst +55 -0
- pygeai/_docs/source/pygeai.auth.rst +29 -0
- pygeai/_docs/source/pygeai.chat.rst +69 -0
- pygeai/_docs/source/pygeai.cli.commands.flows.rst +10 -0
- pygeai/_docs/source/pygeai.cli.commands.lab.rst +53 -0
- pygeai/_docs/source/pygeai.cli.commands.rst +222 -0
- pygeai/_docs/source/pygeai.cli.rst +62 -0
- pygeai/_docs/source/pygeai.cli.texts.rst +21 -0
- pygeai/_docs/source/pygeai.core.base.rst +53 -0
- pygeai/_docs/source/pygeai.core.common.rst +37 -0
- pygeai/_docs/source/pygeai.core.embeddings.rst +61 -0
- pygeai/_docs/source/pygeai.core.feedback.rst +37 -0
- pygeai/_docs/source/pygeai.core.files.rst +61 -0
- pygeai/_docs/source/pygeai.core.llm.rst +29 -0
- pygeai/_docs/source/pygeai.core.plugins.rst +37 -0
- pygeai/_docs/source/pygeai.core.rerank.rst +53 -0
- pygeai/_docs/source/pygeai.core.rst +63 -0
- pygeai/_docs/source/pygeai.core.secrets.rst +29 -0
- pygeai/_docs/source/pygeai.core.services.llm.rst +29 -0
- pygeai/_docs/source/pygeai.core.services.rst +37 -0
- pygeai/_docs/source/pygeai.core.utils.rst +37 -0
- pygeai/_docs/source/pygeai.dbg.rst +21 -0
- pygeai/_docs/source/pygeai.evaluation.dataset.rst +29 -0
- pygeai/_docs/source/pygeai.evaluation.plan.rst +29 -0
- pygeai/_docs/source/pygeai.evaluation.result.rst +29 -0
- pygeai/_docs/source/pygeai.evaluation.rst +31 -0
- pygeai/_docs/source/pygeai.flows.rst +29 -0
- pygeai/_docs/source/pygeai.gam.rst +29 -0
- pygeai/_docs/source/pygeai.health.rst +29 -0
- pygeai/_docs/source/pygeai.lab.agents.rst +37 -0
- pygeai/_docs/source/pygeai.lab.processes.rst +37 -0
- pygeai/_docs/source/pygeai.lab.rst +65 -0
- pygeai/_docs/source/pygeai.lab.spec.rst +29 -0
- pygeai/_docs/source/pygeai.lab.strategies.rst +37 -0
- pygeai/_docs/source/pygeai.lab.tools.rst +37 -0
- pygeai/_docs/source/pygeai.man.man1.rst +10 -0
- pygeai/_docs/source/pygeai.man.rst +18 -0
- pygeai/_docs/source/pygeai.migration.rst +29 -0
- pygeai/_docs/source/pygeai.organization.limits.rst +45 -0
- pygeai/_docs/source/pygeai.organization.rst +61 -0
- pygeai/_docs/source/pygeai.proxy.rst +53 -0
- pygeai/_docs/source/pygeai.rst +35 -0
- pygeai/_docs/source/pygeai.tests.admin.rst +21 -0
- pygeai/_docs/source/pygeai.tests.analytics.rst +45 -0
- pygeai/_docs/source/pygeai.tests.assistants.rag.rst +37 -0
- pygeai/_docs/source/pygeai.tests.assistants.rst +45 -0
- pygeai/_docs/source/pygeai.tests.auth.rst +29 -0
- pygeai/_docs/source/pygeai.tests.chat.rst +45 -0
- pygeai/_docs/source/pygeai.tests.cli.commands.lab.rst +37 -0
- pygeai/_docs/source/pygeai.tests.cli.commands.rst +165 -0
- pygeai/_docs/source/pygeai.tests.cli.docker.rst +10 -0
- pygeai/_docs/source/pygeai.tests.cli.rst +46 -0
- pygeai/_docs/source/pygeai.tests.core.base.data.rst +29 -0
- pygeai/_docs/source/pygeai.tests.core.base.rst +45 -0
- pygeai/_docs/source/pygeai.tests.core.common.data.rst +10 -0
- pygeai/_docs/source/pygeai.tests.core.common.rst +37 -0
- pygeai/_docs/source/pygeai.tests.core.embeddings.rst +37 -0
- pygeai/_docs/source/pygeai.tests.core.feedback.rst +21 -0
- pygeai/_docs/source/pygeai.tests.core.files.rst +53 -0
- pygeai/_docs/source/pygeai.tests.core.llm.rst +21 -0
- pygeai/_docs/source/pygeai.tests.core.plugins.rst +21 -0
- pygeai/_docs/source/pygeai.tests.core.rerank.rst +37 -0
- pygeai/_docs/source/pygeai.tests.core.rst +39 -0
- pygeai/_docs/source/pygeai.tests.core.secrets.rst +21 -0
- pygeai/_docs/source/pygeai.tests.core.services.rst +21 -0
- pygeai/_docs/source/pygeai.tests.core.utils.rst +21 -0
- pygeai/_docs/source/pygeai.tests.dbg.rst +21 -0
- pygeai/_docs/source/pygeai.tests.evaluation.dataset.rst +21 -0
- pygeai/_docs/source/pygeai.tests.evaluation.plan.rst +21 -0
- pygeai/_docs/source/pygeai.tests.evaluation.result.rst +21 -0
- pygeai/_docs/source/pygeai.tests.evaluation.rst +20 -0
- pygeai/_docs/source/pygeai.tests.gam.rst +21 -0
- pygeai/_docs/source/pygeai.tests.health.rst +21 -0
- pygeai/_docs/source/pygeai.tests.integration.assistants.rag.rst +21 -0
- pygeai/_docs/source/pygeai.tests.integration.assistants.rst +18 -0
- pygeai/_docs/source/pygeai.tests.integration.chat.rst +21 -0
- pygeai/_docs/source/pygeai.tests.integration.lab.agents.rst +69 -0
- pygeai/_docs/source/pygeai.tests.integration.lab.processes.rst +77 -0
- pygeai/_docs/source/pygeai.tests.integration.lab.reasoning_strategies.rst +37 -0
- pygeai/_docs/source/pygeai.tests.integration.lab.rst +21 -0
- pygeai/_docs/source/pygeai.tests.integration.lab.tools.rst +77 -0
- pygeai/_docs/source/pygeai.tests.integration.rst +20 -0
- pygeai/_docs/source/pygeai.tests.lab.agents.rst +29 -0
- pygeai/_docs/source/pygeai.tests.lab.processes.rst +29 -0
- pygeai/_docs/source/pygeai.tests.lab.rst +49 -0
- pygeai/_docs/source/pygeai.tests.lab.spec.rst +29 -0
- pygeai/_docs/source/pygeai.tests.lab.strategies.rst +29 -0
- pygeai/_docs/source/pygeai.tests.lab.tools.rst +29 -0
- pygeai/_docs/source/pygeai.tests.migration.rst +29 -0
- pygeai/_docs/source/pygeai.tests.organization.limits.rst +29 -0
- pygeai/_docs/source/pygeai.tests.organization.rst +53 -0
- pygeai/_docs/source/pygeai.tests.proxy.rst +61 -0
- pygeai/_docs/source/pygeai.tests.rst +33 -0
- pygeai/admin/clients.py +14 -11
- pygeai/admin/endpoints.py +2 -2
- pygeai/analytics/clients.py +505 -0
- pygeai/analytics/endpoints.py +35 -0
- pygeai/analytics/managers.py +606 -0
- pygeai/analytics/mappers.py +207 -0
- pygeai/analytics/responses.py +240 -0
- pygeai/assistant/clients.py +48 -57
- pygeai/assistant/data/__init__.py +0 -0
- pygeai/assistant/data/clients.py +15 -0
- pygeai/assistant/data_analyst/__init__.py +0 -0
- pygeai/assistant/data_analyst/clients.py +75 -0
- pygeai/assistant/data_analyst/endpoints.py +2 -0
- pygeai/assistant/endpoints.py +0 -2
- pygeai/assistant/managers.py +738 -0
- pygeai/assistant/mappers.py +153 -0
- pygeai/assistant/rag/clients.py +132 -21
- pygeai/assistant/rag/mappers.py +228 -0
- pygeai/assistant/rag/models.py +396 -0
- pygeai/assistant/rag/responses.py +10 -0
- pygeai/auth/__init__.py +0 -0
- pygeai/auth/clients.py +129 -0
- pygeai/auth/endpoints.py +6 -0
- pygeai/chat/clients.py +406 -31
- pygeai/chat/endpoints.py +3 -0
- pygeai/chat/iris.py +17 -0
- pygeai/chat/managers.py +64 -0
- pygeai/chat/session.py +38 -0
- pygeai/chat/settings.py +6 -0
- pygeai/chat/ui.py +678 -0
- pygeai/cli/__init__.py +0 -1
- pygeai/cli/commands/admin.py +9 -12
- pygeai/cli/commands/analytics.py +533 -0
- pygeai/cli/commands/assistant.py +11 -11
- pygeai/cli/commands/auth.py +299 -0
- pygeai/cli/commands/base.py +201 -7
- pygeai/cli/commands/chat.py +875 -14
- pygeai/cli/commands/common.py +30 -26
- pygeai/cli/commands/configuration.py +84 -9
- pygeai/cli/commands/docs.py +105 -0
- pygeai/cli/commands/embeddings.py +187 -0
- pygeai/cli/commands/evaluation.py +2069 -0
- pygeai/cli/commands/feedback.py +93 -0
- pygeai/cli/commands/files.py +312 -0
- pygeai/cli/commands/flows/__init__.py +0 -0
- pygeai/cli/commands/gam.py +349 -0
- pygeai/cli/commands/lab/__init__.py +0 -0
- pygeai/cli/commands/lab/ai_lab.py +4110 -0
- pygeai/cli/commands/lab/common.py +135 -0
- pygeai/cli/commands/lab/options.py +8 -0
- pygeai/cli/commands/lab/spec.py +273 -0
- pygeai/cli/commands/lab/utils.py +13 -0
- pygeai/cli/commands/llm.py +164 -0
- pygeai/cli/commands/migrate.py +1198 -0
- pygeai/cli/commands/options.py +86 -0
- pygeai/cli/commands/organization.py +560 -98
- pygeai/cli/commands/rag.py +306 -10
- pygeai/cli/commands/rerank.py +108 -0
- pygeai/cli/commands/secrets.py +357 -0
- pygeai/cli/commands/usage_limits.py +583 -0
- pygeai/cli/commands/validators.py +209 -0
- pygeai/cli/commands/version.py +44 -0
- pygeai/cli/error_handler.py +151 -0
- pygeai/cli/geai.py +171 -30
- pygeai/cli/geai_proxy.py +318 -0
- pygeai/cli/install_man.py +107 -0
- pygeai/cli/parsers.py +78 -25
- pygeai/cli/texts/help.py +712 -55
- pygeai/core/__init__.py +9 -1
- pygeai/core/base/clients.py +61 -10
- pygeai/core/base/mappers.py +208 -30
- pygeai/core/base/models.py +8 -308
- pygeai/core/base/responses.py +18 -1
- pygeai/core/base/session.py +110 -17
- pygeai/core/common/config.py +98 -16
- pygeai/core/common/decorators.py +44 -0
- pygeai/core/common/exceptions.py +104 -4
- pygeai/core/embeddings/__init__.py +19 -0
- pygeai/core/embeddings/clients.py +93 -0
- pygeai/core/embeddings/endpoints.py +1 -0
- pygeai/core/embeddings/managers.py +62 -0
- pygeai/core/embeddings/mappers.py +52 -0
- pygeai/core/embeddings/models.py +14 -0
- pygeai/core/embeddings/responses.py +31 -0
- pygeai/core/feedback/__init__.py +0 -0
- pygeai/core/feedback/clients.py +50 -0
- pygeai/core/feedback/endpoints.py +1 -0
- pygeai/core/feedback/models.py +10 -0
- pygeai/core/files/__init__.py +0 -0
- pygeai/core/files/clients.py +156 -0
- pygeai/core/files/endpoints.py +5 -0
- pygeai/core/files/managers.py +224 -0
- pygeai/core/files/mappers.py +44 -0
- pygeai/core/files/models.py +24 -0
- pygeai/core/files/responses.py +19 -0
- pygeai/core/handlers.py +32 -0
- pygeai/core/llm/__init__.py +0 -0
- pygeai/core/llm/clients.py +53 -0
- pygeai/core/llm/endpoints.py +4 -0
- pygeai/core/models.py +799 -0
- pygeai/core/plugins/__init__.py +0 -0
- pygeai/core/plugins/clients.py +32 -0
- pygeai/core/plugins/endpoints.py +1 -0
- pygeai/core/plugins/models.py +86 -0
- pygeai/core/rerank/__init__.py +0 -0
- pygeai/core/rerank/clients.py +35 -0
- pygeai/core/rerank/endpoints.py +1 -0
- pygeai/core/rerank/managers.py +47 -0
- pygeai/core/rerank/mappers.py +23 -0
- pygeai/core/rerank/models.py +27 -0
- pygeai/core/responses.py +104 -0
- pygeai/core/secrets/__init__.py +0 -0
- pygeai/core/secrets/clients.py +212 -0
- pygeai/core/secrets/endpoints.py +7 -0
- pygeai/core/services/llm/__init__.py +0 -0
- pygeai/core/services/llm/model.py +186 -0
- pygeai/core/services/llm/providers.py +15 -0
- pygeai/core/services/response.py +18 -0
- pygeai/core/services/rest.py +311 -89
- pygeai/core/utils/__init__.py +0 -0
- pygeai/core/utils/console.py +83 -0
- pygeai/core/utils/parsers.py +32 -0
- pygeai/core/utils/validators.py +10 -0
- pygeai/dbg/__init__.py +3 -0
- pygeai/dbg/debugger.py +870 -0
- pygeai/evaluation/__init__.py +0 -0
- pygeai/evaluation/clients.py +19 -0
- pygeai/evaluation/dataset/__init__.py +0 -0
- pygeai/evaluation/dataset/clients.py +514 -0
- pygeai/evaluation/dataset/endpoints.py +26 -0
- pygeai/evaluation/plan/__init__.py +0 -0
- pygeai/evaluation/plan/clients.py +302 -0
- pygeai/evaluation/plan/endpoints.py +16 -0
- pygeai/evaluation/result/__init__.py +0 -0
- pygeai/evaluation/result/clients.py +70 -0
- pygeai/evaluation/result/endpoints.py +2 -0
- pygeai/flows/__init__.py +0 -0
- pygeai/flows/endpoints.py +362 -0
- pygeai/flows/models.py +1304 -0
- pygeai/gam/__init__.py +0 -0
- pygeai/gam/clients.py +178 -0
- pygeai/gam/endpoints.py +4 -0
- pygeai/health/__init__.py +0 -0
- pygeai/health/clients.py +24 -0
- pygeai/health/endpoints.py +1 -0
- pygeai/lab/__init__.py +0 -0
- pygeai/lab/agents/__init__.py +0 -0
- pygeai/lab/agents/clients.py +426 -0
- pygeai/lab/agents/endpoints.py +12 -0
- pygeai/lab/agents/mappers.py +319 -0
- pygeai/lab/clients.py +24 -0
- pygeai/lab/constants.py +3 -0
- pygeai/lab/managers.py +1558 -0
- pygeai/lab/models.py +1719 -0
- pygeai/lab/processes/__init__.py +0 -0
- pygeai/lab/processes/clients.py +1051 -0
- pygeai/lab/processes/endpoints.py +26 -0
- pygeai/lab/processes/mappers.py +395 -0
- pygeai/lab/runners.py +90 -0
- pygeai/lab/spec/__init__.py +0 -0
- pygeai/lab/spec/loader.py +24 -0
- pygeai/lab/spec/parsers.py +39 -0
- pygeai/lab/strategies/__init__.py +0 -0
- pygeai/lab/strategies/clients.py +212 -0
- pygeai/lab/strategies/endpoints.py +5 -0
- pygeai/lab/strategies/mappers.py +58 -0
- pygeai/lab/tools/__init__.py +0 -0
- pygeai/lab/tools/clients.py +465 -0
- pygeai/lab/tools/endpoints.py +13 -0
- pygeai/lab/tools/mappers.py +131 -0
- pygeai/man/__init__.py +1 -0
- pygeai/man/man1/__init__.py +1 -0
- pygeai/man/man1/geai-proxy.1 +246 -0
- pygeai/man/man1/geai.1 +2615 -0
- pygeai/migration/__init__.py +33 -0
- pygeai/migration/strategies.py +603 -0
- pygeai/migration/tools.py +180 -0
- pygeai/organization/clients.py +246 -18
- pygeai/organization/endpoints.py +17 -8
- pygeai/organization/limits/__init__.py +0 -0
- pygeai/organization/limits/clients.py +281 -0
- pygeai/organization/limits/endpoints.py +15 -0
- pygeai/organization/limits/managers.py +331 -0
- pygeai/organization/limits/mappers.py +21 -0
- pygeai/organization/managers.py +537 -0
- pygeai/organization/mappers.py +111 -46
- pygeai/organization/responses.py +61 -11
- pygeai/proxy/__init__.py +0 -0
- pygeai/proxy/clients.py +216 -0
- pygeai/proxy/config.py +128 -0
- pygeai/proxy/managers.py +232 -0
- pygeai/proxy/servers.py +304 -0
- pygeai/proxy/tool.py +69 -0
- pygeai/tests/admin/__init__.py +0 -0
- pygeai/tests/admin/test_clients.py +148 -0
- pygeai/tests/analytics/__init__.py +0 -0
- pygeai/tests/analytics/test_clients.py +86 -0
- pygeai/tests/analytics/test_managers.py +94 -0
- pygeai/tests/analytics/test_mappers.py +84 -0
- pygeai/tests/analytics/test_responses.py +73 -0
- pygeai/tests/assistants/rag/__init__.py +0 -0
- pygeai/tests/assistants/rag/test_clients.py +346 -0
- pygeai/tests/assistants/rag/test_mappers.py +189 -0
- pygeai/tests/assistants/rag/test_models.py +292 -0
- pygeai/tests/assistants/test_clients.py +176 -80
- pygeai/tests/assistants/test_managers.py +198 -0
- pygeai/tests/assistants/test_mappers.py +111 -0
- pygeai/tests/auth/__init__.py +0 -0
- pygeai/tests/auth/test_clients.py +289 -0
- pygeai/tests/auth/test_oauth.py +172 -0
- pygeai/tests/auth/test_session_logging.py +150 -0
- pygeai/tests/chat/__init__.py +0 -0
- pygeai/tests/chat/test_clients.py +393 -0
- pygeai/tests/chat/test_iris.py +38 -0
- pygeai/tests/chat/test_session.py +62 -0
- pygeai/tests/chat/test_ui.py +224 -0
- pygeai/tests/cli/__init__.py +0 -0
- pygeai/tests/cli/commands/__init__.py +0 -0
- pygeai/tests/cli/commands/lab/__init__.py +0 -0
- pygeai/tests/cli/commands/lab/test_ai_lab.py +786 -0
- pygeai/tests/cli/commands/lab/test_common.py +208 -0
- pygeai/tests/cli/commands/lab/test_spec.py +246 -0
- pygeai/tests/cli/commands/test_assistant.py +202 -0
- pygeai/tests/cli/commands/test_chat.py +130 -0
- pygeai/tests/cli/commands/test_common.py +350 -0
- pygeai/tests/cli/commands/test_embeddings.py +132 -0
- pygeai/tests/cli/commands/test_evaluation.py +656 -0
- pygeai/tests/cli/commands/test_feedback.py +65 -0
- pygeai/tests/cli/commands/test_files.py +161 -0
- pygeai/tests/cli/commands/test_gam.py +201 -0
- pygeai/tests/cli/commands/test_llm.py +114 -0
- pygeai/tests/cli/commands/test_migrate.py +176 -0
- pygeai/tests/cli/commands/test_organization.py +276 -0
- pygeai/tests/cli/commands/test_rag.py +266 -0
- pygeai/tests/cli/commands/test_rerank.py +110 -0
- pygeai/tests/cli/commands/test_secrets.py +171 -0
- pygeai/tests/cli/commands/test_show_help.py +41 -0
- pygeai/tests/cli/commands/test_usage_limits.py +412 -0
- pygeai/tests/cli/commands/test_validators.py +160 -0
- pygeai/tests/cli/commands/test_version.py +81 -0
- pygeai/tests/cli/docker/__init__.py +0 -0
- pygeai/tests/cli/test_credentials_flag.py +316 -0
- pygeai/tests/cli/test_error_handler.py +225 -0
- pygeai/tests/cli/test_geai_driver.py +154 -0
- pygeai/tests/cli/test_parsers.py +154 -0
- pygeai/tests/core/base/__init__.py +0 -0
- pygeai/tests/core/base/data/__init__.py +0 -0
- pygeai/tests/core/base/data/mappers.py +117 -0
- pygeai/tests/core/base/data/models.py +312 -0
- pygeai/tests/core/base/test_mappers.py +569 -0
- pygeai/tests/core/base/test_models.py +261 -0
- pygeai/tests/core/base/test_responses.py +53 -0
- pygeai/tests/core/common/__init__.py +0 -0
- pygeai/tests/core/common/data/__init__.py +0 -0
- pygeai/tests/core/common/test_config.py +186 -0
- pygeai/tests/core/common/test_decorators.py +69 -0
- pygeai/tests/core/embeddings/__init__.py +0 -0
- pygeai/tests/core/embeddings/test_clients.py +225 -0
- pygeai/tests/core/embeddings/test_managers.py +171 -0
- pygeai/tests/core/embeddings/test_mappers.py +142 -0
- pygeai/tests/core/feedback/__init__.py +0 -0
- pygeai/tests/core/feedback/test_clients.py +64 -0
- pygeai/tests/core/files/__init__.py +0 -0
- pygeai/tests/core/files/test_clients.py +128 -0
- pygeai/tests/core/files/test_managers.py +219 -0
- pygeai/tests/core/files/test_mappers.py +137 -0
- pygeai/tests/core/files/test_models.py +103 -0
- pygeai/tests/core/files/test_responses.py +122 -0
- pygeai/tests/core/llm/__init__.py +0 -0
- pygeai/tests/core/llm/test_clients.py +142 -0
- pygeai/tests/core/plugins/__init__.py +0 -0
- pygeai/tests/core/plugins/test_clients.py +66 -0
- pygeai/tests/core/rerank/__init__.py +0 -0
- pygeai/tests/core/rerank/test_clients.py +76 -0
- pygeai/tests/core/rerank/test_managers.py +99 -0
- pygeai/tests/core/rerank/test_mappers.py +54 -0
- pygeai/tests/core/secrets/__init__.py +0 -0
- pygeai/tests/core/secrets/test_clients.py +264 -0
- pygeai/tests/core/services/__init__.py +0 -0
- pygeai/tests/core/services/test_rest.py +273 -0
- pygeai/tests/core/test_handlers.py +66 -0
- pygeai/tests/core/utils/__init__.py +0 -0
- pygeai/tests/core/utils/test_console.py +80 -0
- pygeai/tests/dbg/__init__.py +0 -0
- pygeai/tests/dbg/test_debugger.py +591 -0
- pygeai/tests/evaluation/__init__.py +0 -0
- pygeai/tests/evaluation/dataset/__init__.py +0 -0
- pygeai/tests/evaluation/dataset/test_clients.py +265 -0
- pygeai/tests/evaluation/plan/__init__.py +0 -0
- pygeai/tests/evaluation/plan/test_clients.py +195 -0
- pygeai/tests/evaluation/result/__init__.py +0 -0
- pygeai/tests/evaluation/result/test_clients.py +66 -0
- pygeai/tests/gam/__init__.py +0 -0
- pygeai/tests/gam/test_clients.py +195 -0
- pygeai/tests/health/__init__.py +0 -0
- pygeai/tests/health/test_clients.py +41 -0
- pygeai/tests/integration/__init__.py +0 -0
- pygeai/tests/integration/assistants/__init__.py +0 -0
- pygeai/tests/integration/assistants/rag/__init__.py +0 -0
- pygeai/tests/integration/assistants/rag/test_create_rag.py +91 -0
- pygeai/tests/integration/chat/__init__.py +0 -0
- pygeai/tests/integration/chat/test_generate_image.py +158 -0
- pygeai/tests/integration/lab/__init__.py +0 -0
- pygeai/tests/integration/lab/agents/__init__.py +0 -0
- pygeai/tests/integration/lab/agents/test_agents_list.py +106 -0
- pygeai/tests/integration/lab/agents/test_create_agent.py +319 -0
- pygeai/tests/integration/lab/agents/test_create_sharing_link.py +70 -0
- pygeai/tests/integration/lab/agents/test_delete_agent.py +75 -0
- pygeai/tests/integration/lab/agents/test_get_agent.py +94 -0
- pygeai/tests/integration/lab/agents/test_publish_agent_revision.py +127 -0
- pygeai/tests/integration/lab/agents/test_update_agent.py +250 -0
- pygeai/tests/integration/lab/processes/__init__.py +0 -0
- pygeai/tests/integration/lab/processes/test_create_process.py +345 -0
- pygeai/tests/integration/lab/processes/test_create_task.py +211 -0
- pygeai/tests/integration/lab/processes/test_delete_process.py +111 -0
- pygeai/tests/integration/lab/processes/test_get_process.py +201 -0
- pygeai/tests/integration/lab/processes/test_list_process_instances.py +91 -0
- pygeai/tests/integration/lab/processes/test_list_processes.py +138 -0
- pygeai/tests/integration/lab/processes/test_publish_process_revision.py +232 -0
- pygeai/tests/integration/lab/processes/test_update_process.py +289 -0
- pygeai/tests/integration/lab/reasoning_strategies/__init__.py +0 -0
- pygeai/tests/integration/lab/reasoning_strategies/test_get_reasoning_strategy.py +70 -0
- pygeai/tests/integration/lab/reasoning_strategies/test_list_reasoning_strategies.py +93 -0
- pygeai/tests/integration/lab/reasoning_strategies/test_update_reasoning_strategy.py +149 -0
- pygeai/tests/integration/lab/tools/__init__.py +0 -0
- pygeai/tests/integration/lab/tools/test_create_tool.py +288 -0
- pygeai/tests/integration/lab/tools/test_delete_tool.py +87 -0
- pygeai/tests/integration/lab/tools/test_get_parameter.py +98 -0
- pygeai/tests/integration/lab/tools/test_get_tool.py +91 -0
- pygeai/tests/integration/lab/tools/test_list_tools.py +106 -0
- pygeai/tests/integration/lab/tools/test_publish_tool_revision.py +119 -0
- pygeai/tests/integration/lab/tools/test_set_parameter.py +114 -0
- pygeai/tests/integration/lab/tools/test_update_tool.py +267 -0
- pygeai/tests/lab/__init__.py +0 -0
- pygeai/tests/lab/agents/__init__.py +0 -0
- pygeai/tests/lab/agents/test_clients.py +481 -0
- pygeai/tests/lab/agents/test_mappers.py +440 -0
- pygeai/tests/lab/processes/__init__.py +0 -0
- pygeai/tests/lab/processes/test_clients.py +1416 -0
- pygeai/tests/lab/processes/test_mappers.py +1092 -0
- pygeai/tests/lab/spec/__init__.py +0 -0
- pygeai/tests/lab/spec/test_loader.py +59 -0
- pygeai/tests/lab/spec/test_parsers.py +182 -0
- pygeai/tests/lab/strategies/__init__.py +0 -0
- pygeai/tests/lab/strategies/test_clients.py +241 -0
- pygeai/tests/lab/strategies/test_mappers.py +132 -0
- pygeai/tests/lab/test_managers.py +553 -0
- pygeai/tests/lab/test_mappers.py +245 -0
- pygeai/tests/lab/test_models.py +1154 -0
- pygeai/tests/lab/tools/__init__.py +0 -0
- pygeai/tests/lab/tools/test_clients.py +521 -0
- pygeai/tests/lab/tools/test_mappers.py +198 -0
- pygeai/tests/migration/__init__.py +0 -0
- pygeai/tests/migration/test_strategies.py +405 -0
- pygeai/tests/migration/test_tools.py +159 -0
- pygeai/tests/organization/limits/__init__.py +0 -0
- pygeai/tests/organization/limits/test_clients.py +567 -0
- pygeai/tests/organization/limits/test_managers.py +402 -0
- pygeai/tests/organization/test_clients.py +615 -64
- pygeai/tests/organization/test_managers.py +424 -0
- pygeai/tests/organization/test_mappers.py +153 -0
- pygeai/tests/organization/test_responses.py +137 -0
- pygeai/tests/proxy/__init__.py +1 -0
- pygeai/tests/proxy/test_clients.py +397 -0
- pygeai/tests/proxy/test_config.py +171 -0
- pygeai/tests/proxy/test_integration.py +305 -0
- pygeai/tests/proxy/test_managers.py +312 -0
- pygeai/tests/proxy/test_servers.py +387 -0
- pygeai/tests/proxy/test_tool.py +176 -0
- pygeai/tests/snippets/__init__.py +0 -0
- pygeai/tests/snippets/analytics/__init__.py +0 -0
- pygeai/tests/snippets/analytics/get_agent_usage_per_user.py +16 -0
- pygeai/tests/snippets/analytics/get_agents_created_and_modified.py +11 -0
- pygeai/tests/snippets/analytics/get_average_cost_per_request.py +10 -0
- pygeai/tests/snippets/analytics/get_overall_error_rate.py +10 -0
- pygeai/tests/snippets/analytics/get_top_10_agents_by_requests.py +12 -0
- pygeai/tests/snippets/analytics/get_total_active_users.py +10 -0
- pygeai/tests/snippets/analytics/get_total_cost.py +10 -0
- pygeai/tests/snippets/analytics/get_total_requests_per_day.py +12 -0
- pygeai/tests/snippets/analytics/get_total_tokens.py +12 -0
- pygeai/tests/snippets/assistants/__init__.py +0 -0
- pygeai/tests/snippets/assistants/create_chat_assistant.py +54 -0
- pygeai/tests/snippets/assistants/create_text_assistant.py +51 -0
- pygeai/tests/snippets/assistants/data_analyst/__init__.py +0 -0
- pygeai/tests/snippets/assistants/data_analyst/extend_and_check.py +100 -0
- pygeai/tests/snippets/assistants/data_analyst/extend_dataset.py +9 -0
- pygeai/tests/snippets/assistants/data_analyst/get_status.py +9 -0
- pygeai/tests/snippets/assistants/file_summarizer_assistant.py +149 -0
- pygeai/tests/snippets/assistants/get_assistant_data.py +8 -0
- pygeai/tests/snippets/assistants/get_assistant_list.py +7 -0
- pygeai/tests/snippets/assistants/rag/__init__.py +0 -0
- pygeai/tests/snippets/assistants/rag/create_rag_assistant.py +65 -0
- pygeai/tests/snippets/assistants/rag/delete_al_documents.py +7 -0
- pygeai/tests/snippets/assistants/rag/delete_document.py +10 -0
- pygeai/tests/snippets/assistants/rag/delete_rag_assistant.py +8 -0
- pygeai/tests/snippets/assistants/rag/get_document.py +10 -0
- pygeai/tests/snippets/assistants/rag/get_documents.py +7 -0
- pygeai/tests/snippets/assistants/rag/get_rag_assistant_data.py +8 -0
- pygeai/tests/snippets/assistants/rag/update_rag_assistant.py +48 -0
- pygeai/tests/snippets/assistants/rag/upload_document.py +19 -0
- pygeai/tests/snippets/assistants/send_feedback.py +14 -0
- pygeai/tests/snippets/assistants/update_chat_assistant.py +63 -0
- pygeai/tests/snippets/auth/__init__.py +0 -0
- pygeai/tests/snippets/chat/__init__.py +0 -0
- pygeai/tests/snippets/chat/cancel_request.py +7 -0
- pygeai/tests/snippets/chat/chat_completion.py +28 -0
- pygeai/tests/snippets/chat/chat_completion_1.py +40 -0
- pygeai/tests/snippets/chat/chat_completion_2.py +60 -0
- pygeai/tests/snippets/chat/chat_completion_3.py +27 -0
- pygeai/tests/snippets/chat/chat_completion_4.py +67 -0
- pygeai/tests/snippets/chat/chat_completion_streaming.py +63 -0
- pygeai/tests/snippets/chat/chat_completion_with_reasoning_effort.py +18 -0
- pygeai/tests/snippets/chat/get_request_status.py +7 -0
- pygeai/tests/snippets/chat/get_response.py +15 -0
- pygeai/tests/snippets/chat/get_response_complete_example.py +67 -0
- pygeai/tests/snippets/chat/get_response_streaming.py +20 -0
- pygeai/tests/snippets/chat/get_response_with_files.py +16 -0
- pygeai/tests/snippets/chat/get_response_with_instructions.py +19 -0
- pygeai/tests/snippets/chat/get_response_with_metadata.py +24 -0
- pygeai/tests/snippets/chat/get_response_with_parallel_tools.py +58 -0
- pygeai/tests/snippets/chat/get_response_with_reasoning.py +21 -0
- pygeai/tests/snippets/chat/get_response_with_store.py +38 -0
- pygeai/tests/snippets/chat/get_response_with_tools.py +36 -0
- pygeai/tests/snippets/chat/get_response_with_truncation.py +24 -0
- pygeai/tests/snippets/chat/send_chat_request.py +33 -0
- pygeai/tests/snippets/dbg/__init__.py +0 -0
- pygeai/tests/snippets/dbg/basic_debugging.py +32 -0
- pygeai/tests/snippets/dbg/breakpoint_management.py +48 -0
- pygeai/tests/snippets/dbg/file_debugging.py +72 -0
- pygeai/tests/snippets/dbg/module_debugging.py +61 -0
- pygeai/tests/snippets/dbg/stack_navigation.py +45 -0
- pygeai/tests/snippets/dbg/stepping_example.py +40 -0
- pygeai/tests/snippets/embeddings/__init__.py +0 -0
- pygeai/tests/snippets/embeddings/cache_example.py +31 -0
- pygeai/tests/snippets/embeddings/cohere_example.py +41 -0
- pygeai/tests/snippets/embeddings/generate_embeddings.py +26 -0
- pygeai/tests/snippets/embeddings/openai_base64_example.py +27 -0
- pygeai/tests/snippets/embeddings/openai_example.py +30 -0
- pygeai/tests/snippets/embeddings/similarity_example.py +42 -0
- pygeai/tests/snippets/evaluation/__init__.py +0 -0
- pygeai/tests/snippets/evaluation/dataset/__init__.py +0 -0
- pygeai/tests/snippets/evaluation/dataset/complete_workflow_example.py +195 -0
- pygeai/tests/snippets/evaluation/dataset/create_dataset.py +26 -0
- pygeai/tests/snippets/evaluation/dataset/create_dataset_from_file.py +11 -0
- pygeai/tests/snippets/evaluation/dataset/create_dataset_row.py +17 -0
- pygeai/tests/snippets/evaluation/dataset/create_expected_source.py +18 -0
- pygeai/tests/snippets/evaluation/dataset/create_filter_variable.py +19 -0
- pygeai/tests/snippets/evaluation/dataset/delete_dataset.py +9 -0
- pygeai/tests/snippets/evaluation/dataset/delete_dataset_row.py +10 -0
- pygeai/tests/snippets/evaluation/dataset/delete_expected_source.py +15 -0
- pygeai/tests/snippets/evaluation/dataset/delete_filter_variable.py +15 -0
- pygeai/tests/snippets/evaluation/dataset/get_dataset.py +9 -0
- pygeai/tests/snippets/evaluation/dataset/get_dataset_row.py +10 -0
- pygeai/tests/snippets/evaluation/dataset/get_expected_source.py +15 -0
- pygeai/tests/snippets/evaluation/dataset/get_filter_variable.py +15 -0
- pygeai/tests/snippets/evaluation/dataset/list_dataset_rows.py +9 -0
- pygeai/tests/snippets/evaluation/dataset/list_datasets.py +6 -0
- pygeai/tests/snippets/evaluation/dataset/list_expected_sources.py +10 -0
- pygeai/tests/snippets/evaluation/dataset/list_filter_variables.py +10 -0
- pygeai/tests/snippets/evaluation/dataset/update_dataset.py +15 -0
- pygeai/tests/snippets/evaluation/dataset/update_dataset_row.py +20 -0
- pygeai/tests/snippets/evaluation/dataset/update_expected_source.py +18 -0
- pygeai/tests/snippets/evaluation/dataset/update_filter_variable.py +19 -0
- pygeai/tests/snippets/evaluation/dataset/upload_dataset_rows_file.py +10 -0
- pygeai/tests/snippets/evaluation/plan/__init__.py +0 -0
- pygeai/tests/snippets/evaluation/plan/add_plan_system_metric.py +13 -0
- pygeai/tests/snippets/evaluation/plan/complete_workflow_example.py +136 -0
- pygeai/tests/snippets/evaluation/plan/create_evaluation_plan.py +24 -0
- pygeai/tests/snippets/evaluation/plan/create_rag_evaluation_plan.py +22 -0
- pygeai/tests/snippets/evaluation/plan/delete_evaluation_plan.py +9 -0
- pygeai/tests/snippets/evaluation/plan/delete_plan_system_metric.py +13 -0
- pygeai/tests/snippets/evaluation/plan/execute_evaluation_plan.py +11 -0
- pygeai/tests/snippets/evaluation/plan/get_evaluation_plan.py +9 -0
- pygeai/tests/snippets/evaluation/plan/get_plan_system_metric.py +13 -0
- pygeai/tests/snippets/evaluation/plan/get_system_metric.py +9 -0
- pygeai/tests/snippets/evaluation/plan/list_evaluation_plans.py +7 -0
- pygeai/tests/snippets/evaluation/plan/list_plan_system_metrics.py +9 -0
- pygeai/tests/snippets/evaluation/plan/list_system_metrics.py +7 -0
- pygeai/tests/snippets/evaluation/plan/update_evaluation_plan.py +22 -0
- pygeai/tests/snippets/evaluation/plan/update_plan_system_metric.py +14 -0
- pygeai/tests/snippets/evaluation/result/__init__.py +0 -0
- pygeai/tests/snippets/evaluation/result/complete_workflow_example.py +150 -0
- pygeai/tests/snippets/evaluation/result/get_evaluation_result.py +26 -0
- pygeai/tests/snippets/evaluation/result/list_evaluation_results.py +17 -0
- pygeai/tests/snippets/files/__init__.py +0 -0
- pygeai/tests/snippets/files/delete_file.py +9 -0
- pygeai/tests/snippets/files/get_file_content.py +10 -0
- pygeai/tests/snippets/files/get_file_data.py +9 -0
- pygeai/tests/snippets/files/get_file_list.py +6 -0
- pygeai/tests/snippets/files/upload_file.py +13 -0
- pygeai/tests/snippets/gam/__init__.py +0 -0
- pygeai/tests/snippets/gam/gam_access_token.py +87 -0
- pygeai/tests/snippets/lab/__init__.py +0 -0
- pygeai/tests/snippets/lab/agentic_flow_example_1.py +326 -0
- pygeai/tests/snippets/lab/agentic_flow_example_2.py +206 -0
- pygeai/tests/snippets/lab/agentic_flow_example_3.py +486 -0
- pygeai/tests/snippets/lab/agentic_flow_example_4.py +446 -0
- pygeai/tests/snippets/lab/agents/__init__.py +0 -0
- pygeai/tests/snippets/lab/agents/create_agent.py +48 -0
- pygeai/tests/snippets/lab/agents/create_agent_2.py +48 -0
- pygeai/tests/snippets/lab/agents/create_agent_edge_case.py +48 -0
- pygeai/tests/snippets/lab/agents/create_agent_with_permissions.py +39 -0
- pygeai/tests/snippets/lab/agents/create_agent_with_properties.py +46 -0
- pygeai/tests/snippets/lab/agents/create_agent_without_instructions.py +48 -0
- pygeai/tests/snippets/lab/agents/delete_agent.py +12 -0
- pygeai/tests/snippets/lab/agents/get_agent.py +24 -0
- pygeai/tests/snippets/lab/agents/get_agent_with_new_fields.py +62 -0
- pygeai/tests/snippets/lab/agents/get_sharing_link.py +13 -0
- pygeai/tests/snippets/lab/agents/list_agents.py +18 -0
- pygeai/tests/snippets/lab/agents/publish_agent_revision.py +12 -0
- pygeai/tests/snippets/lab/agents/update_agent.py +50 -0
- pygeai/tests/snippets/lab/agents/update_agent_properties.py +50 -0
- pygeai/tests/snippets/lab/assistant_to_agent.py +191 -0
- pygeai/tests/snippets/lab/crud_ui.py +462 -0
- pygeai/tests/snippets/lab/processes/__init__.py +0 -0
- pygeai/tests/snippets/lab/processes/create_process.py +24 -0
- pygeai/tests/snippets/lab/processes/create_task.py +8 -0
- pygeai/tests/snippets/lab/processes/jobs/__init__.py +0 -0
- pygeai/tests/snippets/lab/processes/jobs/list_jobs.py +21 -0
- pygeai/tests/snippets/lab/processes/kbs/__init__.py +0 -0
- pygeai/tests/snippets/lab/processes/kbs/create_kb.py +18 -0
- pygeai/tests/snippets/lab/processes/kbs/get_kb.py +26 -0
- pygeai/tests/snippets/lab/processes/kbs/list_kbs.py +30 -0
- pygeai/tests/snippets/lab/processes/kbs/try_all.py +73 -0
- pygeai/tests/snippets/lab/processes/list_processes.py +10 -0
- pygeai/tests/snippets/lab/runner_1.py +212 -0
- pygeai/tests/snippets/lab/samples/__init__.py +0 -0
- pygeai/tests/snippets/lab/samples/summarize_files.py +162 -0
- pygeai/tests/snippets/lab/strategies/__init__.py +0 -0
- pygeai/tests/snippets/lab/strategies/create_reasoning_strategy.py +22 -0
- pygeai/tests/snippets/lab/strategies/get_reasoning_strategy.py +10 -0
- pygeai/tests/snippets/lab/strategies/list_reasoning_strategies.py +16 -0
- pygeai/tests/snippets/lab/strategies/update_reasoning_strategy.py +26 -0
- pygeai/tests/snippets/lab/tools/__init__.py +0 -0
- pygeai/tests/snippets/lab/tools/create_tool.py +48 -0
- pygeai/tests/snippets/lab/tools/create_tool_edge_case.py +50 -0
- pygeai/tests/snippets/lab/tools/delete_tool.py +21 -0
- pygeai/tests/snippets/lab/tools/get_parameter.py +21 -0
- pygeai/tests/snippets/lab/tools/get_tool.py +22 -0
- pygeai/tests/snippets/lab/tools/list_tools.py +23 -0
- pygeai/tests/snippets/lab/tools/publish_tool_revision.py +13 -0
- pygeai/tests/snippets/lab/tools/set_parameters.py +33 -0
- pygeai/tests/snippets/lab/tools/update_tool.py +52 -0
- pygeai/tests/snippets/lab/use_cases/__init__.py +0 -0
- pygeai/tests/snippets/lab/use_cases/c_code_fixer_agent_flow.py +238 -0
- pygeai/tests/snippets/lab/use_cases/create_cli_expert.py +1640 -0
- pygeai/tests/snippets/lab/use_cases/create_lab_expert.py +4541 -0
- pygeai/tests/snippets/lab/use_cases/create_tool_headless_web_browser.py +133 -0
- pygeai/tests/snippets/lab/use_cases/create_web_designer.py +189 -0
- pygeai/tests/snippets/lab/use_cases/create_web_reader.py +185 -0
- pygeai/tests/snippets/lab/use_cases/file_summarizer_example.py +157 -0
- pygeai/tests/snippets/lab/use_cases/file_summarizer_example_2.py +157 -0
- pygeai/tests/snippets/lab/use_cases/update_cli_expert.py +1773 -0
- pygeai/tests/snippets/lab/use_cases/update_lab_expert.py +4541 -0
- pygeai/tests/snippets/lab/use_cases/update_web_designer.py +188 -0
- pygeai/tests/snippets/lab/use_cases/update_web_reader.py +195 -0
- pygeai/tests/snippets/lab/use_cases/update_web_reader_with_tool.py +210 -0
- pygeai/tests/snippets/migrate/__init__.py +45 -0
- pygeai/tests/snippets/migrate/agent_migration.py +110 -0
- pygeai/tests/snippets/migrate/assistant_migration.py +64 -0
- pygeai/tests/snippets/migrate/orchestrator_examples.py +179 -0
- pygeai/tests/snippets/migrate/process_migration.py +64 -0
- pygeai/tests/snippets/migrate/project_migration.py +42 -0
- pygeai/tests/snippets/migrate/tool_migration.py +64 -0
- pygeai/tests/snippets/organization/__init__.py +0 -0
- pygeai/tests/snippets/organization/add_project_member.py +10 -0
- pygeai/tests/snippets/organization/add_project_member_batch.py +44 -0
- pygeai/tests/snippets/organization/create_project.py +23 -0
- pygeai/tests/snippets/organization/delete_project.py +7 -0
- pygeai/tests/snippets/organization/export_request_data.py +7 -0
- pygeai/tests/snippets/organization/get_memberships.py +12 -0
- pygeai/tests/snippets/organization/get_organization_members.py +6 -0
- pygeai/tests/snippets/organization/get_project_data.py +7 -0
- pygeai/tests/snippets/organization/get_project_list.py +8 -0
- pygeai/tests/snippets/organization/get_project_members.py +6 -0
- pygeai/tests/snippets/organization/get_project_memberships.py +12 -0
- pygeai/tests/snippets/organization/get_project_roles.py +6 -0
- pygeai/tests/snippets/organization/get_project_tokens.py +7 -0
- pygeai/tests/snippets/organization/update_project.py +14 -0
- pygeai/tests/snippets/rerank/__init__.py +0 -0
- pygeai/tests/snippets/rerank/rerank_chunks.py +19 -0
- pygeai/tests/snippets/secrets/__init__.py +0 -0
- pygeai/tests/snippets/usage_limit/__init__.py +0 -0
- pygeai/tests/snippets/usage_limit/delete_usage_limit.py +16 -0
- pygeai/tests/snippets/usage_limit/get_all_usage_limit_from_organization.py +12 -0
- pygeai/tests/snippets/usage_limit/get_usage_limit_from_organization.py +11 -0
- pygeai/tests/snippets/usage_limit/get_usage_limit_from_project.py +13 -0
- pygeai/tests/snippets/usage_limit/set_usage_limit_organization.py +22 -0
- pygeai/tests/snippets/usage_limit/set_usage_limit_project.py +23 -0
- pygeai/tests/snippets/usage_limit/update_usage_limit_organization.py +23 -0
- pygeai/tests/snippets/usage_limit/update_usage_limit_project.py +24 -0
- pygeai/vendor/a2a/__init__.py +1 -0
- pygeai/vendor/a2a/auth/__init__.py +0 -0
- pygeai/vendor/a2a/auth/user.py +31 -0
- pygeai/vendor/a2a/client/__init__.py +19 -0
- pygeai/vendor/a2a/client/client.py +425 -0
- pygeai/vendor/a2a/client/errors.py +33 -0
- pygeai/vendor/a2a/client/helpers.py +22 -0
- pygeai/vendor/a2a/py.typed +0 -0
- pygeai/vendor/a2a/server/__init__.py +1 -0
- pygeai/vendor/a2a/server/agent_execution/__init__.py +18 -0
- pygeai/vendor/a2a/server/agent_execution/agent_executor.py +44 -0
- pygeai/vendor/a2a/server/agent_execution/context.py +155 -0
- pygeai/vendor/a2a/server/agent_execution/request_context_builder.py +20 -0
- pygeai/vendor/a2a/server/agent_execution/simple_request_context_builder.py +77 -0
- pygeai/vendor/a2a/server/apps/__init__.py +16 -0
- pygeai/vendor/a2a/server/apps/jsonrpc/__init__.py +16 -0
- pygeai/vendor/a2a/server/apps/jsonrpc/fastapi_app.py +88 -0
- pygeai/vendor/a2a/server/apps/jsonrpc/jsonrpc_app.py +426 -0
- pygeai/vendor/a2a/server/apps/jsonrpc/starlette_app.py +123 -0
- pygeai/vendor/a2a/server/context.py +23 -0
- pygeai/vendor/a2a/server/events/__init__.py +21 -0
- pygeai/vendor/a2a/server/events/event_consumer.py +149 -0
- pygeai/vendor/a2a/server/events/event_queue.py +156 -0
- pygeai/vendor/a2a/server/events/in_memory_queue_manager.py +85 -0
- pygeai/vendor/a2a/server/events/queue_manager.py +35 -0
- pygeai/vendor/a2a/server/request_handlers/__init__.py +20 -0
- pygeai/vendor/a2a/server/request_handlers/default_request_handler.py +435 -0
- pygeai/vendor/a2a/server/request_handlers/jsonrpc_handler.py +327 -0
- pygeai/vendor/a2a/server/request_handlers/request_handler.py +161 -0
- pygeai/vendor/a2a/server/request_handlers/response_helpers.py +133 -0
- pygeai/vendor/a2a/server/tasks/__init__.py +20 -0
- pygeai/vendor/a2a/server/tasks/inmemory_push_notifier.py +62 -0
- pygeai/vendor/a2a/server/tasks/inmemory_task_store.py +51 -0
- pygeai/vendor/a2a/server/tasks/push_notifier.py +25 -0
- pygeai/vendor/a2a/server/tasks/result_aggregator.py +151 -0
- pygeai/vendor/a2a/server/tasks/task_manager.py +253 -0
- pygeai/vendor/a2a/server/tasks/task_store.py +22 -0
- pygeai/vendor/a2a/server/tasks/task_updater.py +155 -0
- pygeai/vendor/a2a/types.py +1624 -0
- pygeai/vendor/a2a/utils/__init__.py +40 -0
- pygeai/vendor/a2a/utils/artifact.py +72 -0
- pygeai/vendor/a2a/utils/errors.py +69 -0
- pygeai/vendor/a2a/utils/helpers.py +176 -0
- pygeai/vendor/a2a/utils/message.py +83 -0
- pygeai/vendor/a2a/utils/task.py +57 -0
- pygeai/vendor/a2a/utils/telemetry.py +299 -0
- pygeai-0.6.0b15.dist-info/METADATA +205 -0
- pygeai-0.6.0b15.dist-info/RECORD +799 -0
- {pygeai-0.1.6.dist-info → pygeai-0.6.0b15.dist-info}/WHEEL +1 -1
- pygeai-0.6.0b15.dist-info/entry_points.txt +5 -0
- {pygeai-0.1.6.dist-info → pygeai-0.6.0b15.dist-info/licenses}/LICENSE +13 -1
- {pygeai-0.1.6.dist-info → pygeai-0.6.0b15.dist-info}/top_level.txt +0 -1
- docs/source/conf.py +0 -45
- pygeai/core/clients.py +0 -240
- pygeai/tests/core/test_clients.py +0 -49
- pygeai-0.1.6.dist-info/METADATA +0 -92
- pygeai-0.1.6.dist-info/RECORD +0 -65
- pygeai-0.1.6.dist-info/SOURCES.sync-conflict-20241223-145950-3QD4F42.txt +0 -41
- pygeai-0.1.6.dist-info/entry_points.txt +0 -2
- /pygeai/{agent → analytics}/__init__.py +0 -0
|
@@ -0,0 +1,747 @@
|
|
|
1
|
+
Working with the GEAI Lab using the CLI
|
|
2
|
+
=======================================
|
|
3
|
+
|
|
4
|
+
The `geai ai-lab` command-line interface (CLI) allows users to interact with the Globant Enterprise AI (GEAI) Lab to manage agents, tools, reasoning strategies, processes, tasks, and process instances. This guide provides step-by-step instructions for performing common operations using CLI commands.
|
|
5
|
+
|
|
6
|
+
.. contents:: Table of Contents
|
|
7
|
+
:depth: 3
|
|
8
|
+
:local:
|
|
9
|
+
|
|
10
|
+
Prerequisites
|
|
11
|
+
-------------
|
|
12
|
+
|
|
13
|
+
- **CLI Installation**: Ensure the `geai` CLI is installed. Contact your GEAI administrator for installation instructions.
|
|
14
|
+
- **Authentication**: Obtain your project ID and API token from the GEAI platform.
|
|
15
|
+
- **Environment**: A terminal with access to the `geai` command, typically on Linux, macOS, or Windows (via WSL or similar).
|
|
16
|
+
|
|
17
|
+
Set the project ID as an environment variable for convenience:
|
|
18
|
+
|
|
19
|
+
.. code-block:: bash
|
|
20
|
+
|
|
21
|
+
export PROJECT_ID="aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
|
|
22
|
+
|
|
23
|
+
Managing Agents
|
|
24
|
+
---------------
|
|
25
|
+
|
|
26
|
+
Agents are AI entities that perform tasks based on prompts and LLM configurations.
|
|
27
|
+
|
|
28
|
+
### List Agents
|
|
29
|
+
|
|
30
|
+
Retrieve a list of agents with filtering options.
|
|
31
|
+
|
|
32
|
+
.. code-block:: bash
|
|
33
|
+
|
|
34
|
+
geai ai-lab list-agents \
|
|
35
|
+
--project-id "$PROJECT_ID" \
|
|
36
|
+
--status "active" \
|
|
37
|
+
--access-scope "public" \
|
|
38
|
+
--allow-drafts 0 \
|
|
39
|
+
--allow-external 1
|
|
40
|
+
|
|
41
|
+
**Example Output**:
|
|
42
|
+
|
|
43
|
+
.. code-block:: text
|
|
44
|
+
|
|
45
|
+
- Name: Public Translator V2, ID: 11111111-1111-1111-1111-111111111111, Status: active
|
|
46
|
+
- Name: Jarvis, ID: 22222222-2222-2222-2222-222222222222, Status: active
|
|
47
|
+
|
|
48
|
+
### Create a Public Agent
|
|
49
|
+
|
|
50
|
+
Create a public agent with detailed configurations.
|
|
51
|
+
|
|
52
|
+
.. code-block:: bash
|
|
53
|
+
|
|
54
|
+
geai ai-lab create-agent \
|
|
55
|
+
--project-id "$PROJECT_ID" \
|
|
56
|
+
--name "Public Translator V2" \
|
|
57
|
+
--access-scope "public" \
|
|
58
|
+
--public-name "com.genexus.geai.public_translator" \
|
|
59
|
+
--job-description "Translates" \
|
|
60
|
+
--avatar-image "https://www.shareicon.net/data/128x128/2016/11/09/851442_logo_512x512.png" \
|
|
61
|
+
--description "Agent that translates from any language to English." \
|
|
62
|
+
--agent-data-prompt-instructions "the user will provide a text, you must return the same text translated to English" \
|
|
63
|
+
--agent-data-prompt-input "text" \
|
|
64
|
+
--agent-data-prompt-input "avoid slang indicator" \
|
|
65
|
+
--agent-data-prompt-output '{"key": "translated_text", "description": "translated text, with slang or not depending on the indication. in plain text."}' \
|
|
66
|
+
--agent-data-prompt-output '{"key": "summary", "description": "a summary in the original language of the text to be translated, also in plain text."}' \
|
|
67
|
+
--agent-data-prompt-example '{"inputData": "opitiiiis mundo [no-slang]", "output": "{\"translated_text\":\"hello world\",\"summary\":\"saludo\"}"}' \
|
|
68
|
+
--agent-data-prompt-example '{"inputData": "esto es una prueba pincheguey [keep-slang]", "output": "{\"translated_text\":\"this is a test pal\",\"summary\":\"prueba\"}"}' \
|
|
69
|
+
--agent-data-llm-max-tokens 5000 \
|
|
70
|
+
--agent-data-llm-timeout 0 \
|
|
71
|
+
--agent-data-llm-temperature 0.5 \
|
|
72
|
+
--agent-data-llm-top-k 0 \
|
|
73
|
+
--agent-data-llm-top-p 0 \
|
|
74
|
+
--agent-data-model-name "gpt-4-turbo-preview" \
|
|
75
|
+
--automatic-publish 0
|
|
76
|
+
|
|
77
|
+
### Create a Private Agent
|
|
78
|
+
|
|
79
|
+
Create a private agent with automatic publication.
|
|
80
|
+
|
|
81
|
+
.. code-block:: bash
|
|
82
|
+
|
|
83
|
+
geai ai-lab create-agent \
|
|
84
|
+
--project-id "$PROJECT_ID" \
|
|
85
|
+
--name "Private Translator V4" \
|
|
86
|
+
--access-scope "private" \
|
|
87
|
+
--public-name "com.genexus.geai.private_translatorv4" \
|
|
88
|
+
--job-description "Text Translation Service" \
|
|
89
|
+
--avatar-image "https://www.shareicon.net/data/128x128/2016/11/09/851443_logo_512x512.png" \
|
|
90
|
+
--description "Agent that translates text from any language to English for private use." \
|
|
91
|
+
--agent-data-prompt-instructions "The user provides a text; return it translated to English based on slang preference." \
|
|
92
|
+
--agent-data-prompt-input "text" \
|
|
93
|
+
--agent-data-prompt-input "slang preference (optional)" \
|
|
94
|
+
--agent-data-prompt-output '{"key": "translated_text", "description": "translated text to English, with or without slang based on preference, in plain text."}' \
|
|
95
|
+
--agent-data-prompt-output '{"key": "summary", "description": "a short summary in the original language of the input text, in plain text."}' \
|
|
96
|
+
--agent-data-prompt-example '{"inputData": "hola amigos [no-slang]", "output": "{\"translated_text\":\"hello friends\",\"summary\":\"saludo\"}"}' \
|
|
97
|
+
--agent-data-prompt-example '{"inputData": "qué onda carnal [keep-slang]", "output": "{\"translated_text\":\"what’s up bro\",\"summary\":\"saludo informal\"}"}' \
|
|
98
|
+
--agent-data-llm-max-tokens 6000 \
|
|
99
|
+
--agent-data-llm-timeout 0 \
|
|
100
|
+
--agent-data-llm-temperature 0.7 \
|
|
101
|
+
--agent-data-llm-top-k 0 \
|
|
102
|
+
--agent-data-llm-top-p 0 \
|
|
103
|
+
--agent-data-model-name "gpt-4o" \
|
|
104
|
+
--automatic-publish 1
|
|
105
|
+
|
|
106
|
+
### Get Agent Information
|
|
107
|
+
|
|
108
|
+
Retrieve details for a specific agent.
|
|
109
|
+
|
|
110
|
+
.. code-block:: bash
|
|
111
|
+
|
|
112
|
+
geai ai-lab get-agent \
|
|
113
|
+
--project-id "$PROJECT_ID" \
|
|
114
|
+
--agent-id "11111111-1111-1111-1111-111111111111"
|
|
115
|
+
|
|
116
|
+
**Example Output**:
|
|
117
|
+
|
|
118
|
+
.. code-block:: text
|
|
119
|
+
|
|
120
|
+
Name: Public Translator V2
|
|
121
|
+
ID: 11111111-1111-1111-1111-111111111111
|
|
122
|
+
Description: Agent that translates from any language to English.
|
|
123
|
+
Access Scope: public
|
|
124
|
+
|
|
125
|
+
### Update an Agent
|
|
126
|
+
|
|
127
|
+
Update an existing agent's properties.
|
|
128
|
+
|
|
129
|
+
.. code-block:: bash
|
|
130
|
+
|
|
131
|
+
geai ai-lab update-agent \
|
|
132
|
+
--project-id "$PROJECT_ID" \
|
|
133
|
+
--agent-id "33333333-3333-3333-3333-333333333333" \
|
|
134
|
+
--name "Private Translator V4" \
|
|
135
|
+
--access-scope "private" \
|
|
136
|
+
--public-name "com.genexus.geai.private_translatorv4" \
|
|
137
|
+
--job-description "Enhanced Text Translation Service" \
|
|
138
|
+
--avatar-image "https://www.shareicon.net/data/128x128/2016/11/09/851443_logo_512x512.png" \
|
|
139
|
+
--description "Updated agent that translates text from any language to English for private use with improved accuracy." \
|
|
140
|
+
--agent-data-prompt-instructions "The user provides a text; return it translated to English based on slang preference, ensuring natural phrasing." \
|
|
141
|
+
--agent-data-prompt-input "text" \
|
|
142
|
+
--agent-data-prompt-input "slang preference (optional)" \
|
|
143
|
+
--agent-data-prompt-output '{"key": "translated_text", "description": "translated text to English, with or without slang based on preference, in plain text."}' \
|
|
144
|
+
--agent-data-prompt-output '{"key": "summary", "description": "a concise summary in the original language of the input text, in plain text."}' \
|
|
145
|
+
--agent-data-prompt-example '{"inputData": "hola amigos [no-slang]", "output": "{\"translated_text\":\"hello friends\",\"summary\":\"saludo\"}"}' \
|
|
146
|
+
--agent-data-prompt-example '{"inputData": "qué pasa compa [keep-slang]", "output": "{\"translated_text\":\"what’s good buddy\",\"summary\":\"saludo informal\"}"}' \
|
|
147
|
+
--agent-data-llm-max-tokens 6500 \
|
|
148
|
+
--agent-data-llm-timeout 0 \
|
|
149
|
+
--agent-data-llm-temperature 0.8 \
|
|
150
|
+
--agent-data-llm-top-k 0 \
|
|
151
|
+
--agent-data-llm-top-p 0 \
|
|
152
|
+
--agent-data-model-name "gpt-4o" \
|
|
153
|
+
--automatic-publish 1 \
|
|
154
|
+
--upsert 0
|
|
155
|
+
|
|
156
|
+
### Create a Sharing Link
|
|
157
|
+
|
|
158
|
+
Generate a sharing link for an agent.
|
|
159
|
+
|
|
160
|
+
.. code-block:: bash
|
|
161
|
+
|
|
162
|
+
geai ai-lab create-sharing-link \
|
|
163
|
+
--project-id "$PROJECT_ID" \
|
|
164
|
+
--agent-id "44444444-4444-4444-4444-444444444444"
|
|
165
|
+
|
|
166
|
+
**Example Output**:
|
|
167
|
+
|
|
168
|
+
.. code-block:: text
|
|
169
|
+
|
|
170
|
+
Shared Link: https://geai.example.com/share/44444444-4444-4444-4444-444444444444
|
|
171
|
+
|
|
172
|
+
### Delete an Agent
|
|
173
|
+
|
|
174
|
+
Remove an agent from the project.
|
|
175
|
+
|
|
176
|
+
.. code-block:: bash
|
|
177
|
+
|
|
178
|
+
geai ai-lab delete-agent \
|
|
179
|
+
--project-id "$PROJECT_ID" \
|
|
180
|
+
--agent-id "55555555-5555-5555-5555-555555555555"
|
|
181
|
+
|
|
182
|
+
Managing Tools
|
|
183
|
+
--------------
|
|
184
|
+
|
|
185
|
+
Tools extend agent capabilities with external APIs or built-in functions.
|
|
186
|
+
|
|
187
|
+
### List Tools
|
|
188
|
+
|
|
189
|
+
Retrieve a list of tools with filtering options.
|
|
190
|
+
|
|
191
|
+
.. code-block:: bash
|
|
192
|
+
|
|
193
|
+
geai ai-lab list-tools \
|
|
194
|
+
--project-id "$PROJECT_ID" \
|
|
195
|
+
--access-scope "public" \
|
|
196
|
+
--scope "api" \
|
|
197
|
+
--count "100" \
|
|
198
|
+
--allow-drafts 1 \
|
|
199
|
+
--allow-external 1
|
|
200
|
+
|
|
201
|
+
**Example Output**:
|
|
202
|
+
|
|
203
|
+
.. code-block:: text
|
|
204
|
+
|
|
205
|
+
- Name: gdrive_create_docs_post, ID: 66666666-6666-6666-6666-666666666666
|
|
206
|
+
- Name: create_image_post, ID: 77777777-7777-7777-7777-777777777777
|
|
207
|
+
|
|
208
|
+
### Create a Tool
|
|
209
|
+
|
|
210
|
+
Create a built-in tool with parameters.
|
|
211
|
+
|
|
212
|
+
.. code-block:: bash
|
|
213
|
+
|
|
214
|
+
geai ai-lab create-tool \
|
|
215
|
+
--project-id "$PROJECT_ID" \
|
|
216
|
+
--name "sample tool V3" \
|
|
217
|
+
--description "A builtin tool that does something but really does nothing." \
|
|
218
|
+
--scope "builtin" \
|
|
219
|
+
--parameter '{"key": "input", "dataType": "String", "description": "some input that the tool needs.", "isRequired": true}' \
|
|
220
|
+
--parameter '{"key": "some_nonsensitive_id", "dataType": "String", "description": "Configuration that is static.", "isRequired": true, "type": "config", "fromSecret": false, "value": "example-fake-config-value-12345"}' \
|
|
221
|
+
--parameter '{"key": "api_token", "dataType": "String", "description": "Configuration that is sensitive.", "isRequired": true, "type": "config", "fromSecret": true, "value": "example-fake-secret-token-xxxxx"}' \
|
|
222
|
+
--automatic-publish 0
|
|
223
|
+
|
|
224
|
+
### Get Tool Information
|
|
225
|
+
|
|
226
|
+
Retrieve details for a specific tool.
|
|
227
|
+
|
|
228
|
+
.. code-block:: bash
|
|
229
|
+
|
|
230
|
+
geai ai-lab get-tool \
|
|
231
|
+
--project-id "$PROJECT_ID" \
|
|
232
|
+
--tool-id "66666666-6666-6666-6666-666666666666"
|
|
233
|
+
|
|
234
|
+
**Example Output**:
|
|
235
|
+
|
|
236
|
+
.. code-block:: text
|
|
237
|
+
|
|
238
|
+
Name: gdrive_create_docs_post
|
|
239
|
+
ID: 66666666-6666-6666-6666-666666666666
|
|
240
|
+
Description: Create a new Google Docs document.
|
|
241
|
+
|
|
242
|
+
### Update a Tool
|
|
243
|
+
|
|
244
|
+
Update an API-based tool with OpenAPI specification.
|
|
245
|
+
|
|
246
|
+
.. code-block:: bash
|
|
247
|
+
|
|
248
|
+
geai ai-lab update-tool \
|
|
249
|
+
--project-id "$PROJECT_ID" \
|
|
250
|
+
--tool-id "66666666-6666-6666-6666-666666666666" \
|
|
251
|
+
--name "saia_models_get" \
|
|
252
|
+
--description "Get all LLM models" \
|
|
253
|
+
--scope "api" \
|
|
254
|
+
--parameter '{"key": "Authorization", "dataType": "String", "description": "token with which you are going to connect to SAIA", "isRequired": true, "type": "config", "fromSecret": false, "value": "Bearer example_fake_token_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"}' \
|
|
255
|
+
--open-api-json '{"openapi": "3.0.0", "info": {"title": "LLM Providers API", "version": "2.0.0", "description": "API to retrieve information about models provided by OpenAI."}, "servers": [{"url": "https://api.beta.saia.ai", "description": "Production Server"}], "paths": {"/v2/llm/providers/openai/models": {"get": {"summary": "Retrieve models from OpenAI", "operationId": "saia_models", "description": "Fetches a list of available models along with their properties and configurations.", "responses": {"200": {"description": "Successful response with a list of models.", "content": {"application/json": {"schema": {"type": "object", "properties": {"models": {"type": "array", "items": {"type": "object", "properties": {"contextWindow": {"type": "integer", "description": "Maximum context window size for the model."}, "fullName": {"type": "string", "description": "Full name of the model."}, "id": {"type": "string", "format": "uuid", "description": "Unique identifier of the model."}, "isCustom": {"type": "boolean", "description": "Indicates whether the model is custom."}, "maxOutputTokens": {"type": "integer", "description": "Maximum number of output tokens the model can generate."}, "name": {"type": "string", "description": "Name of the model."}, "priority": {"type": "integer", "description": "Priority level of the model."}, "properties": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string", "format": "uuid", "description": "Unique identifier for the property."}, "name": {"type": "string", "description": "Name of the property."}, "type": {"type": "string", "description": "Data type of the property (e.g., Boolean, String)."}, "value": {"type": "string", "description": "Value of the property."}}}}}, "type": {"type": "string", "description": "Type of the model (e.g., Chat)."}}}}}}}}}, "security": [{"bearerAuth": []}]}}}}' \
|
|
256
|
+
--automatic-publish 1
|
|
257
|
+
|
|
258
|
+
### Publish a Tool Revision
|
|
259
|
+
|
|
260
|
+
Publish a specific revision of a tool.
|
|
261
|
+
|
|
262
|
+
.. code-block:: bash
|
|
263
|
+
|
|
264
|
+
geai ai-lab publish-tool-revision \
|
|
265
|
+
--project-id "$PROJECT_ID" \
|
|
266
|
+
--tool-id "88888888-8888-8888-8888-888888888888" \
|
|
267
|
+
--revision "2"
|
|
268
|
+
|
|
269
|
+
### Get Tool Parameters
|
|
270
|
+
|
|
271
|
+
Retrieve parameters for a tool.
|
|
272
|
+
|
|
273
|
+
.. code-block:: bash
|
|
274
|
+
|
|
275
|
+
geai ai-lab get-parameter \
|
|
276
|
+
--project-id "$PROJECT_ID" \
|
|
277
|
+
--tool-public-name "sample_tool_V3" \
|
|
278
|
+
--revision "0" \
|
|
279
|
+
--version "0" \
|
|
280
|
+
--allow-drafts 1
|
|
281
|
+
|
|
282
|
+
**Example Output**:
|
|
283
|
+
|
|
284
|
+
.. code-block:: text
|
|
285
|
+
|
|
286
|
+
- Key: input, Description: some input that the tool needs HERE., Required: true
|
|
287
|
+
- Key: api_token, Description: API token for authentication, Required: true
|
|
288
|
+
|
|
289
|
+
### Set Tool Parameters
|
|
290
|
+
|
|
291
|
+
Update parameters for a tool.
|
|
292
|
+
|
|
293
|
+
.. code-block:: bash
|
|
294
|
+
|
|
295
|
+
geai ai-lab set-parameter \
|
|
296
|
+
--project-id "$PROJECT_ID" \
|
|
297
|
+
--tool-public-name "sample_tool_V3" \
|
|
298
|
+
--parameter '{"key": "input", "dataType": "String", "description": "some input that the tool needs HERE.", "isRequired": true}' \
|
|
299
|
+
--parameter '{"key": "api_token", "dataType": "String", "description": "API token for authentication", "isRequired": true, "type": "config", "fromSecret": true, "value": "example-fake-secret-token-xxxxx"}'
|
|
300
|
+
|
|
301
|
+
### Delete a Tool
|
|
302
|
+
|
|
303
|
+
Remove a tool from the project.
|
|
304
|
+
|
|
305
|
+
.. code-block:: bash
|
|
306
|
+
|
|
307
|
+
geai ai-lab delete-tool \
|
|
308
|
+
--project-id "$PROJECT_ID" \
|
|
309
|
+
--tool-id "88888888-8888-8888-8888-888888888888"
|
|
310
|
+
|
|
311
|
+
Managing Reasoning Strategies
|
|
312
|
+
-----------------------------
|
|
313
|
+
|
|
314
|
+
Reasoning strategies define how agents process information.
|
|
315
|
+
|
|
316
|
+
### List Reasoning Strategies
|
|
317
|
+
|
|
318
|
+
Retrieve a list of reasoning strategies.
|
|
319
|
+
|
|
320
|
+
.. code-block:: bash
|
|
321
|
+
|
|
322
|
+
geai ai-lab list-reasoning-strategies \
|
|
323
|
+
--start "0" \
|
|
324
|
+
--count "50" \
|
|
325
|
+
--allow-external 1 \
|
|
326
|
+
--access-scope "public"
|
|
327
|
+
|
|
328
|
+
**Example Output**:
|
|
329
|
+
|
|
330
|
+
.. code-block:: text
|
|
331
|
+
|
|
332
|
+
- Name: RSName2, Access Scope: public
|
|
333
|
+
- Name: test1, Access Scope: public
|
|
334
|
+
|
|
335
|
+
### Create a Reasoning Strategy
|
|
336
|
+
|
|
337
|
+
Create a reasoning strategy with localized descriptions.
|
|
338
|
+
|
|
339
|
+
.. code-block:: bash
|
|
340
|
+
|
|
341
|
+
geai ai-lab create-reasoning-strategy \
|
|
342
|
+
--project-id "$PROJECT_ID" \
|
|
343
|
+
--name "RSName2" \
|
|
344
|
+
--system-prompt "Let's think step by step." \
|
|
345
|
+
--access-scope "private" \
|
|
346
|
+
--type "addendum" \
|
|
347
|
+
--localized-description '{"language": "spanish", "description": "RSName spanish description"}' \
|
|
348
|
+
--localized-description '{"language": "english", "description": "RSName english description"}' \
|
|
349
|
+
--localized-description '{"language": "japanese", "description": "RSName japanese description"}' \
|
|
350
|
+
--automatic-publish 1
|
|
351
|
+
|
|
352
|
+
### Update a Reasoning Strategy
|
|
353
|
+
|
|
354
|
+
Update an existing reasoning strategy.
|
|
355
|
+
|
|
356
|
+
.. code-block:: bash
|
|
357
|
+
|
|
358
|
+
geai ai-lab update-reasoning-strategy \
|
|
359
|
+
--project-id "$PROJECT_ID" \
|
|
360
|
+
--reasoning-strategy-id "aaaabbbb-cccc-dddd-eeee-ffffffffffff" \
|
|
361
|
+
--name "test1" \
|
|
362
|
+
--system-prompt "Let's think step by step." \
|
|
363
|
+
--access-scope "private" \
|
|
364
|
+
--type "addendum" \
|
|
365
|
+
--automatic-publish 0 \
|
|
366
|
+
--upsert 1
|
|
367
|
+
|
|
368
|
+
### Get a Reasoning Strategy
|
|
369
|
+
|
|
370
|
+
Retrieve details for a specific reasoning strategy.
|
|
371
|
+
|
|
372
|
+
.. code-block:: bash
|
|
373
|
+
|
|
374
|
+
geai ai-lab get-reasoning-strategy \
|
|
375
|
+
--project-id "$PROJECT_ID" \
|
|
376
|
+
--reasoning-strategy-name "test1"
|
|
377
|
+
|
|
378
|
+
**Example Output**:
|
|
379
|
+
|
|
380
|
+
.. code-block:: text
|
|
381
|
+
|
|
382
|
+
Name: test1
|
|
383
|
+
System Prompt: Let's think step by step.
|
|
384
|
+
Access Scope: private
|
|
385
|
+
|
|
386
|
+
Managing Processes
|
|
387
|
+
------------------
|
|
388
|
+
|
|
389
|
+
Processes define workflows involving agents, tasks, and events.
|
|
390
|
+
|
|
391
|
+
### Create a Process
|
|
392
|
+
|
|
393
|
+
Create a process with agentic activities and signals.
|
|
394
|
+
|
|
395
|
+
.. code-block:: bash
|
|
396
|
+
|
|
397
|
+
geai ai-lab create-process \
|
|
398
|
+
--project-id "$PROJECT_ID" \
|
|
399
|
+
--key "product_def" \
|
|
400
|
+
--name "Basic Process V4" \
|
|
401
|
+
--description "This is a sample process" \
|
|
402
|
+
--kb '{"name": "basic-sample", "artifactTypeName": ["sample-artifact"]}' \
|
|
403
|
+
--agentic-activity '{"key": "activityOne", "name": "First Step", "taskName": "basic-task", "agentName": "sample-translator", "agentRevisionId": 0}' \
|
|
404
|
+
--artifact-signal '{"key": "artifact.upload.1", "name": "artifact.upload", "handlingType": "C", "artifactTypeName": ["sample-artifact"]}' \
|
|
405
|
+
--user-signal '{"key": "signal_done", "name": "process-completed"}' \
|
|
406
|
+
--start-event '{"key": "artifact.upload.1", "name": "artifact.upload"}' \
|
|
407
|
+
--end-event '{"key": "end", "name": "Done"}' \
|
|
408
|
+
--sequence-flow '{"key": "step1", "sourceKey": "artifact.upload.1", "targetKey": "activityOne"}' \
|
|
409
|
+
--sequence-flow '{"key": "step2", "sourceKey": "activityOne", "targetKey": "signal_done"}' \
|
|
410
|
+
--sequence-flow '{"key": "stepEnd", "sourceKey": "signal_done", "targetKey": "end"}' \
|
|
411
|
+
--automatic-publish 0
|
|
412
|
+
|
|
413
|
+
### Ensure Task Exists
|
|
414
|
+
|
|
415
|
+
Create a task required for the process.
|
|
416
|
+
|
|
417
|
+
.. code-block:: bash
|
|
418
|
+
|
|
419
|
+
geai ai-lab create-task \
|
|
420
|
+
--project-id "$PROJECT_ID" \
|
|
421
|
+
--name "basic-task" \
|
|
422
|
+
--description "Basic task for process" \
|
|
423
|
+
--title-template "Basic Task" \
|
|
424
|
+
--automatic-publish 1
|
|
425
|
+
|
|
426
|
+
### Update a Process
|
|
427
|
+
|
|
428
|
+
Update an existing process.
|
|
429
|
+
|
|
430
|
+
.. code-block:: bash
|
|
431
|
+
|
|
432
|
+
geai ai-lab update-process \
|
|
433
|
+
--project-id "$PROJECT_ID" \
|
|
434
|
+
--process-id "bbbbcccc-dddd-eeee-ffff-000000000000" \
|
|
435
|
+
--name "Basic Process V3" \
|
|
436
|
+
--kb '{"name": "basic-sample", "artifactTypeName": ["sample-artifact"]}' \
|
|
437
|
+
--agentic-activity '{"key": "activityOne", "name": "First Step", "taskName": "basic-task", "agentName": "sample-translator", "agentRevisionId": 0}' \
|
|
438
|
+
--automatic-publish 0 \
|
|
439
|
+
--upsert 0
|
|
440
|
+
|
|
441
|
+
### Get a Process
|
|
442
|
+
|
|
443
|
+
Retrieve process details by ID or name.
|
|
444
|
+
|
|
445
|
+
.. code-block:: bash
|
|
446
|
+
|
|
447
|
+
geai ai-lab get-process \
|
|
448
|
+
--project-id "$PROJECT_ID" \
|
|
449
|
+
--process-id "ccccddd-eeee-ffff-0000-111111111111" \
|
|
450
|
+
--revision "0" \
|
|
451
|
+
--version 0 \
|
|
452
|
+
--allow-drafts 1
|
|
453
|
+
|
|
454
|
+
**Example Output**:
|
|
455
|
+
|
|
456
|
+
.. code-block:: text
|
|
457
|
+
|
|
458
|
+
Name: Basic Process V4
|
|
459
|
+
ID: ccccddd-eeee-ffff-0000-111111111111
|
|
460
|
+
Description: This is a sample process
|
|
461
|
+
|
|
462
|
+
### List Processes
|
|
463
|
+
|
|
464
|
+
Retrieve a list of processes.
|
|
465
|
+
|
|
466
|
+
.. code-block:: bash
|
|
467
|
+
|
|
468
|
+
geai ai-lab list-processes \
|
|
469
|
+
--project-id "$PROJECT_ID" \
|
|
470
|
+
--start "0" \
|
|
471
|
+
--count "100" \
|
|
472
|
+
--allow-draft 1
|
|
473
|
+
|
|
474
|
+
**Example Output**:
|
|
475
|
+
|
|
476
|
+
.. code-block:: text
|
|
477
|
+
|
|
478
|
+
- Name: Basic Process V4, ID: ccccddd-eeee-ffff-0000-111111111111
|
|
479
|
+
- Name: Basic Process V3, ID: bbbbcccc-dddd-eeee-ffff-000000000000
|
|
480
|
+
|
|
481
|
+
### Publish a Process Revision
|
|
482
|
+
|
|
483
|
+
Publish a specific revision of a process.
|
|
484
|
+
|
|
485
|
+
.. code-block:: bash
|
|
486
|
+
|
|
487
|
+
geai ai-lab publish-process-revision \
|
|
488
|
+
--project-id "$PROJECT_ID" \
|
|
489
|
+
--process-id "ddddeeee-ffff-0000-1111-222222222222" \
|
|
490
|
+
--revision "1"
|
|
491
|
+
|
|
492
|
+
### Delete a Process
|
|
493
|
+
|
|
494
|
+
Remove a process from the project.
|
|
495
|
+
|
|
496
|
+
.. code-block:: bash
|
|
497
|
+
|
|
498
|
+
geai ai-lab delete-process \
|
|
499
|
+
--project-id "$PROJECT_ID" \
|
|
500
|
+
--process-id "ccccddd-eeee-ffff-0000-111111111111"
|
|
501
|
+
|
|
502
|
+
Managing Tasks
|
|
503
|
+
--------------
|
|
504
|
+
|
|
505
|
+
Tasks define specific actions within processes.
|
|
506
|
+
|
|
507
|
+
### Create a Task
|
|
508
|
+
|
|
509
|
+
Create a task with minimal configuration.
|
|
510
|
+
|
|
511
|
+
.. code-block:: bash
|
|
512
|
+
|
|
513
|
+
geai ai-lab create-task \
|
|
514
|
+
--project-id "$PROJECT_ID" \
|
|
515
|
+
--name "Sample v2" \
|
|
516
|
+
--description "A simple task that requires no tools and defines no prompt" \
|
|
517
|
+
--title-template "Sample Task" \
|
|
518
|
+
--automatic-publish 0
|
|
519
|
+
|
|
520
|
+
### List Tasks
|
|
521
|
+
|
|
522
|
+
Retrieve a list of tasks.
|
|
523
|
+
|
|
524
|
+
.. code-block:: bash
|
|
525
|
+
|
|
526
|
+
geai ai-lab list-tasks \
|
|
527
|
+
--project-id "$PROJECT_ID" \
|
|
528
|
+
--start "0" \
|
|
529
|
+
--count "50" \
|
|
530
|
+
--allow-drafts 1
|
|
531
|
+
|
|
532
|
+
**Example Output**:
|
|
533
|
+
|
|
534
|
+
.. code-block:: text
|
|
535
|
+
|
|
536
|
+
- Name: Sample v2, ID: eeeeffff-0000-1111-2222-333333333333
|
|
537
|
+
- Name: basic-task, ID: <task-id>
|
|
538
|
+
|
|
539
|
+
### Get a Task
|
|
540
|
+
|
|
541
|
+
Retrieve details for a specific task.
|
|
542
|
+
|
|
543
|
+
.. code-block:: bash
|
|
544
|
+
|
|
545
|
+
geai ai-lab get-task \
|
|
546
|
+
--project-id "$PROJECT_ID" \
|
|
547
|
+
--task-id "eeeeffff-0000-1111-2222-333333333333"
|
|
548
|
+
|
|
549
|
+
**Example Output**:
|
|
550
|
+
|
|
551
|
+
.. code-block:: text
|
|
552
|
+
|
|
553
|
+
Name: Sample v2
|
|
554
|
+
ID: eeeeffff-0000-1111-2222-333333333333
|
|
555
|
+
Description: A simple task that requires no tools and defines no prompt
|
|
556
|
+
|
|
557
|
+
### Update a Task
|
|
558
|
+
|
|
559
|
+
Update an existing task.
|
|
560
|
+
|
|
561
|
+
.. code-block:: bash
|
|
562
|
+
|
|
563
|
+
geai ai-lab update-task \
|
|
564
|
+
--project-id "$PROJECT_ID" \
|
|
565
|
+
--task-id "eeeeffff-0000-1111-2222-333333333333" \
|
|
566
|
+
--name "Sample v2 Updated" \
|
|
567
|
+
--description "Updated description" \
|
|
568
|
+
--title-template "Updated Sample Task" \
|
|
569
|
+
--automatic-publish 1 \
|
|
570
|
+
--upsert 0
|
|
571
|
+
|
|
572
|
+
### Publish a Task Revision
|
|
573
|
+
|
|
574
|
+
Publish a specific revision of a task.
|
|
575
|
+
|
|
576
|
+
.. code-block:: bash
|
|
577
|
+
|
|
578
|
+
geai ai-lab publish-task-revision \
|
|
579
|
+
--project-id "$PROJECT_ID" \
|
|
580
|
+
--task-id "eeeeffff-0000-1111-2222-333333333333" \
|
|
581
|
+
--revision "1"
|
|
582
|
+
|
|
583
|
+
### Delete a Task
|
|
584
|
+
|
|
585
|
+
Remove a task from the project.
|
|
586
|
+
|
|
587
|
+
.. code-block:: bash
|
|
588
|
+
|
|
589
|
+
geai ai-lab delete-task \
|
|
590
|
+
--project-id "$PROJECT_ID" \
|
|
591
|
+
--task-id "eeeeffff-0000-1111-2222-333333333333"
|
|
592
|
+
|
|
593
|
+
Managing Process Instances
|
|
594
|
+
--------------------------
|
|
595
|
+
|
|
596
|
+
Process instances represent running workflows.
|
|
597
|
+
|
|
598
|
+
### Start a Process Instance
|
|
599
|
+
|
|
600
|
+
Start a new instance of a process.
|
|
601
|
+
|
|
602
|
+
.. code-block:: bash
|
|
603
|
+
|
|
604
|
+
geai ai-lab start-instance \
|
|
605
|
+
--project-id "$PROJECT_ID" \
|
|
606
|
+
--process-name "Basic Process V2" \
|
|
607
|
+
--subject "should we talk about the weather?" \
|
|
608
|
+
--variables '[{"key": "location", "value": "Paris"}]'
|
|
609
|
+
|
|
610
|
+
**Example Output**:
|
|
611
|
+
|
|
612
|
+
.. code-block:: text
|
|
613
|
+
|
|
614
|
+
Instance ID: <instance-id>
|
|
615
|
+
Status: active
|
|
616
|
+
|
|
617
|
+
### List Process Instances
|
|
618
|
+
|
|
619
|
+
Retrieve a list of process instances.
|
|
620
|
+
|
|
621
|
+
.. code-block:: bash
|
|
622
|
+
|
|
623
|
+
geai ai-lab list-processes-instances \
|
|
624
|
+
--project-id "$PROJECT_ID" \
|
|
625
|
+
--process-id "ccccddd-eeee-ffff-0000-111111111111" \
|
|
626
|
+
--is-active 1 \
|
|
627
|
+
--start "0" \
|
|
628
|
+
--count "10"
|
|
629
|
+
|
|
630
|
+
**Example Output**:
|
|
631
|
+
|
|
632
|
+
.. code-block:: text
|
|
633
|
+
|
|
634
|
+
- Instance ID: <instance-id>, Status: active, Subject: should we talk about the weather?
|
|
635
|
+
|
|
636
|
+
### Get a Process Instance
|
|
637
|
+
|
|
638
|
+
Retrieve details for a specific instance.
|
|
639
|
+
|
|
640
|
+
.. code-block:: bash
|
|
641
|
+
|
|
642
|
+
geai ai-lab get-instance \
|
|
643
|
+
--project-id "$PROJECT_ID" \
|
|
644
|
+
--instance-id "<instance-id>"
|
|
645
|
+
|
|
646
|
+
**Example Output**:
|
|
647
|
+
|
|
648
|
+
.. code-block:: text
|
|
649
|
+
|
|
650
|
+
Instance ID: <instance-id>
|
|
651
|
+
Process: Basic Process V2
|
|
652
|
+
Subject: should we talk about the weather?
|
|
653
|
+
|
|
654
|
+
### Get Instance History
|
|
655
|
+
|
|
656
|
+
Retrieve the history of a process instance.
|
|
657
|
+
|
|
658
|
+
.. code-block:: bash
|
|
659
|
+
|
|
660
|
+
geai ai-lab get-instance-history \
|
|
661
|
+
--project-id "$PROJECT_ID" \
|
|
662
|
+
--instance-id "<instance-id>"
|
|
663
|
+
|
|
664
|
+
**Example Output**:
|
|
665
|
+
|
|
666
|
+
.. code-block:: text
|
|
667
|
+
|
|
668
|
+
- Event: Started, Timestamp: 2025-04-15T10:00:00Z
|
|
669
|
+
- Event: Artifact Uploaded, Timestamp: 2025-04-15T10:01:00Z
|
|
670
|
+
|
|
671
|
+
### Send a User Signal
|
|
672
|
+
|
|
673
|
+
Send a signal to a running process instance.
|
|
674
|
+
|
|
675
|
+
.. code-block:: bash
|
|
676
|
+
|
|
677
|
+
geai ai-lab send-user-signal \
|
|
678
|
+
--project-id "$PROJECT_ID" \
|
|
679
|
+
--instance-id "<instance-id>" \
|
|
680
|
+
--signal-name "approval"
|
|
681
|
+
|
|
682
|
+
### Abort a Process Instance
|
|
683
|
+
|
|
684
|
+
Stop a running process instance.
|
|
685
|
+
|
|
686
|
+
.. code-block:: bash
|
|
687
|
+
|
|
688
|
+
geai ai-lab abort-instance \
|
|
689
|
+
--project-id "$PROJECT_ID" \
|
|
690
|
+
--instance-id "<instance-id>"
|
|
691
|
+
|
|
692
|
+
Complete Example Workflow
|
|
693
|
+
-------------------------
|
|
694
|
+
|
|
695
|
+
This example demonstrates creating an agent, a task, a process, and starting an instance.
|
|
696
|
+
|
|
697
|
+
1. **Create an Agent**:
|
|
698
|
+
|
|
699
|
+
.. code-block:: bash
|
|
700
|
+
|
|
701
|
+
geai ai-lab create-agent \
|
|
702
|
+
--project-id "$PROJECT_ID" \
|
|
703
|
+
--name "sample-translator" \
|
|
704
|
+
--description "Translator agent for processes" \
|
|
705
|
+
--access-scope "public" \
|
|
706
|
+
--automatic-publish 1
|
|
707
|
+
|
|
708
|
+
2. **Create a Task**:
|
|
709
|
+
|
|
710
|
+
.. code-block:: bash
|
|
711
|
+
|
|
712
|
+
geai ai-lab create-task \
|
|
713
|
+
--project-id "$PROJECT_ID" \
|
|
714
|
+
--name "basic-task" \
|
|
715
|
+
--description "Basic task for process" \
|
|
716
|
+
--title-template "Basic Task" \
|
|
717
|
+
--automatic-publish 1
|
|
718
|
+
|
|
719
|
+
3. **Create a Process**:
|
|
720
|
+
|
|
721
|
+
.. code-block:: bash
|
|
722
|
+
|
|
723
|
+
geai ai-lab create-process \
|
|
724
|
+
--project-id "$PROJECT_ID" \
|
|
725
|
+
--key "product_def" \
|
|
726
|
+
--name "Basic Process V4" \
|
|
727
|
+
--description "This is a sample process" \
|
|
728
|
+
--kb '{"name": "basic-sample", "artifactTypeName": ["sample-artifact"]}' \
|
|
729
|
+
--agentic-activity '{"key": "activityOne", "name": "First Step", "taskName": "basic-task", "agentName": "sample-translator", "agentRevisionId": 0}' \
|
|
730
|
+
--artifact-signal '{"key": "artifact.upload.1", "name": "artifact.upload", "handlingType": "C", "artifactTypeName": ["sample-artifact"]}' \
|
|
731
|
+
--user-signal '{"key": "signal_done", "name": "process-completed"}' \
|
|
732
|
+
--start-event '{"key": "artifact.upload.1", "name": "artifact.upload"}' \
|
|
733
|
+
--end-event '{"key": "end", "name": "Done"}' \
|
|
734
|
+
--sequence-flow '{"key": "step1", "sourceKey": "artifact.upload.1", "targetKey": "activityOne"}' \
|
|
735
|
+
--sequence-flow '{"key": "step2", "sourceKey": "activityOne", "targetKey": "signal_done"}' \
|
|
736
|
+
--sequence-flow '{"key": "stepEnd", "sourceKey": "signal_done", "targetKey": "end"}' \
|
|
737
|
+
--automatic-publish 1
|
|
738
|
+
|
|
739
|
+
4. **Start a Process Instance**:
|
|
740
|
+
|
|
741
|
+
.. code-block:: bash
|
|
742
|
+
|
|
743
|
+
geai ai-lab start-instance \
|
|
744
|
+
--project-id "$PROJECT_ID" \
|
|
745
|
+
--process-name "Basic Process V4" \
|
|
746
|
+
--subject "should we talk about the weather?" \
|
|
747
|
+
--variables '[{"key": "location", "value": "Paris"}]'
|