api: implement first server API + tests

This commit is contained in:
Mathieu Virbel
2023-08-04 18:16:37 +02:00
parent 20767fde3f
commit 96f52c631a
8 changed files with 327 additions and 23 deletions

View File

@@ -1,9 +1,8 @@
from dataclasses import dataclass
from pydantic import BaseModel
from pathlib import Path
@dataclass
class AudioFile:
class AudioFile(BaseModel):
path: Path
sample_rate: int
channels: int
@@ -14,15 +13,13 @@ class AudioFile:
self.path.unlink()
@dataclass
class Word:
class Word(BaseModel):
text: str
start: float
end: float
@dataclass
class Transcript:
class Transcript(BaseModel):
text: str = ""
words: list[Word] = None
@@ -59,8 +56,7 @@ class Transcript:
return Transcript(text=self.text, words=words)
@dataclass
class TitleSummary:
class TitleSummary(BaseModel):
title: str
summary: str
timestamp: float
@@ -75,7 +71,6 @@ class TitleSummary:
return f"{minutes:02d}:{seconds:02d}.{milliseconds:03d}"
@dataclass
class FinalSummary:
class FinalSummary(BaseModel):
summary: str
duration: float