veadk-python 0.2.11__tar.gz → 0.2.13__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.

Potentially problematic release.


This version of veadk-python might be problematic. Click here for more details.

Files changed (204) hide show
  1. {veadk_python-0.2.11 → veadk_python-0.2.13}/PKG-INFO +1 -1
  2. {veadk_python-0.2.11 → veadk_python-0.2.13}/pyproject.toml +1 -1
  3. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli.py +2 -0
  4. veadk_python-0.2.13/veadk/cli/cli_uploadevalset.py +125 -0
  5. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli_web.py +15 -2
  6. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_tos/ve_tos.py +5 -0
  7. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/backends/utils.py +2 -1
  8. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/backends/vikingdb_knowledge_backend.py +47 -19
  9. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory.py +9 -0
  10. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory_backends/vikingdb_memory_backend.py +24 -5
  11. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/generate_image.py +220 -184
  12. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/image_edit.py +15 -1
  13. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/image_generate.py +15 -1
  14. veadk_python-0.2.13/veadk/tools/builtin_tools/run_code.py +81 -0
  15. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/video_generate.py +32 -7
  16. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/version.py +1 -1
  17. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk_python.egg-info/PKG-INFO +1 -1
  18. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk_python.egg-info/SOURCES.txt +2 -0
  19. {veadk_python-0.2.11 → veadk_python-0.2.13}/LICENSE +0 -0
  20. {veadk_python-0.2.11 → veadk_python-0.2.13}/README.md +0 -0
  21. {veadk_python-0.2.11 → veadk_python-0.2.13}/setup.cfg +0 -0
  22. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_agent.py +0 -0
  23. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_cloud.py +0 -0
  24. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_evaluator.py +0 -0
  25. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_knowledgebase.py +0 -0
  26. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_long_term_memory.py +0 -0
  27. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_multiple_agents.py +0 -0
  28. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_runner.py +0 -0
  29. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_runtime_data_collecting.py +0 -0
  30. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_short_term_memory.py +0 -0
  31. {veadk_python-0.2.11 → veadk_python-0.2.13}/tests/test_tracing.py +0 -0
  32. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/__init__.py +0 -0
  33. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/a2a/__init__.py +0 -0
  34. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/a2a/agent_card.py +0 -0
  35. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/a2a/remote_ve_agent.py +0 -0
  36. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/a2a/ve_a2a_server.py +0 -0
  37. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/a2a/ve_agent_executor.py +0 -0
  38. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/a2a/ve_task_store.py +0 -0
  39. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/agent.py +0 -0
  40. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/agent_builder.py +0 -0
  41. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/agents/loop_agent.py +0 -0
  42. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/agents/parallel_agent.py +0 -0
  43. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/agents/sequential_agent.py +0 -0
  44. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/__init__.py +0 -0
  45. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/base_auth.py +0 -0
  46. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/__init__.py +0 -0
  47. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/apmplus_veauth.py +0 -0
  48. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/ark_veauth.py +0 -0
  49. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/base_veauth.py +0 -0
  50. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/cozeloop_veauth.py +0 -0
  51. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/opensearch_veauth.py +0 -0
  52. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/postgresql_veauth.py +0 -0
  53. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/prompt_pilot_veauth.py +0 -0
  54. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/utils.py +0 -0
  55. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/auth/veauth/vesearch_veauth.py +0 -0
  56. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/__init__.py +0 -0
  57. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli_deploy.py +0 -0
  58. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli_eval.py +0 -0
  59. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli_init.py +0 -0
  60. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli_kb.py +0 -0
  61. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli_pipeline.py +0 -0
  62. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cli/cli_prompt.py +0 -0
  63. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cloud/__init__.py +0 -0
  64. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cloud/cloud_agent_engine.py +0 -0
  65. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/cloud/cloud_app.py +0 -0
  66. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/config.py +0 -0
  67. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/configs/__init__.py +0 -0
  68. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/configs/database_configs.py +0 -0
  69. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/configs/model_configs.py +0 -0
  70. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/configs/tool_configs.py +0 -0
  71. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/configs/tracing_configs.py +0 -0
  72. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/consts.py +0 -0
  73. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/__init__.py +0 -0
  74. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/adk_evaluator/__init__.py +0 -0
  75. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/adk_evaluator/adk_evaluator.py +0 -0
  76. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/base_evaluator.py +0 -0
  77. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/deepeval_evaluator/__init__.py +0 -0
  78. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/deepeval_evaluator/deepeval_evaluator.py +0 -0
  79. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/eval_set_file_loader.py +0 -0
  80. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/eval_set_recorder.py +0 -0
  81. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/types.py +0 -0
  82. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/evaluation/utils/prometheus.py +0 -0
  83. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/__init__.py +0 -0
  84. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_apig/__init__.py +0 -0
  85. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_apig/ve_apig.py +0 -0
  86. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_apig/ve_apig_utils.py +0 -0
  87. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_code_pipeline/__init__.py +0 -0
  88. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_code_pipeline/ve_code_pipeline.py +0 -0
  89. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_cozeloop/__init__.py +0 -0
  90. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_cozeloop/ve_cozeloop.py +0 -0
  91. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_cr/__init__.py +0 -0
  92. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_cr/ve_cr.py +0 -0
  93. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/__init__.py +0 -0
  94. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/cookiecutter.json +0 -0
  95. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/__init__.py +0 -0
  96. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/clean.py +0 -0
  97. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/config.yaml.example +0 -0
  98. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/deploy.py +0 -0
  99. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/__init__.py +0 -0
  100. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/agent.py +0 -0
  101. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/app.py +0 -0
  102. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/requirements.txt +0 -0
  103. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/run.sh +0 -0
  104. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/{{ cookiecutter.app_name }}/__init__.py +0 -0
  105. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/template/{{cookiecutter.local_dir_name}}/src/{{ cookiecutter.app_name }}/agent.py +0 -0
  106. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/ve_faas.py +0 -0
  107. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/ve_faas_utils.py +0 -0
  108. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/cookiecutter.json +0 -0
  109. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/__init__.py +0 -0
  110. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/clean.py +0 -0
  111. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/config.yaml.example +0 -0
  112. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/deploy.py +0 -0
  113. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/Dockerfile +0 -0
  114. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/app.py +0 -0
  115. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/init_db.py +0 -0
  116. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/models.py +0 -0
  117. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/requirements.txt +0 -0
  118. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/run.sh +0 -0
  119. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/static/css/style.css +0 -0
  120. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/static/js/admin.js +0 -0
  121. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/dashboard.html +0 -0
  122. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/edit_post.html +0 -0
  123. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/login.html +0 -0
  124. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/admin/posts.html +0 -0
  125. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/base.html +0 -0
  126. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/index.html +0 -0
  127. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_faas/web_template/{{cookiecutter.local_dir_name}}/src/templates/post.html +0 -0
  128. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_prompt_pilot/__init__.py +0 -0
  129. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_prompt_pilot/ve_prompt_pilot.py +0 -0
  130. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_tls/__init__.py +0 -0
  131. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_tls/utils.py +0 -0
  132. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_tls/ve_tls.py +0 -0
  133. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_viking_db_memory/__init__.py +0 -0
  134. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/integrations/ve_viking_db_memory/ve_viking_db_memory.py +0 -0
  135. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/__init__.py +0 -0
  136. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/backends/__init__.py +0 -0
  137. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/backends/base_backend.py +0 -0
  138. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/backends/in_memory_backend.py +0 -0
  139. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/backends/opensearch_backend.py +0 -0
  140. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/backends/redis_backend.py +0 -0
  141. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/entry.py +0 -0
  142. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/knowledgebase/knowledgebase.py +0 -0
  143. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/__init__.py +0 -0
  144. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory_backends/__init__.py +0 -0
  145. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory_backends/base_backend.py +0 -0
  146. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory_backends/in_memory_backend.py +0 -0
  147. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory_backends/mem0_backend.py +0 -0
  148. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory_backends/opensearch_backend.py +0 -0
  149. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/long_term_memory_backends/redis_backend.py +0 -0
  150. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/short_term_memory.py +0 -0
  151. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/short_term_memory_backends/__init__.py +0 -0
  152. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/short_term_memory_backends/base_backend.py +0 -0
  153. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/short_term_memory_backends/mysql_backend.py +0 -0
  154. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/short_term_memory_backends/postgresql_backend.py +0 -0
  155. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/short_term_memory_backends/sqlite_backend.py +0 -0
  156. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/memory/short_term_memory_processor.py +0 -0
  157. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/prompts/__init__.py +0 -0
  158. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/prompts/agent_default_prompt.py +0 -0
  159. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/prompts/prompt_evaluator.py +0 -0
  160. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/prompts/prompt_memory_processor.py +0 -0
  161. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/prompts/prompt_optimization.py +0 -0
  162. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/runner.py +0 -0
  163. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/__init__.py +0 -0
  164. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/__init__.py +0 -0
  165. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/lark.py +0 -0
  166. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/las.py +0 -0
  167. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/load_knowledgebase.py +0 -0
  168. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/mcp_router.py +0 -0
  169. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/vesearch.py +0 -0
  170. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/web_scraper.py +0 -0
  171. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/builtin_tools/web_search.py +0 -0
  172. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/demo_tools.py +0 -0
  173. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/load_knowledgebase_tool.py +0 -0
  174. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/sandbox/__init__.py +0 -0
  175. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/sandbox/browser_sandbox.py +0 -0
  176. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/sandbox/code_sandbox.py +0 -0
  177. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tools/sandbox/computer_sandbox.py +0 -0
  178. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/__init__.py +0 -0
  179. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/base_tracer.py +0 -0
  180. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/__init__.py +0 -0
  181. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/attributes/attributes.py +0 -0
  182. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/attributes/extractors/common_attributes_extractors.py +0 -0
  183. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/attributes/extractors/llm_attributes_extractors.py +0 -0
  184. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/attributes/extractors/tool_attributes_extractors.py +0 -0
  185. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/attributes/extractors/types.py +0 -0
  186. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/exporters/__init__.py +0 -0
  187. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/exporters/apmplus_exporter.py +0 -0
  188. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/exporters/base_exporter.py +0 -0
  189. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/exporters/cozeloop_exporter.py +0 -0
  190. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/exporters/inmemory_exporter.py +0 -0
  191. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/exporters/tls_exporter.py +0 -0
  192. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/opentelemetry_tracer.py +0 -0
  193. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/tracing/telemetry/telemetry.py +0 -0
  194. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/types.py +0 -0
  195. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/utils/__init__.py +0 -0
  196. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/utils/logger.py +0 -0
  197. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/utils/mcp_utils.py +0 -0
  198. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/utils/misc.py +0 -0
  199. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/utils/patches.py +0 -0
  200. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk/utils/volcengine_sign.py +0 -0
  201. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk_python.egg-info/dependency_links.txt +0 -0
  202. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk_python.egg-info/entry_points.txt +0 -0
  203. {veadk_python-0.2.11 → veadk_python-0.2.13}/veadk_python.egg-info/requires.txt +0 -0
  204. {veadk_python-0.2.11 → veadk_python-0.2.13}/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.11
