veadk-python 0.2.25__tar.gz → 0.2.27__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.
- {veadk_python-0.2.25/veadk_python.egg-info → veadk_python-0.2.27}/PKG-INFO +1 -1
- {veadk_python-0.2.25 → veadk_python-0.2.27}/pyproject.toml +1 -1
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/ark_veauth.py +6 -2
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_deploy.py +9 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_init.py +22 -10
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/ve_faas.py +3 -2
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/identity_client.py +45 -70
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/vikingdb_knowledge_backend.py +3 -3
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/misc.py +11 -10
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/version.py +1 -1
- {veadk_python-0.2.25 → veadk_python-0.2.27/veadk_python.egg-info}/PKG-INFO +1 -1
- {veadk_python-0.2.25 → veadk_python-0.2.27}/LICENSE +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/README.md +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/setup.cfg +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_cloud.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_evaluator.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_knowledgebase.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_long_term_memory.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_misc.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_multiple_agents.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_runner.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_runtime_data_collecting.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_short_term_memory.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_tracing.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_a2a_middlewares.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_auth_config.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_function_tool.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_mcp_tool.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_mcp_toolset.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/agent_card.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/remote_ve_agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/utils/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/utils/agent_to_a2a.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_a2a_server.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_agent_executor.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_middlewares.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_task_store.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agent_builder.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agents/loop_agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agents/parallel_agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agents/sequential_agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/base_auth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/ve_credential_service.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/apmplus_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/base_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/cozeloop_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/opensearch_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/postgresql_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/prompt_pilot_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/speech_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/utils.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/vesearch_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/viking_mem0_veauth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_clean.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_create.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_eval.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_kb.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_pipeline.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_prompt.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_update.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_uploadevalset.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_web.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cloud/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cloud/cloud_agent_engine.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cloud/cloud_app.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/config.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/auth_configs.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/database_configs.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/model_configs.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/tool_configs.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/tracing_configs.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/consts.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/adk_evaluator/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/adk_evaluator/adk_evaluator.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/base_evaluator.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/deepeval_evaluator/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/deepeval_evaluator/deepeval_evaluator.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/eval_set_file_loader.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/eval_set_recorder.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/types.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/utils/prometheus.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_apig/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_apig/ve_apig.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_apig/ve_apig_utils.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_code_pipeline/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_code_pipeline/ve_code_pipeline.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cozeloop/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cozeloop/ve_cozeloop.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cr/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cr/ve_cr.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/cookiecutter.json +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/clean.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/config.yaml.example +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/deploy.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/app.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/requirements.txt +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/run.sh +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/{{ cookiecutter.app_name }}/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/{{ cookiecutter.app_name }}/agent.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/ve_faas_utils.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/cookiecutter.json +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/clean.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/config.yaml.example +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/deploy.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/Dockerfile +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/app.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/init_db.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/models.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/requirements.txt +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/run.sh +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/static/css/style.css +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/static/js/admin.js +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/dashboard.html +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/edit_post.html +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/login.html +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/posts.html +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/base.html +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/index.html +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/post.html +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/auth_config.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/auth_mixins.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/auth_processor.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/function_tool.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/mcp_tool.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/mcp_toolset.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/models.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/token_manager.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/utils.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_prompt_pilot/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_prompt_pilot/ve_prompt_pilot.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tls/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tls/utils.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tls/ve_tls.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tos/ve_tos.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_viking_db_memory/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_viking_db_memory/ve_viking_db_memory.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/base_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/in_memory_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/opensearch_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/redis_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/utils.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/entry.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/knowledgebase.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/base_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/in_memory_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/mem0_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/opensearch_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/redis_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/vikingdb_memory_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/base_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/mysql_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/postgresql_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/sqlite_backend.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_processor.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/processors/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/processors/base_run_processor.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/agent_default_prompt.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/prompt_evaluator.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/prompt_memory_processor.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/prompt_optimization.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/runner.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/agent_authorization.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/generate_image.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/image_edit.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/image_generate.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/lark.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/las.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/link_reader.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/llm_shield.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/load_knowledgebase.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/mcp_router.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/run_code.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/tts.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/vesearch.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/video_generate.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/web_scraper.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/web_search.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/demo_tools.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/load_knowledgebase_tool.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/browser_sandbox.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/code_sandbox.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/computer_sandbox.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/base_tracer.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/attributes.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/common_attributes_extractors.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/llm_attributes_extractors.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/tool_attributes_extractors.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/types.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/apmplus_exporter.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/base_exporter.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/cozeloop_exporter.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/inmemory_exporter.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/tls_exporter.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/opentelemetry_tracer.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/telemetry.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/types.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/__init__.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/audio_manager.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/auth.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/logger.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/mcp_utils.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/patches.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/volcengine_sign.py +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/SOURCES.txt +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/dependency_links.txt +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/entry_points.txt +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/requires.txt +0 -0
- {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: veadk-python
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.27
|
|
4
4
|
Summary: Volcengine agent development kit, integrations with Volcengine cloud services.
|
|
5
5
|
Author-email: Yaozheng Fang <fangyozheng@gmail.com>, Guodong Li <cu.eric.lee@gmail.com>, Zhi Han <sliverydayday@gmail.com>, Meng Wang <mengwangwm@gmail.com>
|
|
6
6
|
License: Apache License
|
|
@@ -36,7 +36,7 @@ def get_ark_token(region: str = "cn-beijing") -> str:
|
|
|
36
36
|
session_token = cred.session_token
|
|
37
37
|
|
|
38
38
|
res = ve_request(
|
|
39
|
-
request_body={"ProjectName": "default", "Filter": {}},
|
|
39
|
+
request_body={"ProjectName": "default", "Filter": {"AllowAll": True}},
|
|
40
40
|
header={"X-Security-Token": session_token},
|
|
41
41
|
action="ListApiKeys",
|
|
42
42
|
ak=access_key,
|
|
@@ -48,6 +48,10 @@ def get_ark_token(region: str = "cn-beijing") -> str:
|
|
|
48
48
|
)
|
|
49
49
|
try:
|
|
50
50
|
first_api_key_id = res["Result"]["Items"][0]["Id"]
|
|
51
|
+
logger.warning("By default, VeADK fetches the first API Key in the list.")
|
|
52
|
+
logger.info(
|
|
53
|
+
f"Try to fetch ARK API Key with id={first_api_key_id}, name={res['Result']['Items'][0]['Name']}"
|
|
54
|
+
)
|
|
51
55
|
except KeyError:
|
|
52
56
|
raise ValueError(f"Failed to get ARK api key list: {res}")
|
|
53
57
|
|
|
@@ -65,7 +69,7 @@ def get_ark_token(region: str = "cn-beijing") -> str:
|
|
|
65
69
|
)
|
|
66
70
|
try:
|
|
67
71
|
api_key = res["Result"]["ApiKey"]
|
|
68
|
-
logger.info("Successfully
|
|
72
|
+
logger.info(f"Successfully fetched ARK API Key (starts with {api_key[:8]}).")
|
|
69
73
|
return api_key
|
|
70
74
|
except KeyError:
|
|
71
75
|
raise ValueError(f"Failed to get ARK api key: {res}")
|
|
@@ -67,6 +67,7 @@ TEMP_PATH = "/tmp"
|
|
|
67
67
|
help="Expected Volcengine Identity client name",
|
|
68
68
|
)
|
|
69
69
|
@click.option("--path", default=".", help="Local project path")
|
|
70
|
+
@click.option("--iam-role", default=None, help="iam role for the vefaas function")
|
|
70
71
|
def deploy(
|
|
71
72
|
volcengine_access_key: str,
|
|
72
73
|
volcengine_secret_key: str,
|
|
@@ -80,6 +81,7 @@ def deploy(
|
|
|
80
81
|
user_pool_name: str,
|
|
81
82
|
client_name: str,
|
|
82
83
|
path: str,
|
|
84
|
+
iam_role: str,
|
|
83
85
|
) -> None:
|
|
84
86
|
"""Deploy a user project to Volcengine FaaS application.
|
|
85
87
|
|
|
@@ -131,6 +133,8 @@ def deploy(
|
|
|
131
133
|
from veadk.config import getenv
|
|
132
134
|
from veadk.utils.logger import get_logger
|
|
133
135
|
from veadk.utils.misc import formatted_timestamp, load_module_from_file
|
|
136
|
+
import os
|
|
137
|
+
from veadk.config import veadk_environments
|
|
134
138
|
|
|
135
139
|
logger = get_logger(__name__)
|
|
136
140
|
|
|
@@ -138,6 +142,11 @@ def deploy(
|
|
|
138
142
|
volcengine_access_key = getenv("VOLCENGINE_ACCESS_KEY")
|
|
139
143
|
if not volcengine_secret_key:
|
|
140
144
|
volcengine_secret_key = getenv("VOLCENGINE_SECRET_KEY")
|
|
145
|
+
if not iam_role:
|
|
146
|
+
iam_role = getenv("IAM_ROLE", None, allow_false_values=True)
|
|
147
|
+
else:
|
|
148
|
+
os.environ["IAM_ROLE"] = iam_role
|
|
149
|
+
veadk_environments["IAM_ROLE"] = iam_role
|
|
141
150
|
|
|
142
151
|
user_proj_abs_path = Path(path).resolve()
|
|
143
152
|
template_dir_path = Path(vefaas.__file__).parent / "template"
|
|
@@ -63,16 +63,28 @@ def _render_prompts() -> dict[str, Any]:
|
|
|
63
63
|
)
|
|
64
64
|
use_adk_web = deploy_mode == "2"
|
|
65
65
|
|
|
66
|
-
auth_method_options = {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
66
|
+
auth_method_options = {}
|
|
67
|
+
auth_methods = {}
|
|
68
|
+
if use_adk_web:
|
|
69
|
+
auth_method_options = {
|
|
70
|
+
"1": "None",
|
|
71
|
+
"2": "OAuth2",
|
|
72
|
+
}
|
|
73
|
+
auth_methods = {
|
|
74
|
+
"1": "none",
|
|
75
|
+
"2": "oauth2",
|
|
76
|
+
}
|
|
77
|
+
else:
|
|
78
|
+
auth_method_options = {
|
|
79
|
+
"1": "None",
|
|
80
|
+
"2": "API key",
|
|
81
|
+
"3": "OAuth2",
|
|
82
|
+
}
|
|
83
|
+
auth_methods = {
|
|
84
|
+
"1": "none",
|
|
85
|
+
"2": "api-key",
|
|
86
|
+
"3": "oauth2",
|
|
87
|
+
}
|
|
76
88
|
|
|
77
89
|
click.echo("Choose an authentication method:")
|
|
78
90
|
for key, value in auth_method_options.items():
|
|
@@ -32,7 +32,7 @@ from veadk.integrations.ve_faas.ve_faas_utils import (
|
|
|
32
32
|
zip_and_encode_folder,
|
|
33
33
|
)
|
|
34
34
|
from veadk.utils.logger import get_logger
|
|
35
|
-
from veadk.utils.misc import formatted_timestamp
|
|
35
|
+
from veadk.utils.misc import formatted_timestamp, getenv
|
|
36
36
|
from veadk.utils.volcengine_sign import ve_request
|
|
37
37
|
|
|
38
38
|
logger = get_logger(__name__)
|
|
@@ -114,10 +114,11 @@ class VeFaaS:
|
|
|
114
114
|
name=function_name,
|
|
115
115
|
description="Created by VeADK (Volcengine Agent Development Kit)",
|
|
116
116
|
tags=[TagForCreateFunctionInput(key="provider", value="veadk")],
|
|
117
|
-
runtime="native-python3.
|
|
117
|
+
runtime="native-python3.12/v1",
|
|
118
118
|
request_timeout=1800,
|
|
119
119
|
envs=envs,
|
|
120
120
|
memory_mb=2048,
|
|
121
|
+
role=getenv("IAM_ROLE", None, allow_false_values=True),
|
|
121
122
|
)
|
|
122
123
|
)
|
|
123
124
|
|
{veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/identity_client.py
RENAMED
|
@@ -56,67 +56,56 @@ def refresh_credentials(func):
|
|
|
56
56
|
"""
|
|
57
57
|
import asyncio
|
|
58
58
|
|
|
59
|
+
def _try_get_vefaas_credentials():
|
|
60
|
+
"""Attempt to retrieve credentials from VeFaaS IAM."""
|
|
61
|
+
try:
|
|
62
|
+
ve_iam_cred = get_credential_from_vefaas_iam()
|
|
63
|
+
return (
|
|
64
|
+
ve_iam_cred.access_key_id,
|
|
65
|
+
ve_iam_cred.secret_access_key,
|
|
66
|
+
ve_iam_cred.session_token,
|
|
67
|
+
)
|
|
68
|
+
except FileNotFoundError:
|
|
69
|
+
pass # VeFaaS IAM file not found, ignore
|
|
70
|
+
except Exception as e:
|
|
71
|
+
logger.warning(f"Failed to retrieve credentials from VeFaaS IAM: {e}")
|
|
72
|
+
return None
|
|
73
|
+
|
|
59
74
|
@wraps(func)
|
|
60
75
|
def _refresh_creds(self: IdentityClient):
|
|
61
76
|
"""Helper to refresh credentials."""
|
|
62
|
-
#
|
|
77
|
+
# Step 1: Get initial credentials from constructor or environment variables
|
|
63
78
|
ak = self._initial_access_key or os.getenv("VOLCENGINE_ACCESS_KEY", "")
|
|
64
79
|
sk = self._initial_secret_key or os.getenv("VOLCENGINE_SECRET_KEY", "")
|
|
65
80
|
session_token = self._initial_session_token or os.getenv(
|
|
66
81
|
"VOLCENGINE_SESSION_TOKEN", ""
|
|
67
82
|
)
|
|
68
83
|
|
|
69
|
-
#
|
|
70
|
-
|
|
71
|
-
"
|
|
72
|
-
|
|
73
|
-
logger.info("Attempting to fetch credentials from VeFaaS IAM...")
|
|
74
|
-
ve_iam_cred = get_credential_from_vefaas_iam()
|
|
75
|
-
return (
|
|
76
|
-
ve_iam_cred.access_key_id,
|
|
77
|
-
ve_iam_cred.secret_access_key,
|
|
78
|
-
ve_iam_cred.session_token,
|
|
79
|
-
)
|
|
80
|
-
except FileNotFoundError as e:
|
|
81
|
-
logger.warning(f"VeFaaS IAM credentials not available: {e}")
|
|
82
|
-
except Exception as e:
|
|
83
|
-
logger.warning(f"Failed to retrieve credentials from VeFaaS IAM: {e}")
|
|
84
|
-
return None
|
|
84
|
+
# Step 2: Clear expired session_token
|
|
85
|
+
if self._is_sts_credential_expired():
|
|
86
|
+
logger.info("STS credentials expired, clearing...")
|
|
87
|
+
session_token = ""
|
|
85
88
|
|
|
86
|
-
#
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
)
|
|
91
|
-
credentials = try_get_vefaas_credentials()
|
|
92
|
-
if credentials:
|
|
89
|
+
# Step 3: Try VeFaaS IAM if no credentials or no session_token
|
|
90
|
+
# VeFaaS IAM provides complete credentials (ak, sk, session_token)
|
|
91
|
+
if not (ak and sk) or (ak and sk and not session_token):
|
|
92
|
+
if credentials := _try_get_vefaas_credentials():
|
|
93
93
|
ak, sk, session_token = credentials
|
|
94
94
|
|
|
95
|
-
#
|
|
95
|
+
# Step 4: If still no session_token, try AssumeRole
|
|
96
96
|
if ak and sk and not session_token:
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
97
|
+
if role_trn := self._get_iam_role_trn_from_vefaas_iam() or os.getenv(
|
|
98
|
+
"RUNTIME_IAM_ROLE_TRN", ""
|
|
99
|
+
):
|
|
100
|
+
try:
|
|
101
|
+
sts_cred = self._assume_role(ak, sk, role_trn)
|
|
102
|
+
ak = sts_cred.access_key_id
|
|
103
|
+
sk = sts_cred.secret_access_key
|
|
104
|
+
session_token = sts_cred.session_token
|
|
105
|
+
except Exception as e:
|
|
106
|
+
logger.warning(f"Failed to assume role: {e}")
|
|
107
107
|
|
|
108
|
-
|
|
109
|
-
try:
|
|
110
|
-
logger.info(f"Attempting AssumeRole with role: {role_trn}")
|
|
111
|
-
sts_credentials = self._assume_role(ak, sk, role_trn)
|
|
112
|
-
ak = sts_credentials.access_key_id
|
|
113
|
-
sk = sts_credentials.secret_access_key
|
|
114
|
-
session_token = sts_credentials.session_token
|
|
115
|
-
logger.info("Successfully obtained credentials via AssumeRole")
|
|
116
|
-
except Exception as e:
|
|
117
|
-
logger.warning(f"Failed to assume role: {e}")
|
|
118
|
-
|
|
119
|
-
# Update configuration with the credentials
|
|
108
|
+
# Step 5: Update configuration with the credentials
|
|
120
109
|
self._api_client.api_client.configuration.ak = ak
|
|
121
110
|
self._api_client.api_client.configuration.sk = sk
|
|
122
111
|
self._api_client.api_client.configuration.session_token = session_token
|
|
@@ -192,16 +181,9 @@ class IdentityClient:
|
|
|
192
181
|
self._sts_credential_expires_at: Optional[int] = None
|
|
193
182
|
|
|
194
183
|
def _get_iam_role_trn_from_vefaas_iam(self) -> Optional[str]:
|
|
195
|
-
logger.info(
|
|
196
|
-
f"Try to get IAM Role TRN from VeFaaS IAM file (path={VEFAAS_IAM_CRIDENTIAL_PATH})."
|
|
197
|
-
)
|
|
198
|
-
|
|
199
184
|
path = Path(VEFAAS_IAM_CRIDENTIAL_PATH)
|
|
200
185
|
|
|
201
186
|
if not path.exists():
|
|
202
|
-
logger.error(
|
|
203
|
-
f"Get IAM Role TRN from IAM file failed, and VeFaaS IAM file (path={VEFAAS_IAM_CRIDENTIAL_PATH}) not exists. Please check your configuration."
|
|
204
|
-
)
|
|
205
187
|
return None
|
|
206
188
|
|
|
207
189
|
with open(VEFAAS_IAM_CRIDENTIAL_PATH, "r") as f:
|
|
@@ -233,6 +215,9 @@ class IdentityClient:
|
|
|
233
215
|
) -> AssumeRoleCredential:
|
|
234
216
|
"""Execute AssumeRole to get STS temporary credentials.
|
|
235
217
|
|
|
218
|
+
This method performs the AssumeRole operation and caches the result.
|
|
219
|
+
Cache validation is handled by the caller (refresh_credentials decorator).
|
|
220
|
+
|
|
236
221
|
Args:
|
|
237
222
|
access_key: VolcEngine access key
|
|
238
223
|
secret_key: VolcEngine secret key
|
|
@@ -244,16 +229,9 @@ class IdentityClient:
|
|
|
244
229
|
Raises:
|
|
245
230
|
Exception: If AssumeRole fails
|
|
246
231
|
"""
|
|
247
|
-
# Check if the cached credentials are still valid
|
|
248
|
-
if (
|
|
249
|
-
self._cached_sts_credential is not None
|
|
250
|
-
and not self._is_sts_credential_expired()
|
|
251
|
-
):
|
|
252
|
-
logger.info("Using cached STS credentials")
|
|
253
|
-
return self._cached_sts_credential
|
|
254
|
-
|
|
255
232
|
logger.info(
|
|
256
|
-
"
|
|
233
|
+
f"Requesting new STS credentials for role: {role_trn}, "
|
|
234
|
+
f"session: {settings.veidentity.role_session_name}"
|
|
257
235
|
)
|
|
258
236
|
|
|
259
237
|
# Create STS client configuration
|
|
@@ -272,11 +250,7 @@ class IdentityClient:
|
|
|
272
250
|
role_session_name=settings.veidentity.role_session_name,
|
|
273
251
|
)
|
|
274
252
|
|
|
275
|
-
|
|
276
|
-
f"Executing AssumeRole for role: {role_trn}, "
|
|
277
|
-
f"session: {settings.veidentity.role_session_name}"
|
|
278
|
-
)
|
|
279
|
-
|
|
253
|
+
# Execute AssumeRole
|
|
280
254
|
response: volcenginesdksts.AssumeRoleResponse = sts_client.assume_role(
|
|
281
255
|
assume_role_request
|
|
282
256
|
)
|
|
@@ -298,18 +272,19 @@ class IdentityClient:
|
|
|
298
272
|
expires_at_timestamp = calendar.timegm(dt.timetuple())
|
|
299
273
|
except Exception as e:
|
|
300
274
|
logger.warning(f"Failed to parse STS credential expiration time: {e}")
|
|
301
|
-
#
|
|
275
|
+
# Default to 1 hour expiration
|
|
302
276
|
import time
|
|
303
277
|
|
|
304
278
|
expires_at_timestamp = int(time.time()) + 3600
|
|
305
279
|
|
|
280
|
+
# Create credential object
|
|
306
281
|
sts_credential = AssumeRoleCredential(
|
|
307
282
|
access_key_id=credentials.access_key_id,
|
|
308
283
|
secret_access_key=credentials.secret_access_key,
|
|
309
284
|
session_token=credentials.session_token,
|
|
310
285
|
)
|
|
311
286
|
|
|
312
|
-
#
|
|
287
|
+
# Cache credentials and expiration time
|
|
313
288
|
self._cached_sts_credential = sts_credential
|
|
314
289
|
self._sts_credential_expires_at = expires_at_timestamp
|
|
315
290
|
|
|
@@ -137,7 +137,7 @@ class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
|
|
|
137
137
|
"it must start with an English letter, contain only letters, numbers, and underscores, and have a length of 1-128."
|
|
138
138
|
)
|
|
139
139
|
|
|
140
|
-
def _get_tos_client(self) -> VeTOS:
|
|
140
|
+
def _get_tos_client(self, tos_bucket_name: str) -> VeTOS:
|
|
141
141
|
volcengine_access_key = self.volcengine_access_key
|
|
142
142
|
volcengine_secret_key = self.volcengine_secret_key
|
|
143
143
|
session_token = self.session_token
|
|
@@ -153,7 +153,7 @@ class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
|
|
|
153
153
|
sk=volcengine_secret_key,
|
|
154
154
|
session_token=session_token,
|
|
155
155
|
region=self.tos_config.region,
|
|
156
|
-
bucket_name=self.tos_config.bucket,
|
|
156
|
+
bucket_name=tos_bucket_name or self.tos_config.bucket,
|
|
157
157
|
)
|
|
158
158
|
|
|
159
159
|
@override
|
|
@@ -461,7 +461,7 @@ class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
|
|
|
461
461
|
metadata: dict | None = None,
|
|
462
462
|
) -> str:
|
|
463
463
|
# Here, we set the metadata via the TOS object, ref: https://www.volcengine.com/docs/84313/1254624
|
|
464
|
-
self._tos_client = self._get_tos_client()
|
|
464
|
+
self._tos_client = self._get_tos_client(tos_bucket_name)
|
|
465
465
|
|
|
466
466
|
self._tos_client.bucket_name = tos_bucket_name
|
|
467
467
|
coro = self._tos_client.upload(
|
|
@@ -137,19 +137,20 @@ def set_envs(config_yaml_path: str, env_from_dotenv: dict = None) -> tuple[dict,
|
|
|
137
137
|
config_dict = safe_load(yaml_file)
|
|
138
138
|
|
|
139
139
|
flatten_config_dict = flatten_dict(config_dict)
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
140
|
+
config_upper_map = {k.upper(): v for k, v in flatten_config_dict.items()}
|
|
141
|
+
all_keys = {k.upper() for k in flatten_config_dict.keys()} | set(
|
|
142
|
+
env_from_dotenv.keys() if env_from_dotenv else []
|
|
143
|
+
)
|
|
144
|
+
veadk_environments = {}
|
|
145
|
+
for k in all_keys:
|
|
146
|
+
if k in os.environ:
|
|
146
147
|
logger.info(
|
|
147
|
-
f"Environment variable {k} has been set
|
|
148
|
+
f"Environment variable {k} has been set, value in `config.yaml` will be ignored."
|
|
148
149
|
)
|
|
150
|
+
veadk_environments[k] = os.environ[k]
|
|
149
151
|
continue
|
|
150
|
-
veadk_environments[k] = str(
|
|
151
|
-
os.environ[k] = str(
|
|
152
|
-
|
|
152
|
+
veadk_environments[k] = str(config_upper_map.get(k))
|
|
153
|
+
os.environ[k] = str(config_upper_map.get(k))
|
|
153
154
|
return config_dict, veadk_environments
|
|
154
155
|
|
|
155
156
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: veadk-python
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.27
|
|
4
4
|
Summary: Volcengine agent development kit, integrations with Volcengine cloud services.
|
|
5
5
|
Author-email: Yaozheng Fang <fangyozheng@gmail.com>, Guodong Li <cu.eric.lee@gmail.com>, Zhi Han <sliverydayday@gmail.com>, Meng Wang <mengwangwm@gmail.com>
|
|
6
6
|
License: Apache License
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|