diff --git a/api/models/InfererConfig.py b/api/models/InfererConfig.py new file mode 100644 index 0000000000000000000000000000000000000000..88b8d5892212bb0e434260da2edfb6aa540a6a51 --- /dev/null +++ b/api/models/InfererConfig.py @@ -0,0 +1,6 @@ +from pydantic import BaseModel + +class InfererConfig(BaseModel): + provider: str + model_id: str + server_url: str \ No newline at end of file diff --git a/api/routers/endpoints.py b/api/routers/endpoints.py index f4007ea16cf6730a1169abb096a28e4caa0e2c3b..b1659d4f342f7f6d0c523f0a0fedee5076d52ff7 100644 --- a/api/routers/endpoints.py +++ b/api/routers/endpoints.py @@ -1,7 +1,9 @@ from fastapi import APIRouter +from api.internal_services import database from api.internal_services.background_worker import add_job_to_queue from api.internal_services.logger import logger import uuid +from api.models.InfererConfig import InfererConfig from api.models.Job import Job, JobType from api.models.Sentence import Sentence from api.models.TrainingBody import TrainingBody @@ -34,4 +36,13 @@ def add_sentence_to_process(training_body: TrainingBody): "huggingface_token": training_body.huggingface_token, } add_job_to_queue(new_job) - return {"message": "Job added to the queue for processing.", "job_id": new_job.job_id} \ No newline at end of file + return {"message": "Job added to the queue for processing.", "job_id": new_job.job_id} + +@router.post("/actions/inferer/config") +def add_sentence_to_process(infererConfig: InfererConfig): + new_config = {'model_id': infererConfig.provider} + if infererConfig.provider == 'BERT': + new_config['model_id'] = infererConfig.model_id + new_config['server_url'] = infererConfig.server_url + + database.update_annotator_config({'model_id': 'GPT'}) \ No newline at end of file