chore: rename dtos.py => schemas.py

This commit is contained in:
Felix Spöttel
2023-02-08 16:25:22 +01:00
parent f02fb9d1c7
commit 7c3b86d4a5
6 changed files with 25 additions and 25 deletions

View File

@@ -4,7 +4,7 @@ from uuid import UUID
from celery import Task
from sqlalchemy.orm import Session
import app.shared.db.dtos as dtos
import app.shared.db.schemas as schemas
import app.shared.db.models as models
from app.shared.celery import get_celery_binding
from app.shared.db.base import SessionLocal
@@ -19,52 +19,52 @@ def transcribe(self: Task, job_id: UUID) -> None:
db: Session = SessionLocal()
job = db.query(models.Job).filter(models.Job.id == job_id).one()
if job.status == dtos.JobStatus.error or job.status == dtos.JobStatus.success:
if job.status == schemas.JobStatus.error or job.status == schemas.JobStatus.success:
logger.warn(
"[{job.id}]: Received job that has already been processed, abort."
)
return
job.meta = {"task_id": self.request.id}
job.status = dtos.JobStatus.processing
job.status = schemas.JobStatus.processing
db.commit()
logger.info(f"[{job.id}]: set task to status processing.")
# pick a transcription strategy.
# currently only `local` is supported.
job_record = dtos.Job.from_orm(job)
job_record = schemas.Job.from_orm(job)
strategy = LocalStrategy(
db=db, job_id=job.id, url=job_record.url, config=job_record.config
)
# process selected task.
# currently only `transcribe` is supported.
if job.type == dtos.JobType.transcript:
if job.type == schemas.JobType.transcript:
result = strategy.transcribe()
logger.info(f"[{job.id}]: successfully transcribed audio.")
elif job.type == dtos.JobType.translation:
elif job.type == schemas.JobType.translation:
result = strategy.translate()
logger.info(f"[{job.id}]: successfully translated audio.")
else:
result = strategy.detect_language()
artifact = models.Artifact(
job_id=str(job.id), data=result, type=dtos.ArtifactType.raw_transcript
job_id=str(job.id), data=result, type=schemas.ArtifactType.raw_transcript
)
db.add(artifact)
db.commit()
logger.info(f"[{job.id}]: successfully stored artifact.")
job.status = dtos.JobStatus.success
job.status = schemas.JobStatus.success
db.commit()
logger.info(f"[{job.id}]: set task to status success.")
except Exception as e:
if job and db:
job.meta = {**job.meta.__dict__, "error": str(e)}
job.status = dtos.JobStatus.error
job.status = schemas.JobStatus.error
db.commit()
raise (e)
finally: