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.
Files changed (239) hide show
  1. {veadk_python-0.2.25/veadk_python.egg-info → veadk_python-0.2.27}/PKG-INFO +1 -1
  2. {veadk_python-0.2.25 → veadk_python-0.2.27}/pyproject.toml +1 -1
  3. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/ark_veauth.py +6 -2
  4. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_deploy.py +9 -0
  5. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_init.py +22 -10
  6. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/ve_faas.py +3 -2
  7. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/identity_client.py +45 -70
  8. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/vikingdb_knowledge_backend.py +3 -3
  9. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/misc.py +11 -10
  10. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/version.py +1 -1
  11. {veadk_python-0.2.25 → veadk_python-0.2.27/veadk_python.egg-info}/PKG-INFO +1 -1
  12. {veadk_python-0.2.25 → veadk_python-0.2.27}/LICENSE +0 -0
  13. {veadk_python-0.2.25 → veadk_python-0.2.27}/README.md +0 -0
  14. {veadk_python-0.2.25 → veadk_python-0.2.27}/setup.cfg +0 -0
  15. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_agent.py +0 -0
  16. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_cloud.py +0 -0
  17. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_evaluator.py +0 -0
  18. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_knowledgebase.py +0 -0
  19. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_long_term_memory.py +0 -0
  20. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_misc.py +0 -0
  21. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_multiple_agents.py +0 -0
  22. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_runner.py +0 -0
  23. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_runtime_data_collecting.py +0 -0
  24. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_short_term_memory.py +0 -0
  25. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_tracing.py +0 -0
  26. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_a2a_middlewares.py +0 -0
  27. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_auth_config.py +0 -0
  28. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_function_tool.py +0 -0
  29. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_mcp_tool.py +0 -0
  30. {veadk_python-0.2.25 → veadk_python-0.2.27}/tests/test_ve_identity_mcp_toolset.py +0 -0
  31. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/__init__.py +0 -0
  32. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/__init__.py +0 -0
  33. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/agent_card.py +0 -0
  34. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/remote_ve_agent.py +0 -0
  35. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/utils/__init__.py +0 -0
  36. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/utils/agent_to_a2a.py +0 -0
  37. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_a2a_server.py +0 -0
  38. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_agent_executor.py +0 -0
  39. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_middlewares.py +0 -0
  40. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/a2a/ve_task_store.py +0 -0
  41. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agent.py +0 -0
  42. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agent_builder.py +0 -0
  43. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agents/loop_agent.py +0 -0
  44. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agents/parallel_agent.py +0 -0
  45. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/agents/sequential_agent.py +0 -0
  46. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/__init__.py +0 -0
  47. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/base_auth.py +0 -0
  48. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/ve_credential_service.py +0 -0
  49. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/__init__.py +0 -0
  50. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/apmplus_veauth.py +0 -0
  51. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/base_veauth.py +0 -0
  52. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/cozeloop_veauth.py +0 -0
  53. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/opensearch_veauth.py +0 -0
  54. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/postgresql_veauth.py +0 -0
  55. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/prompt_pilot_veauth.py +0 -0
  56. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/speech_veauth.py +0 -0
  57. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/utils.py +0 -0
  58. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/vesearch_veauth.py +0 -0
  59. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/auth/veauth/viking_mem0_veauth.py +0 -0
  60. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/__init__.py +0 -0
  61. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli.py +0 -0
  62. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_clean.py +0 -0
  63. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_create.py +0 -0
  64. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_eval.py +0 -0
  65. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_kb.py +0 -0
  66. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_pipeline.py +0 -0
  67. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_prompt.py +0 -0
  68. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_update.py +0 -0
  69. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_uploadevalset.py +0 -0
  70. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cli/cli_web.py +0 -0
  71. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cloud/__init__.py +0 -0
  72. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cloud/cloud_agent_engine.py +0 -0
  73. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/cloud/cloud_app.py +0 -0
  74. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/config.py +0 -0
  75. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/__init__.py +0 -0
  76. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/auth_configs.py +0 -0
  77. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/database_configs.py +0 -0
  78. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/model_configs.py +0 -0
  79. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/tool_configs.py +0 -0
  80. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/configs/tracing_configs.py +0 -0
  81. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/consts.py +0 -0
  82. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/__init__.py +0 -0
  83. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/adk_evaluator/__init__.py +0 -0
  84. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/adk_evaluator/adk_evaluator.py +0 -0
  85. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/base_evaluator.py +0 -0
  86. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/deepeval_evaluator/__init__.py +0 -0
  87. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/deepeval_evaluator/deepeval_evaluator.py +0 -0
  88. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/eval_set_file_loader.py +0 -0
  89. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/eval_set_recorder.py +0 -0
  90. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/types.py +0 -0
  91. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/evaluation/utils/prometheus.py +0 -0
  92. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/__init__.py +0 -0
  93. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_apig/__init__.py +0 -0
  94. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_apig/ve_apig.py +0 -0
  95. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_apig/ve_apig_utils.py +0 -0
  96. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_code_pipeline/__init__.py +0 -0
  97. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_code_pipeline/ve_code_pipeline.py +0 -0
  98. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cozeloop/__init__.py +0 -0
  99. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cozeloop/ve_cozeloop.py +0 -0
  100. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cr/__init__.py +0 -0
  101. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_cr/ve_cr.py +0 -0
  102. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/__init__.py +0 -0
  103. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/cookiecutter.json +0 -0
  104. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/__init__.py +0 -0
  105. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/clean.py +0 -0
  106. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/config.yaml.example +0 -0
  107. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/deploy.py +0 -0
  108. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/__init__.py +0 -0
  109. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/agent.py +0 -0
  110. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/app.py +0 -0
  111. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/requirements.txt +0 -0
  112. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/run.sh +0 -0
  113. {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
  114. {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
  115. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/ve_faas_utils.py +0 -0
  116. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/cookiecutter.json +0 -0
  117. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/__init__.py +0 -0
  118. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/clean.py +0 -0
  119. {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
  120. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/deploy.py +0 -0
  121. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/Dockerfile +0 -0
  122. {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
  123. {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
  124. {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
  125. {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
  126. {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
  127. {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
  128. {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
  129. {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
  130. {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
  131. {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
  132. {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
  133. {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
  134. {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
  135. {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
  136. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/__init__.py +0 -0
  137. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/auth_config.py +0 -0
  138. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/auth_mixins.py +0 -0
  139. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/auth_processor.py +0 -0
  140. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/function_tool.py +0 -0
  141. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/mcp_tool.py +0 -0
  142. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/mcp_toolset.py +0 -0
  143. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/models.py +0 -0
  144. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/token_manager.py +0 -0
  145. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_identity/utils.py +0 -0
  146. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_prompt_pilot/__init__.py +0 -0
  147. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_prompt_pilot/ve_prompt_pilot.py +0 -0
  148. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tls/__init__.py +0 -0
  149. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tls/utils.py +0 -0
  150. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tls/ve_tls.py +0 -0
  151. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_tos/ve_tos.py +0 -0
  152. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_viking_db_memory/__init__.py +0 -0
  153. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/integrations/ve_viking_db_memory/ve_viking_db_memory.py +0 -0
  154. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/__init__.py +0 -0
  155. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/__init__.py +0 -0
  156. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/base_backend.py +0 -0
  157. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/in_memory_backend.py +0 -0
  158. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/opensearch_backend.py +0 -0
  159. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/redis_backend.py +0 -0
  160. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/backends/utils.py +0 -0
  161. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/entry.py +0 -0
  162. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/knowledgebase/knowledgebase.py +0 -0
  163. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/__init__.py +0 -0
  164. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory.py +0 -0
  165. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/__init__.py +0 -0
  166. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/base_backend.py +0 -0
  167. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/in_memory_backend.py +0 -0
  168. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/mem0_backend.py +0 -0
  169. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/opensearch_backend.py +0 -0
  170. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/redis_backend.py +0 -0
  171. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/long_term_memory_backends/vikingdb_memory_backend.py +0 -0
  172. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory.py +0 -0
  173. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/__init__.py +0 -0
  174. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/base_backend.py +0 -0
  175. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/mysql_backend.py +0 -0
  176. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/postgresql_backend.py +0 -0
  177. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_backends/sqlite_backend.py +0 -0
  178. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/memory/short_term_memory_processor.py +0 -0
  179. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/processors/__init__.py +0 -0
  180. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/processors/base_run_processor.py +0 -0
  181. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/__init__.py +0 -0
  182. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/agent_default_prompt.py +0 -0
  183. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/prompt_evaluator.py +0 -0
  184. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/prompt_memory_processor.py +0 -0
  185. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/prompts/prompt_optimization.py +0 -0
  186. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/runner.py +0 -0
  187. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/__init__.py +0 -0
  188. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/__init__.py +0 -0
  189. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/agent_authorization.py +0 -0
  190. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/generate_image.py +0 -0
  191. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/image_edit.py +0 -0
  192. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/image_generate.py +0 -0
  193. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/lark.py +0 -0
  194. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/las.py +0 -0
  195. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/link_reader.py +0 -0
  196. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/llm_shield.py +0 -0
  197. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/load_knowledgebase.py +0 -0
  198. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/mcp_router.py +0 -0
  199. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/run_code.py +0 -0
  200. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/tts.py +0 -0
  201. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/vesearch.py +0 -0
  202. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/video_generate.py +0 -0
  203. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/web_scraper.py +0 -0
  204. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/builtin_tools/web_search.py +0 -0
  205. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/demo_tools.py +0 -0
  206. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/load_knowledgebase_tool.py +0 -0
  207. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/__init__.py +0 -0
  208. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/browser_sandbox.py +0 -0
  209. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/code_sandbox.py +0 -0
  210. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tools/sandbox/computer_sandbox.py +0 -0
  211. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/__init__.py +0 -0
  212. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/base_tracer.py +0 -0
  213. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/__init__.py +0 -0
  214. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/attributes.py +0 -0
  215. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/common_attributes_extractors.py +0 -0
  216. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/llm_attributes_extractors.py +0 -0
  217. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/tool_attributes_extractors.py +0 -0
  218. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/attributes/extractors/types.py +0 -0
  219. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/__init__.py +0 -0
  220. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/apmplus_exporter.py +0 -0
  221. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/base_exporter.py +0 -0
  222. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/cozeloop_exporter.py +0 -0
  223. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/inmemory_exporter.py +0 -0
  224. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/exporters/tls_exporter.py +0 -0
  225. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/opentelemetry_tracer.py +0 -0
  226. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/tracing/telemetry/telemetry.py +0 -0
  227. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/types.py +0 -0
  228. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/__init__.py +0 -0
  229. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/audio_manager.py +0 -0
  230. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/auth.py +0 -0
  231. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/logger.py +0 -0
  232. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/mcp_utils.py +0 -0
  233. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/patches.py +0 -0
  234. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk/utils/volcengine_sign.py +0 -0
  235. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/SOURCES.txt +0 -0
  236. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/dependency_links.txt +0 -0
  237. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/entry_points.txt +0 -0
  238. {veadk_python-0.2.25 → veadk_python-0.2.27}/veadk_python.egg-info/requires.txt +0 -0
  239. {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.25
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
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "veadk-python"
3
- version = "0.2.25"
3
+ version = "0.2.27"
4
4
  description = "Volcengine agent development kit, integrations with Volcengine cloud services."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -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 fetching ARK API Key.")
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
- "1": "None",
68
- "2": "API key",
69
- "3": "OAuth2",
70
- }
71
- auth_methods = {
72
- "1": "none",
73
- "2": "api-key",
74
- "3": "oauth2",
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.10/v1",
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
 
@@ -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
- # Try to get credentials from environment variables first
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
- # Helper function to attempt VeFaaS IAM credential retrieval
70
- def try_get_vefaas_credentials():
71
- """Attempt to retrieve credentials from VeFaaS IAM."""
72
- try:
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
- # If no AK/SK, try to get from VeFaaS IAM
87
- if not (ak and sk):
88
- logger.info(
89
- "Credentials not found in environment, attempting to fetch from VeFaaS IAM..."
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
- # If we have AK/SK but no session token, try to get complete credentials
95
+ # Step 4: If still no session_token, try AssumeRole
96
96
  if ak and sk and not session_token:
97
- # First attempt: try VeFaaS IAM
98
- credentials = try_get_vefaas_credentials()
99
- if credentials:
100
- ak, sk, session_token = credentials
101
-
102
- # Second attempt: if still no session token, try AssumeRole
103
- if not session_token:
104
- role_trn = self._get_iam_role_trn_from_vefaas_iam() or os.getenv(
105
- "RUNTIME_IAM_ROLE_TRN", ""
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
- if role_trn:
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
- "Cached STS credentials expired or not found, requesting new credentials..."
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
- logger.info(
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
- # Expires in 1 hour by default
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
- # Cached credentials and expiration time
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
- veadk_environments = dict(env_from_dotenv)
142
- for k, v in flatten_config_dict.items():
143
- k = k.upper()
144
-
145
- if k in env_from_dotenv:
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 in .env, value in `config.yaml` will be ignored."
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(v)
151
- os.environ[k] = str(v)
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
 
@@ -12,4 +12,4 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
- VERSION = "0.2.25"
15
+ VERSION = "0.2.27"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: veadk-python
3
- Version: 0.2.25
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