admin-api-lib 3.3.0__tar.gz → 3.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/PKG-INFO +4 -3
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/pyproject.toml +4 -5
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/file_uploader.py +2 -1
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/source_uploader.py +1 -1
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/uploader_base.py +1 -3
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/apis/admin_api.py +2 -2
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/api_endpoints/default_document_reference_retriever.py +3 -5
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/api_endpoints/default_file_uploader.py +12 -14
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/api_endpoints/default_source_uploader.py +9 -7
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/README.md +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/document_deleter.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/document_reference_retriever.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/documents_status_retriever.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/apis/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/apis/admin_api_base.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/chunker/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/chunker/chunker.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/dependency_container.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/api/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/api/extractor_api.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/api_client.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/api_response.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/configuration.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/exceptions.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/models/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/models/content_type.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/models/extraction_parameters.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/models/extraction_request.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/models/information_piece.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/models/key_value_pair.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/rest.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/test/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/test/test_content_type.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/test/test_extraction_parameters.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/test/test_extraction_request.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/test/test_extractor_api.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/test/test_information_piece.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/openapi_client/test/test_key_value_pair.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/file_services/file_service.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/admin_api.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/api_endpoints/default_document_deleter.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/api_endpoints/default_documents_status_retriever.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/chunker/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/chunker/chunker_type.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/chunker/semantic_text_chunker.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/chunker/text_chunker.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/file_services/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/file_services/s3_service.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/information_enhancer/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/information_enhancer/general_enhancer.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/information_enhancer/page_summary_enhancer.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/information_enhancer/summary_enhancer.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/key_db/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/key_db/file_status_key_value_store.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/mapper/informationpiece2document.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/chunker_class_type_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/chunker_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/document_extractor_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/key_value_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/rag_api_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/s3_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/source_uploader_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/summarizer_settings.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/summarizer/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/summarizer/langchain_summarizer.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/information_enhancer/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/information_enhancer/information_enhancer.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/main.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/document_status.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/extra_models.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/http_validation_error.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/key_value_pair.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/status.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/validation_error.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/validation_error_loc_inner.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/prompt_templates/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/prompt_templates/summarize_prompt.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/api/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/api/rag_api.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/api_client.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/api_response.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/configuration.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/exceptions.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/chat_history.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/chat_history_message.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/chat_request.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/chat_response.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/chat_role.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/content_type.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/delete_request.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/information_piece.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/models/key_value_pair.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/openapi_client/rest.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/summarizer/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/summarizer/summarizer.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/utils/__init__.py +0 -0
- {admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/utils/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: admin-api-lib
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.4.0
|
|
4
4
|
Summary: The admin backend is responsible for the document management. This includes deletion, upload and returning the source document.
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Author: STACKIT GmbH & Co. KG
|
|
@@ -11,6 +11,7 @@ Requires-Python: >=3.13,<4.0
|
|
|
11
11
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
12
12
|
Classifier: Programming Language :: Python :: 3
|
|
13
13
|
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
14
15
|
Requires-Dist: boto3 (>=1.38.10,<2.0.0)
|
|
15
16
|
Requires-Dist: dependency-injector (>=4.46.0,<5.0.0)
|
|
16
17
|
Requires-Dist: fastapi (>=0.118.0,<0.119.0)
|
|
@@ -20,7 +21,7 @@ Requires-Dist: nltk (>=3.9.2,<4.0.0)
|
|
|
20
21
|
Requires-Dist: python-dateutil (>=2.9.0.post0,<3.0.0)
|
|
21
22
|
Requires-Dist: python-multipart (>=0.0.20,<0.0.21)
|
|
22
23
|
Requires-Dist: pyyaml (>=6.0.2,<7.0.0)
|
|
23
|
-
Requires-Dist: rag-core-lib (
|
|
24
|
+
Requires-Dist: rag-core-lib (==3.4.0)
|
|
24
25
|
Requires-Dist: redis (>=6.0.0,<7.0.0)
|
|
25
26
|
Requires-Dist: starlette (>=0.47.2,<0.49.0)
|
|
26
27
|
Requires-Dist: tenacity (==9.1.2)
|
|
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
|
|
|
4
4
|
|
|
5
5
|
[tool.poetry]
|
|
6
6
|
name = "admin-api-lib"
|
|
7
|
-
version = "v3.
|
|
7
|
+
version = "v3.4.0"
|
|
8
8
|
description = "The admin backend is responsible for the document management. This includes deletion, upload and returning the source document."
|
|
9
9
|
authors = [
|
|
10
10
|
"STACKIT GmbH & Co. KG <data-ai@stackit.cloud>",
|
|
@@ -99,12 +99,12 @@ flake8-wot = "^0.2.0"
|
|
|
99
99
|
flake8-function-order = "^0.0.5"
|
|
100
100
|
flake8-tidy-imports = "^4.10.0"
|
|
101
101
|
black = "^25.1.0"
|
|
102
|
-
|
|
103
|
-
|
|
102
|
+
flake8-logging-format = "^2024.24.12"
|
|
103
|
+
flake8-docstrings = "^1.7.0"
|
|
104
104
|
pytest-asyncio = "^1.0.0"
|
|
105
105
|
|
|
106
106
|
[tool.poetry.dependencies]
|
|
107
|
-
rag-core-lib = "
|
|
107
|
+
rag-core-lib = "3.4.0"
|
|
108
108
|
python = "^3.13"
|
|
109
109
|
uvicorn = "^0.37.0"
|
|
110
110
|
fastapi = "^0.118.0"
|
|
@@ -127,7 +127,6 @@ log_cli_level = "DEBUG"
|
|
|
127
127
|
pythonpath = "src"
|
|
128
128
|
testpaths = "src/tests"
|
|
129
129
|
|
|
130
|
-
|
|
131
130
|
[[tool.poetry.source]]
|
|
132
131
|
name = "testpypi"
|
|
133
132
|
url = "https://test.pypi.org/simple/"
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/file_uploader.py
RENAMED
|
@@ -8,6 +8,7 @@ from admin_api_lib.api_endpoints.uploader_base import UploaderBase
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class FileUploader(UploaderBase):
|
|
11
|
+
"""File uploader endpoint of the admin API."""
|
|
11
12
|
|
|
12
13
|
@abstractmethod
|
|
13
14
|
async def upload_file(
|
|
@@ -16,7 +17,7 @@ class FileUploader(UploaderBase):
|
|
|
16
17
|
file: UploadFile,
|
|
17
18
|
) -> None:
|
|
18
19
|
"""
|
|
19
|
-
|
|
20
|
+
Upload a source file for content extraction.
|
|
20
21
|
|
|
21
22
|
Parameters
|
|
22
23
|
----------
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/uploader_base.py
RENAMED
|
@@ -7,9 +7,7 @@ class UploaderBase:
|
|
|
7
7
|
"""Base class for uploader API endpoints."""
|
|
8
8
|
|
|
9
9
|
def __init__(self):
|
|
10
|
-
"""
|
|
11
|
-
Initialize the UploaderBase.
|
|
12
|
-
"""
|
|
10
|
+
"""Initialize the UploaderBase."""
|
|
13
11
|
self._background_threads = []
|
|
14
12
|
|
|
15
13
|
def _prune_background_threads(self) -> list[Thread]:
|
|
@@ -149,7 +149,7 @@ async def upload_file(
|
|
|
149
149
|
request: Request,
|
|
150
150
|
) -> None:
|
|
151
151
|
"""
|
|
152
|
-
|
|
152
|
+
Upload user selected sources.
|
|
153
153
|
|
|
154
154
|
Parameters
|
|
155
155
|
----------
|
|
@@ -181,7 +181,7 @@ async def upload_source(
|
|
|
181
181
|
key_value_pair: List[KeyValuePair] = Body(None, description="The key-value pairs for the source"),
|
|
182
182
|
) -> None:
|
|
183
183
|
"""
|
|
184
|
-
|
|
184
|
+
Upload user selected sources.
|
|
185
185
|
|
|
186
186
|
Parameters
|
|
187
187
|
----------
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import io
|
|
4
4
|
import logging
|
|
5
|
-
import traceback
|
|
6
5
|
|
|
7
6
|
from fastapi import HTTPException, Response, status
|
|
8
7
|
|
|
@@ -54,10 +53,9 @@ class DefaultDocumentReferenceRetriever(DocumentReferenceRetriever):
|
|
|
54
53
|
self._file_service.download_file(identification, document_buffer)
|
|
55
54
|
logger.debug("DONE retrieving document with id: %s", identification)
|
|
56
55
|
document_data = document_buffer.getvalue()
|
|
57
|
-
except Exception
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
)
|
|
56
|
+
except Exception:
|
|
57
|
+
# Log full stack trace without embedding the exception object in the message (G200)
|
|
58
|
+
logger.exception("Error retrieving document with id: %s.", identification)
|
|
61
59
|
raise ValueError(f"Document with id '{identification}' not found.")
|
|
62
60
|
finally:
|
|
63
61
|
document_buffer.close()
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
"""Module for the default file uploader implementation."""
|
|
2
|
+
|
|
1
3
|
import logging
|
|
2
4
|
from pathlib import Path
|
|
3
|
-
import traceback
|
|
4
5
|
import urllib
|
|
5
6
|
import tempfile
|
|
6
7
|
import asyncio
|
|
@@ -78,7 +79,7 @@ class DefaultFileUploader(FileUploader):
|
|
|
78
79
|
file: UploadFile,
|
|
79
80
|
) -> None:
|
|
80
81
|
"""
|
|
81
|
-
|
|
82
|
+
Upload a source file for content extraction.
|
|
82
83
|
|
|
83
84
|
Parameters
|
|
84
85
|
----------
|
|
@@ -109,7 +110,7 @@ class DefaultFileUploader(FileUploader):
|
|
|
109
110
|
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e))
|
|
110
111
|
except Exception as e:
|
|
111
112
|
self._key_value_store.upsert(source_name, Status.ERROR)
|
|
112
|
-
logger.
|
|
113
|
+
logger.exception("Error while uploading %s", source_name)
|
|
113
114
|
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail=str(e))
|
|
114
115
|
|
|
115
116
|
def _log_task_exception(self, task: asyncio.Task) -> None:
|
|
@@ -124,19 +125,16 @@ class DefaultFileUploader(FileUploader):
|
|
|
124
125
|
if task.done() and not task.cancelled():
|
|
125
126
|
try:
|
|
126
127
|
task.result() # This will raise the exception if one occurred
|
|
127
|
-
except Exception
|
|
128
|
-
logger.
|
|
129
|
-
logger.debug("Background task exception traceback: %s", traceback.format_exc())
|
|
128
|
+
except Exception:
|
|
129
|
+
logger.exception("Background task failed with exception.")
|
|
130
130
|
|
|
131
131
|
def _prune_background_tasks(self) -> None:
|
|
132
|
-
"""
|
|
133
|
-
Remove completed background tasks from the list.
|
|
134
|
-
"""
|
|
132
|
+
"""Remove completed background tasks from the list."""
|
|
135
133
|
self._background_tasks = [task for task in self._background_tasks if not task.done()]
|
|
136
134
|
|
|
137
135
|
def _check_if_already_in_processing(self, source_name: str) -> None:
|
|
138
136
|
"""
|
|
139
|
-
|
|
137
|
+
Check if the source is already in processing state.
|
|
140
138
|
|
|
141
139
|
Parameters
|
|
142
140
|
----------
|
|
@@ -196,9 +194,9 @@ class DefaultFileUploader(FileUploader):
|
|
|
196
194
|
await asyncio.to_thread(self._rag_api.upload_information_piece, rag_information_pieces)
|
|
197
195
|
self._key_value_store.upsert(source_name, Status.READY)
|
|
198
196
|
logger.info("Source uploaded successfully: %s", source_name)
|
|
199
|
-
except Exception
|
|
197
|
+
except Exception:
|
|
200
198
|
self._key_value_store.upsert(source_name, Status.ERROR)
|
|
201
|
-
logger.
|
|
199
|
+
logger.exception("Error while uploading %s", source_name)
|
|
202
200
|
|
|
203
201
|
def _add_file_url(self, file_name: str, base_url: str, chunked_documents: list[Document]):
|
|
204
202
|
document_url = f"{base_url.rstrip('/')}/document_reference/{urllib.parse.quote_plus(file_name)}"
|
|
@@ -229,6 +227,6 @@ class DefaultFileUploader(FileUploader):
|
|
|
229
227
|
|
|
230
228
|
self._file_service.upload_file(Path(temp_file_path), filename)
|
|
231
229
|
return filename
|
|
232
|
-
except Exception
|
|
233
|
-
logger.
|
|
230
|
+
except Exception:
|
|
231
|
+
logger.exception("Error during document saving")
|
|
234
232
|
self._key_value_store.upsert(source_name, Status.ERROR)
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"""Module for the default source uploader implementation."""
|
|
2
|
+
|
|
1
3
|
import logging
|
|
2
4
|
import asyncio
|
|
3
5
|
from threading import Thread
|
|
@@ -28,6 +30,7 @@ logger = logging.getLogger(__name__)
|
|
|
28
30
|
|
|
29
31
|
|
|
30
32
|
class DefaultSourceUploader(SourceUploader):
|
|
33
|
+
"""The DefaultSourceUploader is responsible for uploading source files for content extraction."""
|
|
31
34
|
|
|
32
35
|
def __init__(
|
|
33
36
|
self,
|
|
@@ -78,7 +81,7 @@ class DefaultSourceUploader(SourceUploader):
|
|
|
78
81
|
kwargs: list[KeyValuePair],
|
|
79
82
|
) -> None:
|
|
80
83
|
"""
|
|
81
|
-
|
|
84
|
+
Upload the parameters for source content extraction.
|
|
82
85
|
|
|
83
86
|
Parameters
|
|
84
87
|
----------
|
|
@@ -95,7 +98,6 @@ class DefaultSourceUploader(SourceUploader):
|
|
|
95
98
|
-------
|
|
96
99
|
None
|
|
97
100
|
"""
|
|
98
|
-
|
|
99
101
|
self._prune_background_threads()
|
|
100
102
|
|
|
101
103
|
source_name = f"{source_type}:{sanitize_document_name(name)}"
|
|
@@ -111,12 +113,12 @@ class DefaultSourceUploader(SourceUploader):
|
|
|
111
113
|
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e))
|
|
112
114
|
except Exception as e:
|
|
113
115
|
self._key_value_store.upsert(source_name, Status.ERROR)
|
|
114
|
-
logger.
|
|
116
|
+
logger.exception("Error while uploading %s", source_name)
|
|
115
117
|
raise HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, detail=str(e))
|
|
116
118
|
|
|
117
119
|
def _check_if_already_in_processing(self, source_name: str) -> None:
|
|
118
120
|
"""
|
|
119
|
-
|
|
121
|
+
Check if the source is already in processing state.
|
|
120
122
|
|
|
121
123
|
Parameters
|
|
122
124
|
----------
|
|
@@ -150,7 +152,7 @@ class DefaultSourceUploader(SourceUploader):
|
|
|
150
152
|
logger.error("Upload of %s timed out after %s seconds", source_name, timeout)
|
|
151
153
|
self._key_value_store.upsert(source_name, Status.ERROR)
|
|
152
154
|
except Exception:
|
|
153
|
-
logger.
|
|
155
|
+
logger.exception("Error while uploading %s", source_name)
|
|
154
156
|
self._key_value_store.upsert(source_name, Status.ERROR)
|
|
155
157
|
finally:
|
|
156
158
|
loop.close()
|
|
@@ -197,6 +199,6 @@ class DefaultSourceUploader(SourceUploader):
|
|
|
197
199
|
await asyncio.to_thread(self._rag_api.upload_information_piece, rag_information_pieces)
|
|
198
200
|
self._key_value_store.upsert(source_name, Status.READY)
|
|
199
201
|
logger.info("Source uploaded successfully: %s", source_name)
|
|
200
|
-
except Exception
|
|
202
|
+
except Exception:
|
|
201
203
|
self._key_value_store.upsert(source_name, Status.ERROR)
|
|
202
|
-
logger.
|
|
204
|
+
logger.exception("Error while uploading %s", source_name)
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/api_endpoints/document_deleter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/extractor_api_client/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/chunker/semantic_text_chunker.py
RENAMED
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/file_services/__init__.py
RENAMED
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/file_services/s3_service.py
RENAMED
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/information_enhancer/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/chunker_settings.py
RENAMED
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/key_value_settings.py
RENAMED
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/rag_api_settings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/impl/settings/summarizer_settings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/information_enhancer/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/http_validation_error.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/models/validation_error_loc_inner.py
RENAMED
|
File without changes
|
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/prompt_templates/summarize_prompt.py
RENAMED
|
File without changes
|
{admin_api_lib-3.3.0 → admin_api_lib-3.4.0}/src/admin_api_lib/rag_backend_client/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|