forked from volcengine/veadk-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
134 lines (124 loc) · 5.33 KB
/
Copy pathpyproject.toml
File metadata and controls
134 lines (124 loc) · 5.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
[build-system]
requires = ["setuptools>=64", "setuptools-scm>=8"]
build-backend = "setuptools.build_meta"
[project]
name = "veadk-python"
dynamic = ["version"]
description = "Volcengine agent development kit, integrations with Volcengine cloud services."
readme = "README.md"
requires-python = ">=3.10"
license = { file = "LICENSE" }
authors = [
{name = "Yaozheng Fang", email = "fangyozheng@gmail.com"},
{name = "Guodong Li", email = "cu.eric.lee@gmail.com"},
{name = "Zhi Han", email = "sliverydayday@gmail.com"},
{name = "Meng Wang", email = "mengwangwm@gmail.com"}
]
dependencies = [
"pydantic-settings==2.10.1", # Config management
"a2a-sdk==0.3.7", # For Google Agent2Agent protocol
"deprecated==1.2.18",
"google-adk>=1.32.0", # For basic agent architecture
# litellm and sqlalchemy are required by code paths veadk always uses
# (LiteLlm models, sessions). google-adk ships them in base on 1.x but moved
# them behind extras ([extensions]/[db]) on 2.x, so declare them directly to
# stay compatible across google-adk >= 1.32.0 (including 2.x).
"litellm>=1.83.7,<=1.83.14", # google-adk LiteLlm model ([extensions] on 2.x)
"sqlalchemy>=2,<3", # google-adk sessions ([db] on 2.x)
"opentelemetry-exporter-otlp==1.37.0",
"opentelemetry-instrumentation-logging>=0.56b0",
"wrapt==1.17.2", # For patching built-in functions
"volcengine-python-sdk>=5.0.36", # For Volcengine API and Ark Responses context management
"volcengine>=1.0.193", # For Volcengine sign and AgentKit Runtime API access
"agent-pilot-sdk==0.1.2", # Prompt optimization by Volcengine AgentPilot/PromptPilot toolkits
"fastmcp>=2.12.3", # For running MCP
"trustedmcp==0.0.5", # For running TrustedMCP
"mcp==1.26.0", # Bumped to satisfy google-adk 1.32.0 requirement
"cookiecutter==2.6.0", # For cloud deploy
"omegaconf==2.3.0", # For agent builder
"psycopg2-binary>=2.9.10", # For PostgreSQL database (short term memory)
"asyncpg>=0.29.0", # For async PostgreSQL database (short term memory)
"pymysql==1.1.1", # For MySQL database (short term memory)
"aiomysql==0.3.2", # For async MySQL database (short term memory)
"filetype==1.2.0",
"pypdfium2>=4.30.0", # Frontend PDF attachments are rendered as page images
"pillow>=10.0.0", # Encode rendered PDF pages as PNG
"vikingdb-python-sdk>=0.1.3", # For Viking DB
"agentkit-sdk-python>=0.8.0",
"websockets>=15,<16", # Stream temporary AgentKit Sandbox conversations
"openviking-sdk>=0.1.3",
"python-frontmatter==1.1.0",
"tos>=2.8.4", # For TOS storage and Viking DB
]
[project.scripts]
veadk = "veadk.cli.cli:veadk"
[project.optional-dependencies]
codex = [
"openai-codex==0.1.0b3",
"openai-codex-cli-bin==0.137.0a4",
]
extensions = [
"redis>=5.0", # For Redis database
"cozeloop>=0.1.21", # For Cozeloop Prompt manager
"llama-index>=0.14.0", # For KnowledgeBase and LongTermMemory
"llama-index-embeddings-openai-like>=0.2.2", # For Embeddings
"llama-index-llms-openai-like>=0.5.1", # For KnowledgeBase and LongTermMemory
"llama-index-vector-stores-redis>=0.6.1", # For Redis database
"llama-index-vector-stores-opensearch>=0.6.1", # For Opensearch database
"llama-index-vector-stores-milvus>=0.4", # For Milvus database
"pymilvus>=2.4", # For Milvus database
"opensearch-py>=2.8.0",
"lark-channel-sdk",
"lark-oapi",
]
database = [
"redis>=5.0", # For Redis database
"pymysql>=1.1.1", # For MySQL database
"volcengine>=1.0.193", # For Viking DB
"mem0ai>=1.0.0,<2", # For mem0; >=1.0 lifts the openai<1.110 cap (coexist with litellm openai 2.x), <2 keeps the kwargs add()/search() API veadk uses (2.x switched to an options object)
]
speech = []
a2ui = [
"a2ui-agent-sdk>=0.2.1", # For A2UI agent-driven UI (https://a2ui.org)
]
pdf = [] # Backward-compatible alias; PDF support is now installed by default
eval = [
"prometheus-client>=0.22.1", # For exporting data to Prometheus pushgateway
"deepeval>=3.2.6", # For DeepEval-based evaluation
"google-adk[eval]", # For Google ADK-based evaluation
]
harness = [
"headroom",
]
cli = []
dev = [
"pre-commit>=4.2.0", # Format checking
"pytest>=8.4.1",
"pytest-asyncio>=1.0.0",
"pytest-xdist>=3.8.0",
]
[dependency-groups]
dev = [
"pre-commit>=4.2.0", # Format checking
"pytest>=8.4.1",
"pytest-asyncio>=1.0.0",
"pytest-xdist>=3.8.0",
]
[tool.setuptools.packages.find]
include = ["veadk*"]
exclude = ["assets*", "ide*", "tests*"]
[tool.setuptools]
include-package-data = true
[tool.setuptools.package-data]
"veadk" = ["**/*"]
# Derive the package version from the latest git tag (e.g. tag "0.5.36"
# publishes version 0.5.36). No version string is hardcoded anywhere; release
# by tagging. ``fallback_version`` is used only when building outside a git
# checkout (e.g. from a source tarball that carries no SCM metadata).
[tool.setuptools_scm]
fallback_version = "0.0.0"
[tool.ruff]
exclude = [
"veadk/integrations/ve_faas/template/*",
"veadk/integrations/ve_faas/web_template/*"
]