File size: 1,661 Bytes
fd21f34
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "z-ai2api-python"
version = "0.1.0"
description = "一个为 Z.ai 提供 OpenAI 兼容接口的 Python 代理服务"
readme = "README.md"
requires-python = ">=3.9,<=3.12"
license = { text = "MIT" }
authors = [{ name = "Contributors" }]
classifiers = [
    "Development Status :: 4 - Beta",
    "Intended Audience :: Developers",
    "License :: OSI Approved :: MIT License",
    "Operating System :: OS Independent",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Topic :: Internet :: WWW/HTTP :: HTTP Servers",
    "Topic :: Software Development :: Libraries :: Python Modules",
]
dependencies = [
    "fastapi==0.116.1",
    "granian[reload,pname]==2.5.2",
    "httpx==0.28.1",
    "pydantic==2.11.7",
    "pydantic-settings==2.10.1",
    "pydantic-core==2.33.2",
    "typing-inspection==0.4.1",
    "fake-useragent==2.2.0",
    "loguru==0.7.3",
    "psutil>=7.0.0",
    "json-repair==0.44.1"
]

[project.scripts]
z-ai2api = "main:app"

[tool.hatch.build.targets.wheel]
packages = ["."]

[tool.uv]
dev-dependencies = [
    "pytest>=7.0.0",
    "pytest-asyncio>=0.21.0",
    "requests>=2.30.0",
    "ruff>=0.1.0",
]

[tool.ruff]
line-length = 88
target-version = "py38"
select = ["E", "F", "I", "B"]
ignore = []

[tool.ruff.isort]
known-first-party = []

[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
python_files = ["test_*.py"]
python_functions = ["test_*"]