新增六边形架构核心代码包,包含: 1. 协议适配器层:HTTP/SMTP/IMAP/SSH/GRPC等多协议适配器实现 2. 认证插件体系:基础认证、API密钥、HMAC等多类型认证插件 3. 执行编排框架:工具执行器、上下文构建、运行时治理组件 4. 用例端口与DTO:定义领域服务端口与数据传输对象 5. 厂商集成包框架:支持第三方系统集成扩展 6. 基础设施装配层:实现依赖注入与服务装配 所有代码遵循六边形架构设计原则,实现端口与适配器解耦,支持动态扩展与自动发现。
163 lines
4.1 KiB
TOML
163 lines
4.1 KiB
TOML
[build-system]
|
||
requires = ["setuptools>=80", "wheel"]
|
||
build-backend = "setuptools.build_meta"
|
||
|
||
[project]
|
||
name = "yuxi"
|
||
version = "0.7.0"
|
||
description = "Yuxi 智能知识库与知识图谱平台核心后端包"
|
||
readme = "README.md"
|
||
requires-python = ">=3.12,<3.14"
|
||
dependencies = [
|
||
"agent-sandbox>=0.0.26",
|
||
"aioboto3>=13.0.0",
|
||
"aiofiles>=24.1.0",
|
||
"aiohttp>=3.9.0",
|
||
"aiosqlite>=0.20.0",
|
||
"argon2-cffi>=25.1.0",
|
||
"asyncpg>=0.30.0",
|
||
"chardet>=5.0.0",
|
||
"colorlog>=6.9.0",
|
||
"cryptography>=42.0.0",
|
||
"dashscope>=1.23.2",
|
||
"deepagents>=0.6.7",
|
||
"docling>=2.68.0",
|
||
"docx2txt>=0.9",
|
||
"httpx>=0.27.0",
|
||
"igraph>=0.11.8",
|
||
"json-repair>=0.54.0",
|
||
"langchain>=1.2.0",
|
||
"langchain-community>=0.4",
|
||
"langchain-core>=1.2.5",
|
||
"langchain-deepseek>=1.0",
|
||
"langchain-mcp-adapters>=0.1.9",
|
||
"langchain-openai>=1.0.2",
|
||
"langchain-tavily>=0.2.13",
|
||
"langchain-text-splitters>=1.0",
|
||
"langfuse>=4.0.0",
|
||
"langgraph>=1.0.1",
|
||
"langgraph-checkpoint-postgres>=2.0.0",
|
||
"langgraph-checkpoint-sqlite>=3.0",
|
||
"langgraph-cli[inmem]>=0.4",
|
||
"langsmith>=0.4",
|
||
"llama-index>=0.14",
|
||
"llama-index-readers-file>=0.4.7",
|
||
"loguru>=0.7.3",
|
||
"markdownify>=1.1.0",
|
||
"mcp>=1.20",
|
||
"minio>=7.2.7",
|
||
"neo4j>=5.28.1",
|
||
"networkx>=3.5",
|
||
"openai>=1.109",
|
||
"opencv-python-headless>=4.11.0.86",
|
||
"onnxruntime>=1.20.0",
|
||
"Pillow>=10.5.0",
|
||
"psycopg[binary,pool]>=3.3.3",
|
||
"pyjwt>=2.8.0",
|
||
"pymilvus>=2.5.8",
|
||
"pymupdf>=1.25.5",
|
||
"pymysql>=1.1.0",
|
||
"pypinyin>=0.55.0",
|
||
"python-dotenv>=1.1.0",
|
||
"python-multipart>=0.0.20",
|
||
"pyyaml>=6.0.2",
|
||
"rapidocr>=3.0.0",
|
||
"xmltodict>=0.13.0",
|
||
"readability-lxml>=0.8.1",
|
||
"redis>=5.2.0",
|
||
"rich>=13.7.1",
|
||
"sqlalchemy[asyncio]>=2.0.0",
|
||
"tabulate>=0.9.0",
|
||
"tavily-python>=0.7.0",
|
||
"tenacity>=8.0.0",
|
||
"tomli",
|
||
"tomli-w",
|
||
"torch>=2.8.0",
|
||
"torchvision==0.23",
|
||
"tqdm>=4.66.4",
|
||
"typer>=0.16.0",
|
||
"unstructured>=0.17.2",
|
||
"wcmatch>=8.0.0",
|
||
# Markdown 解析语义切分相关依赖
|
||
"markdown-it-py>=3.0.0",
|
||
"mdit-py-plugins>=0.4.0",
|
||
"scikit-learn>=1.3.0",
|
||
"nltk>=3.8.1",
|
||
"beautifulsoup4>=4.12.0",
|
||
]
|
||
|
||
[project.optional-dependencies]
|
||
grpc = [
|
||
"grpcio>=1.64.0",
|
||
"grpcio-reflection>=1.64.0",
|
||
"grpcio-tools>=1.64.0",
|
||
"protobuf>=5.0,<6.0",
|
||
]
|
||
database = [
|
||
"aiomysql>=0.2.0", # MySQL 异步驱动,按需安装
|
||
"motor>=3.0.0", # MongoDB 异步驱动,按需安装
|
||
]
|
||
smtp = [
|
||
"aiosmtplib>=3.0.0", # SMTP 异步客户端,按需安装
|
||
"email-validator>=2.0.0", # 邮箱地址校验,按需安装
|
||
]
|
||
ftp = [
|
||
"aioftp>=0.22.0", # FTP 异步客户端,按需安装
|
||
"asyncssh>=2.14.0", # SFTP 异步客户端,按需安装
|
||
]
|
||
soap = [
|
||
"zeep>=4.0.0", # SOAP/WSDL 客户端,按需安装
|
||
]
|
||
imap = [
|
||
"aioimaplib>=1.0.0", # IMAP 异步客户端,按需安装
|
||
]
|
||
ldap = [
|
||
"ldap3>=2.9.0", # LDAP 客户端,按需安装
|
||
]
|
||
kafka = [
|
||
"aiokafka>=0.11.0", # Kafka 异步客户端,按需安装
|
||
]
|
||
amqp = [
|
||
"aio-pika>=9.0", # AMQP 异步客户端(基于 aiormq),按需安装
|
||
]
|
||
openapi = [
|
||
"openapi-spec-validator>=0.7", # OpenAPI/Swagger 文档校验,按需安装
|
||
]
|
||
bigquery = [
|
||
"google-cloud-bigquery>=3.0.0", # BigQuery SDK,按需安装
|
||
"google-auth>=2.0.0", # Google Auth 库,按需安装
|
||
"google-api-core>=2.0.0", # Google API 核心异常类型,按需安装
|
||
]
|
||
databricks = [
|
||
"databricks-sql-connector>=3.0.0", # Databricks SQL Warehouse 驱动,按需安装
|
||
]
|
||
snowflake = [
|
||
"snowflake-connector-python>=3.0.0", # Snowflake 数据仓库驱动,按需安装
|
||
]
|
||
|
||
[tool.setuptools]
|
||
include-package-data = true
|
||
|
||
[tool.setuptools.packages.find]
|
||
where = ["."]
|
||
include = ["yuxi*"]
|
||
|
||
|
||
[tool.uv]
|
||
|
||
[[tool.uv.index]]
|
||
name = "tsinghua"
|
||
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
|
||
default = true
|
||
|
||
|
||
[[tool.uv.index]]
|
||
name = "pytorch-cpu"
|
||
url = "https://download.pytorch.org/whl/cpu"
|
||
explicit = true
|
||
|
||
[tool.uv.sources]
|
||
yuxi = { path = "package", editable = true }
|
||
torch = { index = "pytorch-cpu" }
|
||
torchvision = { index = "pytorch-cpu" }
|