-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathpyproject.toml
More file actions
126 lines (115 loc) · 3.16 KB
/
pyproject.toml
File metadata and controls
126 lines (115 loc) · 3.16 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
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.poetry]
name = "rag-core-api"
version = "1.0.1"
description = "The core of the rag-template."
authors = ["STACKIT Data and AI Consulting <data-ai-consulting@stackit.cloud>"]
packages = [{ include = "rag_core_api", from = "src" }]
[tool.poetry.dependencies]
python = "^3.13"
rag-core-lib = { path = "../rag-core-lib", develop = true}
uvicorn = "^0.35.0"
langchain-qdrant = "^0.2.0"
dependency-injector = "^4.46.0"
fastapi = "^0.116.0"
requests-oauthlib = "^2.0.0"
qdrant-client = "^1.14.2"
deprecated = "^1.2.18"
datasets = "^3.5.1"
ragas = "^0.3.0"
flashrank = "^0.2.10"
pyyaml = "^6.0.2"
openai = "^1.77.0"
langgraph = "^0.6.0"
pillow = "^11.2.1"
langchain-ollama = "^0.3.2"
pytest-asyncio = "^0.26.0"
langchain-community = "0.3.27"
fastembed = "^0.7.0"
langdetect = "^1.0.9"
langfuse = "3.3.4"
[tool.poetry.group.dev.dependencies]
debugpy = "^1.8.14"
pytest = "^8.3.5"
coverage = "^7.8.0"
flake8 = "^7.2.0"
flake8-black = "^0.3.6"
flake8-pyproject = "^1.2.3"
flake8-quotes = "^3.4.0"
flake8-return = "^1.2.0"
flake8-annotations-complexity = "^0.1.0"
flake8-bandit = "^4.1.1"
flake8-bugbear = "^24.12.12"
flake8-builtins = "^2.5.0"
flake8-comprehensions = "^3.15.0"
flake8-eradicate = "^1.5.0"
flake8-expression-complexity = "^0.0.11"
flake8-pytest-style = "^2.1.0"
pep8-naming = "^0.15.1"
flake8-eol = "^0.0.8"
flake8-exceptions = "^0.0.1a0"
flake8-simplify = "^0.22.0"
flake8-wot = "^0.2.0"
flake8-function-order = "^0.0.5"
flake8-tidy-imports = "^4.10.0"
black = "^25.1.0"
# flake8-logging-format = "^2024.24.12"
# flake8-docstrings = "^1.7.0"
[tool.flake8]
exclude= [".eggs", "src/rag_core_api/models", ".git", ".hg", ".mypy_cache", ".tox", ".venv", ".devcontainer", "venv", "_build", "buck-out", "build", "dist", "**/__init__.py"]
statistics = true
show-source = false
max-complexity = 8
max-annotations-complexity = 3
docstring-convention = 'numpy'
max-line-length = 120
ignore = ["E203", "W503", "E704"]
inline-quotes = '"'
docstring-quotes = '"""'
multiline-quotes = '"""'
dictionaries = ["en_US", "python", "technical", "pandas"]
ban-relative-imports = true
per-file-ignores = """
./src/rag_core_api/prompt_templates/*: E501,D100,
./src/rag_core_api/apis/rag_api.py: B008,WOT001,
./src/rag_core_api/impl/rag_api.py: B008,
./src/rag_core_api/prompt_templates/*: E501,
./src/rag_core_api/dependency_container.py: CCE002,CCE001,
./src/rag_core_api/apis/rag_api_base.py: WOT001,
./tests/rag_api_test.py: E402,S101,S105,I252,D409,
./tests/*: S101,S105,I252,D409,
"""
[tool.black]
line-length = 120
exclude = """
/(
.eggs
| .git
| .hg
| .mypy_cache
| .nox
| .pants.d
| .tox
| .venv
| _build
| buck-out
| build
| dist
| node_modules
| venv
)/
"""
[tool.isort]
profile = "black"
skip = ['.eggs', '.git', '.hg', '.mypy_cache', '.nox', '.pants.d', '.tox', '.venv', '_build', 'buck-out', 'build', 'dist', 'node_modules', 'venv']
skip_gitignore = true
known_local_folder = ["rag_core_api", "rag_core_lib"]
[tool.pylint]
max-line-length = 120
[tool.pytest.ini_options]
log_cli = true
log_cli_level = "DEBUG"
pythonpath = ["src", "tests"]
testpaths = ["tests"]