diff --git a/.env.example b/.env.example index d11cbe3..c715f3c 100644 --- a/.env.example +++ b/.env.example @@ -9,7 +9,6 @@ # Application APP_ENV=local -APP_MAX_UPLOAD_SIZE_MB=25 APP_READINESS_CHECK_TIMEOUT_SECONDS=2.0 # Logging @@ -37,6 +36,7 @@ MINIO_BUCKET=chatbot-source-files INGESTION_MAX_CONCURRENCY=4 INGESTION_THREAD_POOL_SIZE=8 INGESTION_TIMEOUT_SECONDS=120.0 +INGESTION_MAX_UPLOAD_SIZE_MB=25 INGESTION_MAX_CHUNKS_PER_FILE=5000 INGESTION_EMBED_BATCH_SIZE=128 INGESTION_EMBED_CONCURRENCY=4 diff --git a/src/config.py b/src/config.py index 94c1e12..41e00e0 100644 --- a/src/config.py +++ b/src/config.py @@ -38,10 +38,15 @@ class IngestionSettings(BaseSettings): max_concurrency: int = 4 thread_pool_size: int = 8 timeout_seconds: float = 120.0 + max_upload_size_mb: int = 25 max_chunks_per_file: int = 5000 embed_batch_size: int = 128 embed_concurrency: int = 4 + @property + def max_upload_size_bytes(self) -> int: + return self.max_upload_size_mb * 1024 * 1024 + class ChunkingSettings(BaseSettings): """Parsing and chunking parameters (ADR-0018). @@ -86,7 +91,6 @@ class AppLimitSettings(BaseSettings): model_config = SettingsConfigDict(env_prefix="APP_", extra="ignore") env: str = "local" - max_upload_size_mb: int = 25 readiness_check_timeout_seconds: float = 2.0