3
+ Version: 0.2.13
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.11"
3
+ version = "0.2.13"
4
4
  description = "Volcengine agent development kit, integrations with Volcengine cloud services."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -22,6 +22,7 @@ from veadk.cli.cli_kb import kb
22
22
  from veadk.cli.cli_pipeline import pipeline
23
23
  from veadk.cli.cli_prompt import prompt
24
24
  from veadk.cli.cli_web import web
25
+ from veadk.cli.cli_uploadevalset import uploadevalset
25
26
  from veadk.version import VERSION
26
27
 
27
28
 
@@ -41,6 +42,7 @@ veadk.add_command(web)
41
42
  veadk.add_command(pipeline)
42
43
  veadk.add_command(eval)
43
44
  veadk.add_command(kb)
45
+ veadk.add_command(uploadevalset)
44
46
 
45
47
  if __name__ == "__main__":
46
48
  veadk()
@@ -0,0 +1,125 @@
1
+ # Copyright (c) 2025 Beijing Volcano Engine Technology Co., Ltd. and/or its affiliates.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ import click
16
+ import json
17
+ import requests
18
+ from veadk.utils.logger import get_logger
19
+ from veadk.config import getenv
20
+ from pathlib import Path
21
+
22
+ logger = get_logger(__name__)
23
+
24
+
25
+ @click.command()
26
+ @click.option("--file", required=True, help="JSON file path containing dataset items")
27
+ @click.option("--cozeloop-workspace-id", default=None, help="CozeLoop workspace ID")
28
+ @click.option("--cozeloop-evalset-id", default=None, help="CozeLoop evaluation set ID")
29
+ @click.option(
30
+ "--cozeloop-api-key",
31
+ default=None,
32
+ help="CozeLoop API key (or set COZELOOP_API_KEY env var)",
33
+ )
34
+ def uploadevalset(
35
+ file: str,
36
+ cozeloop_workspace_id: str,
37
+ cozeloop_evalset_id: str,
38
+ cozeloop_api_key: str,
39
+ ) -> None:
40
+ """Upload dataset items to CozeLoop evaluation set."""
41
+
42
+ if not cozeloop_workspace_id:
43
+ cozeloop_workspace_id = getenv(
44
+ "OBSERVABILITY_OPENTELEMETRY_COZELOOP_SERVICE_NAME"
45
+ )
46
+ if not cozeloop_evalset_id:
47
+ cozeloop_evalset_id = getenv("OBSERVABILITY_OPENTELEMETRY_COZELOOP_EVALSET_ID")
48
+ if not cozeloop_api_key:
49
+ cozeloop_api_key = getenv("OBSERVABILITY_OPENTELEMETRY_COZELOOP_API_KEY")
50
+
51
+ # Read JSON file
52
+ file_path = Path(file)
53
+ if not file_path.exists():
54
+ logger.error(f"File not found: {file}")
55
+ return
56
+
57
+ logger.info(f"Reading dataset from {file}")
58
+ with open(file_path, "r", encoding="utf-8") as f:
59
+ data = json.load(f)
60
+
61
+ # Prepare items
62
+ items = []
63
+ for case in data.get("eval_cases", []):
64
+ conversation = case.get("conversation", [])
65
+ for turn in conversation:
66
+ user_text = (
67
+ turn.get("user_content", {}).get("parts", [{}])[0].get("text", "")
68
+ )
69
+ output_text = (
70
+ turn.get("final_response", {}).get("parts", [{}])[0].get("text", "")
71
+ )
72
+
73
+ items.append(
74
+ {
75
+ "turns": [
76
+ {
77
+ "field_datas": [
78
+ {
79
+ "name": "input",
80
+ "content": {
81
+ "content_type": "Text",
82
+ "text": user_text,
83
+ },
84
+ },
85
+ {
86
+ "name": "output",
87
+ "content": {
88
+ "content_type": "Text",
89
+ "text": output_text,
90
+ },
91
+ },
92
+ ]
93
+ }
94
+ ]
95
+ }
96
+ )
97
+
98
+ # Upload to CozeLoop
99
+ url = f"https://api.coze.cn/v1/loop/evaluation/evaluation_sets/{cozeloop_evalset_id}/items"
100
+ logger.info(
101
+ f"Uploading {len(items)} items to workspace_id={cozeloop_workspace_id} evalset_id={cozeloop_evalset_id}"
102
+ )
103
+
104
+ response = requests.post(
105
+ url=url,
106
+ headers={
107
+ "Authorization": f"Bearer {cozeloop_api_key}",
108
+ "Content-Type": "application/json",
109
+ "X-TT-ENV": "ppe_eval_openapi",
110
+ "x-use-ppe": "1",
111
+ },
112
+ json={
113
+ "workspace_id": cozeloop_workspace_id,
114
+ "is_allow_partial_add": True,
115
+ "is_skip_invalid_items": True,
116
+ "items": items,
117
+ },
118
+ )
119
+
120
+ if response.status_code == 200:
121
+ logger.info(
122
+ f"Successfully uploaded dataset to CozeLoop evalset {cozeloop_evalset_id}"
123
+ )
124
+ else:
125
+ logger.error(f"Failed to upload dataset: {response.text}")
@@ -56,10 +56,14 @@ def _get_ltm_from_env() -> LongTermMemory | None:
56
56
  logger = get_logger(__name__)
