Some checks failed
Pre-commit / run (ubuntu-latest) (push) Has been cancelled
Deploy Sphinx documentation to Pages / build_en (ubuntu-latest, 3.10) (push) Has been cancelled
Deploy Sphinx documentation to Pages / build_zh (ubuntu-latest, 3.10) (push) Has been cancelled
Python Unittest Coverage / test (macos-15, 3.10) (push) Has been cancelled
Python Unittest Coverage / test (macos-15, 3.11) (push) Has been cancelled
Python Unittest Coverage / test (macos-15, 3.12) (push) Has been cancelled
Python Unittest Coverage / test (ubuntu-latest, 3.10) (push) Has been cancelled
Python Unittest Coverage / test (ubuntu-latest, 3.11) (push) Has been cancelled
Python Unittest Coverage / test (ubuntu-latest, 3.12) (push) Has been cancelled
Python Unittest Coverage / test (windows-latest, 3.10) (push) Has been cancelled
Python Unittest Coverage / test (windows-latest, 3.11) (push) Has been cancelled
Python Unittest Coverage / test (windows-latest, 3.12) (push) Has been cancelled
190 lines
4.2 KiB
TOML
190 lines
4.2 KiB
TOML
|
|
[project]
|
|
name = "agentscope"
|
|
dynamic = ["version"]
|
|
description = "AgentScope: A Flexible yet Robust Multi-Agent Platform."
|
|
readme = "README.md"
|
|
authors = [
|
|
{ name = "SysML team of Alibaba Tongyi Lab", email = "gaodawei.gdw@alibaba-inc.com" }
|
|
]
|
|
license = "Apache-2.0"
|
|
keywords = ["deep-learning", "multi agents", "agents"]
|
|
classifiers = [
|
|
"Development Status :: 4 - Beta",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Operating System :: OS Independent",
|
|
"Intended Audience :: Developers",
|
|
"Intended Audience :: Science/Research",
|
|
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
|
]
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"aioitertools",
|
|
"anthropic",
|
|
"dashscope",
|
|
"docstring_parser",
|
|
"json5",
|
|
"json_repair",
|
|
"mcp>=1.13",
|
|
"numpy",
|
|
"openai",
|
|
"python-datauri",
|
|
"opentelemetry-api>=1.39.0",
|
|
"opentelemetry-sdk>=1.39.0",
|
|
"opentelemetry-exporter-otlp>=1.39.0",
|
|
"opentelemetry-semantic-conventions>=0.60b0",
|
|
"python-socketio",
|
|
"shortuuid",
|
|
"tiktoken",
|
|
"sounddevice",
|
|
"sqlalchemy",
|
|
"python-frontmatter",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# ------------ A2A protocol ------------
|
|
a2a = [
|
|
"a2a-sdk",
|
|
"httpx",
|
|
# TODO: split the card resolvers from the a2a dependency
|
|
"nacos-sdk-python>=3.0.0",
|
|
]
|
|
|
|
# ------------ Realtime -------------
|
|
realtime = ["websockets>=14.0", "scipy"]
|
|
|
|
# ------------ Model APIs ------------
|
|
gemini = ["google-genai"]
|
|
ollama = ["ollama>=0.5.4"]
|
|
models = [
|
|
"agentscope[ollama]",
|
|
"agentscope[gemini]",
|
|
]
|
|
|
|
# ------------ Tokenizers ------------
|
|
tokens = [
|
|
"Pillow",
|
|
"transformers",
|
|
"jinja2",
|
|
]
|
|
|
|
# ------------ Memory ------------
|
|
redis_memory = ["redis"]
|
|
|
|
mem0ai = [
|
|
"mem0ai<=1.0.3",
|
|
"packaging"
|
|
]
|
|
reme = ["reme-ai>=0.2.0.3"]
|
|
memory = [
|
|
"agentscope[redis_memory]",
|
|
"agentscope[mem0ai]",
|
|
"agentscope[reme]",
|
|
]
|
|
|
|
# ------------ RAG ------------
|
|
# readers
|
|
text-reader = ["nltk"]
|
|
pdf-reader = [
|
|
"agentscope[text-reader]",
|
|
# TODO: the latest pypdf has some issues with parsing PDFs
|
|
# (2026-01-13), so we fix the version here temporarily.
|
|
"pypdf<=6.5.0",
|
|
]
|
|
docx-reader = [
|
|
"agentscope[text-reader]",
|
|
"python-docx"
|
|
]
|
|
excel-reader = [
|
|
"agentscope[text-reader]",
|
|
"pandas",
|
|
"openpyxl",
|
|
]
|
|
ppt-reader = [
|
|
"agentscope[text-reader]",
|
|
"python-pptx"
|
|
]
|
|
readers = [
|
|
"agentscope[text-reader]",
|
|
"agentscope[pdf-reader]",
|
|
"agentscope[docx-reader]",
|
|
"agentscope[excel-reader]",
|
|
"agentscope[ppt-reader]",
|
|
]
|
|
|
|
# vdb
|
|
# The qdrant-client >= 1.16.0 has conflicts with pymilvus, so we fix
|
|
# the version to 1.15.1 here.
|
|
qdrant = ["qdrant-client==1.15.1"]
|
|
milvus = ["pymilvus[milvus_lite]"]
|
|
ali_mysql = ["mysql-connector-python"]
|
|
mongodb = ["pymongo"]
|
|
oceanbase = ["pyobvector>=0.2.0,<0.3.0"]
|
|
vdbs = [
|
|
"agentscope[ali_mysql]",
|
|
"agentscope[qdrant]",
|
|
"agentscope[milvus]",
|
|
"agentscope[mongodb]",
|
|
"agentscope[oceanbase]",
|
|
]
|
|
|
|
rag = [
|
|
"agentscope[readers]",
|
|
"agentscope[vdbs]",
|
|
]
|
|
|
|
# ------------ Evaluation ------------
|
|
evaluate = ["ray"]
|
|
|
|
# ------------ Full ------------
|
|
full = [
|
|
"agentscope[a2a]",
|
|
"agentscope[models]",
|
|
"agentscope[tokens]",
|
|
"agentscope[memory]",
|
|
"agentscope[rag]",
|
|
"agentscope[evaluate]",
|
|
"agentscope[realtime]",
|
|
]
|
|
|
|
# ------------ Development ------------
|
|
dev = [
|
|
# Include full dependencies from local package
|
|
"agentscope[full]",
|
|
# Development tools
|
|
"pre-commit",
|
|
"pytest",
|
|
"pytest-forked",
|
|
"sphinx-gallery",
|
|
"furo",
|
|
"myst_parser",
|
|
"matplotlib",
|
|
# For unittests
|
|
# For mocking redis in unittests
|
|
"fakeredis",
|
|
"aiosqlite",
|
|
"greenlet",
|
|
# For openjudge
|
|
"py-openjudge",
|
|
]
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/agentscope-ai/agentscope"
|
|
Documentation = "https://doc.agentscope.io/"
|
|
Repository = "https://github.com/agentscope-ai/agentscope"
|
|
|
|
[tool.setuptools]
|
|
packages = { find = { where = ["src"] } }
|
|
include-package-data = true
|
|
|
|
[tool.setuptools.package-data]
|
|
"*" = ["py.typed"]
|
|
|
|
[build-system]
|
|
requires = ["setuptools>=45", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[tool.setuptools.dynamic]
|
|
version = {attr = "agentscope._version.__version__"}
|