diff --git a/rest_api/config.py b/rest_api/config.py index 56e1e7675..b974fa88f 100644 --- a/rest_api/config.py +++ b/rest_api/config.py @@ -8,3 +8,5 @@ FILE_UPLOAD_PATH = os.getenv("FILE_UPLOAD_PATH", "./file-upload") LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO") ROOT_PATH = os.getenv("ROOT_PATH", "/") + +CONCURRENT_REQUEST_PER_WORKER = os.getenv("CONCURRENT_REQUEST_PER_WORKER", 4) diff --git a/rest_api/controller/search.py b/rest_api/controller/search.py index e2034310b..54425eca7 100644 --- a/rest_api/controller/search.py +++ b/rest_api/controller/search.py @@ -8,7 +8,7 @@ from fastapi import APIRouter from pydantic import BaseModel from haystack import Pipeline -from rest_api.config import PIPELINE_YAML_PATH, LOG_LEVEL, QUERY_PIPELINE_NAME +from rest_api.config import PIPELINE_YAML_PATH, LOG_LEVEL, QUERY_PIPELINE_NAME, CONCURRENT_REQUEST_PER_WORKER from rest_api.controller.utils import RequestLimiter logging.getLogger("haystack").setLevel(LOG_LEVEL) @@ -46,7 +46,7 @@ class Response(BaseModel): PIPELINE = Pipeline.load_from_yaml(Path(PIPELINE_YAML_PATH), pipeline_name=QUERY_PIPELINE_NAME) logger.info(f"Loaded pipeline nodes: {PIPELINE.graph.nodes.keys()}") -concurrency_limiter = RequestLimiter(4) +concurrency_limiter = RequestLimiter(CONCURRENT_REQUEST_PER_WORKER) @router.post("/query", response_model=Response)