57
57
 
58
58
  long_term_memory_backend = os.getenv("LONG_TERM_MEMORY_BACKEND")
59
+ app_name = os.getenv("VEADK_WEB_APP_NAME", "")
60
+ user_id = os.getenv("VEADK_WEB_USER_ID", "")
59
61
 
60
62
  if long_term_memory_backend:
61
63
  logger.info(f"Long term memory: backend={long_term_memory_backend}")
62
- return LongTermMemory(backend=long_term_memory_backend) # type: ignore
64
+ return LongTermMemory(
65
+ backend=long_term_memory_backend, app_name=app_name, user_id=user_id
66
+ ) # type: ignore
63
67
  else:
64
68
  logger.warning("No long term memory backend settings detected.")
65
69
  return None
@@ -131,7 +135,13 @@ def patch_adkwebserver_disable_openapi():
131
135
 
132
136
  @click.command()
133
137
  @click.option("--host", default="127.0.0.1", help="Host to run the web server on")
134
- def web(host: str) -> None:
138
+ @click.option(
139
+ "--app_name", default="", help="The `app_name` for initializing long term memory"
140
+ )
141
+ @click.option(
142
+ "--user_id", default="", help="The `user_id` for initializing long term memory"
143
+ )
144
+ def web(host: str, app_name: str, user_id: str) -> None:
135
145
  """Launch web with long term and short term memory."""
136
146
  import os
137
147
  from typing import Any
@@ -175,6 +185,9 @@ def web(host: str) -> None:
175
185
  self.session_service = short_term_memory.session_service
176
186
  self.memory_service = long_term_memory
177
187
 
188
+ os.environ["VEADK_WEB_APP_NAME"] = app_name
189
+ os.environ["VEADK_WEB_USER_ID"] = user_id
190
+
178
191
  import google.adk.cli.adk_web_server
179
192
 
180
193
  google.adk.cli.adk_web_server.AdkWebServer.__init__ = init_for_veadk
@@ -36,11 +36,14 @@ class VeTOS:
36
36
  self,
37
37
  ak: str = "",
38
38
  sk: str = "",
39
+ session_token: str = "",
39
40
  region: str = "cn-beijing",
40
41
  bucket_name: str = DEFAULT_TOS_BUCKET_NAME,
41
42
  ) -> None:
42
43
  self.ak = ak if ak else os.getenv("VOLCENGINE_ACCESS_KEY", "")
43
44
  self.sk = sk if sk else os.getenv("VOLCENGINE_SECRET_KEY", "")
45
+ self.session_token = session_token
46
+
44
47
  # Add empty value validation
45
48
  if not self.ak or not self.sk:
46
49
  raise ValueError(
@@ -71,6 +74,7 @@ class VeTOS:
71
74
  self._client = self._tos_module.TosClientV2(
72
75
  ak=self.ak,
73
76
  sk=self.sk,
77
+ security_token=self.session_token,
74
78
  endpoint=f"tos-{self.region}.volces.com",
75
79
  region=self.region,
76
80
  )
@@ -85,6 +89,7 @@ class VeTOS:
85
89
  self._client = self._tos_module.TosClientV2(
86
90
  self.ak,
87
91
  self.sk,
92
+ security_token=self.session_token,
88
93
  endpoint=f"tos-{self.region}.volces.com",
89
94
  region=self.region,
90
95
  )
@@ -46,6 +46,7 @@ def build_vikingdb_knowledgebase_request(
46
46
  path: str,
47
47
  volcengine_access_key: str,
48
48
  volcengine_secret_key: str,
49
+ session_token: str = "",
49
50
  method: Literal["GET", "POST", "PUT", "DELETE"] = "POST",
50
51
  region: str = "cn-beijing",
51
52
  params=None,
@@ -85,7 +86,7 @@ def build_vikingdb_knowledgebase_request(
85
86
  r.set_body(json.dumps(data))
86
87
 
87
88
  credentials = Credentials(
88
- volcengine_access_key, volcengine_secret_key, "air", region
89
+ volcengine_access_key, volcengine_secret_key, "air", region, session_token
89
90
  )
90
91
  SignerV4.sign(r, credentials)
91
92
  return r
@@ -14,6 +14,7 @@
14
14
 
15
15
  import asyncio
16
16
  import json
17
+ import os
17
18
  import re
18
19
  from pathlib import Path
19
20
  from typing import Any, Literal
@@ -23,7 +24,7 @@ from pydantic import Field
23
24
  from typing_extensions import override
24
25
 
25
26
  import veadk.config # noqa E401
26
- from veadk.config import getenv
27
+ from veadk.auth.veauth.utils import get_credential_from_vefaas_iam
27
28
  from veadk.configs.database_configs import NormalTOSConfig, TOSConfig
28
29
  from veadk.knowledgebase.backends.base_backend import BaseKnowledgebaseBackend
29
30
  from veadk.knowledgebase.backends.utils import build_vikingdb_knowledgebase_request
@@ -58,14 +59,16 @@ def get_files_in_directory(directory: str):
58
59
 
59
60
 
60
61
  class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
61
- volcengine_access_key: str = Field(
62
- default_factory=lambda: getenv("VOLCENGINE_ACCESS_KEY")
62
+ volcengine_access_key: str | None = Field(
63
+ default_factory=lambda: os.getenv("VOLCENGINE_ACCESS_KEY")
63
64
  )
64
65
 
65
- volcengine_secret_key: str = Field(
66
- default_factory=lambda: getenv("VOLCENGINE_SECRET_KEY")
66
+ volcengine_secret_key: str | None = Field(
67
+ default_factory=lambda: os.getenv("VOLCENGINE_SECRET_KEY")
67
68
  )
68
69
 
70
+ session_token: str = ""
71
+
69
72
  volcengine_project: str = "default"
70
73
  """VikingDB knowledgebase project in Volcengine console platform. Default by `default`"""
71
74
 
@@ -75,6 +78,15 @@ class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
75
78
  tos_config: TOSConfig | NormalTOSConfig = Field(default_factory=TOSConfig)
76
79
  """TOS config, used to upload files to TOS"""
77
80
 
81
+ def model_post_init(self, __context: Any) -> None:
82
+ self.precheck_index_naming()
83
+
84
+ # check whether collection exist, if not, create it
85
+ if not self.collection_status()["existed"]:
86
+ logger.warning(
87
+ f"VikingDB knowledgebase collection {self.index} does not exist, please create it first..."
88
+ )
89
+
78
90
  def precheck_index_naming(self):
79
91
  if not (
80
92
  isinstance(self.index, str)
@@ -86,18 +98,21 @@ class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
86
98
  "it must start with an English letter, contain only letters, numbers, and underscores, and have a length of 1-128."
87
99
  )
88
100
 
89
- def model_post_init(self, __context: Any) -> None:
90
- self.precheck_index_naming()
91
-
92
- # check whether collection exist, if not, create it
93
- if not self.collection_status()["existed"]:
94
- logger.warning(
95
- f"VikingDB knowledgebase collection {self.index} does not exist, please create it first..."
96
- )
97
-
98
- self._tos_client = VeTOS(
99
- ak=self.volcengine_access_key,
100
- sk=self.volcengine_secret_key,
101
+ def _get_tos_client(self) -> VeTOS:
102
+ volcengine_access_key = self.volcengine_access_key
103
+ volcengine_secret_key = self.volcengine_secret_key
104
+ session_token = self.session_token
105
+
106
+ if not (volcengine_access_key and volcengine_secret_key):
107
+ cred = get_credential_from_vefaas_iam()
108
+ volcengine_access_key = cred.access_key_id
109
+ volcengine_secret_key = cred.secret_access_key
110
+ session_token = cred.session_token
111
+
112
+ return VeTOS(
113
+ ak=volcengine_access_key,
114
+ sk=volcengine_secret_key,
115
+ session_token=session_token,
101
116
  region=self.tos_config.region,
102
117
  bucket_name=self.tos_config.bucket,
103
118
  )
@@ -404,6 +419,8 @@ class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
404
419
  metadata: dict | None = None,
405
420
  ) -> str:
406
421
  # Here, we set the metadata via the TOS object, ref: https://www.volcengine.com/docs/84313/1254624
422
+ self._tos_client = self._get_tos_client()
423
+
407
424
  self._tos_client.bucket_name = tos_bucket_name
408
425
  coro = self._tos_client.upload(
409
426
  object_key=object_key,
@@ -504,10 +521,21 @@ class VikingDBKnowledgeBackend(BaseKnowledgebaseBackend):
504
521
  ) -> dict:
505
522
  VIKINGDB_KNOWLEDGEBASE_BASE_URL = "api-knowledgebase.mlp.cn-beijing.volces.com"
506
523
 
524
+ volcengine_access_key = self.volcengine_access_key
525
+ volcengine_secret_key = self.volcengine_secret_key
526
+ session_token = self.session_token
527
+
528
+ if not (volcengine_access_key and volcengine_secret_key):
529
+ cred = get_credential_from_vefaas_iam()
530
+ volcengine_access_key = cred.access_key_id
531
+ volcengine_secret_key = cred.secret_access_key
532
+ session_token = cred.session_token
533
+
507
534
  request = build_vikingdb_knowledgebase_request(
508
535
  path=path,
509
- volcengine_access_key=self.volcengine_access_key,
510
- volcengine_secret_key=self.volcengine_secret_key,
536
+ volcengine_access_key=volcengine_access_key,
537
+ volcengine_secret_key=volcengine_secret_key,
538
+ session_token=session_token,
511
539
  method=method,
512
540
  data=body,
513
541
  )
@@ -104,6 +104,15 @@ class LongTermMemory(BaseMemoryService, BaseModel):
104
104
 
105
105
  # Once user define backend config, use it directly
106
106
  if self.backend_config:
107
+ if "index" not in self.backend_config:
108
+ logger.warning(
109
+ "Attribute `index` not provided in backend_config, use `index` or `app_name` instead."
110
+ )
111
+ self.backend_config["index"] = self.index or self.app_name
112
+
113
+ logger.debug(
114
+ f"Init {self.backend}, Use provided backend config: {self.backend_config}"
115
+ )
107
116
  self._backend = _get_backend_cls(self.backend)(**self.backend_config)
108
117
  return
109
118
 
@@ -49,7 +49,23 @@ class VikingDBLTMBackend(BaseLongTermMemoryBackend):
49
49
  region: str = "cn-beijing"
50
50
  """VikingDB memory region"""
51
51
 
52
+ memory_type: list[str] = Field(default_factory=list)
53
+
52
54
  def model_post_init(self, __context: Any) -> None:
55
+ # We get memory type from:
56
+ # 1. user input
57
+ # 2. environment variable
58
+ # 3. default value
59
+ if not self.memory_type:
60
+ env_memory_type = os.getenv("DATABASE_VIKINGMEM_MEMORY_TYPE")
61
+ if env_memory_type:
62
+ # "event_1, event_2" -> ["event_1", "event_2"]
63
+ self.memory_type = [x.strip() for x in env_memory_type.split(",")]
64
+ else:
65
+ self.memory_type = ["sys_event_v1", "event_v1"]
66
+
67
+ logger.info(f"Using memory type: {self.memory_type}")
68
+
53
69
  # check whether collection exist, if not, create it
54
70
  if not self._collection_exist():
55
71
  self._create_collection()
@@ -68,17 +84,23 @@ class VikingDBLTMBackend(BaseLongTermMemoryBackend):
68
84
  try:
69
85
  client = self._get_client()
70
86
  client.get_collection(collection_name=self.index)
87
+ logger.info(f"Collection {self.index} exist.")
71
88
  return True
72
89
  except Exception:
90
+ logger.info(f"Collection {self.index} not exist.")
73
91
  return False
74
92
 
75
93
  def _create_collection(self) -> None:
94
+ logger.info(
95
+ f"Create collection with collection_name={self.index}, builtin_event_types={self.memory_type}"
96
+ )
76
97
  client = self._get_client()
77
98
  response = client.create_collection(
78
99
  collection_name=self.index,
79
100
  description="Created by Volcengine Agent Development Kit VeADK",
80
- builtin_event_types=["sys_event_v1"],
101
+ builtin_event_types=self.memory_type,
81
102
  )
103
+ logger.debug(f"Create collection with response {response}")
82
104
  return response
83
105
 
84
106
  def _get_client(self) -> VikingDBMemoryClient:
@@ -135,10 +157,7 @@ class VikingDBLTMBackend(BaseLongTermMemoryBackend):
135
157
  def search_memory(
136
158
  self, user_id: str, query: str, top_k: int, **kwargs
137
159
  ) -> list[str]:
138
- filter = {
139
- "user_id": user_id,
140
- "memory_type": ["sys_event_v1"],
141
- }
160
+ filter = {"user_id": user_id, "memory_type": self.memory_type}
142
161
 
143
162
  logger.debug(
144
163
  f"Request for search memory in VikingDB: filter={filter}, collection_name={self.index}, query={query}, limit={top_k}"