48 lines
822 B
Python
48 lines
822 B
Python
|
|
from pydantic import BaseModel
|
||
|
|
|
||
|
|
|
||
|
|
class TextQAItem(BaseModel):
|
||
|
|
subject: str
|
||
|
|
predicate: str
|
||
|
|
object: str
|
||
|
|
source_snippet: str
|
||
|
|
|
||
|
|
|
||
|
|
class GenTextQARequest(BaseModel):
|
||
|
|
items: list[TextQAItem]
|
||
|
|
model: str | None = None
|
||
|
|
prompt_template: str | None = None
|
||
|
|
|
||
|
|
|
||
|
|
class QAPair(BaseModel):
|
||
|
|
question: str
|
||
|
|
answer: str
|
||
|
|
|
||
|
|
|
||
|
|
class ImageQAItem(BaseModel):
|
||
|
|
subject: str
|
||
|
|
predicate: str
|
||
|
|
object: str
|
||
|
|
qualifier: str | None = None
|
||
|
|
cropped_image_path: str
|
||
|
|
|
||
|
|
|
||
|
|
class GenImageQARequest(BaseModel):
|
||
|
|
items: list[ImageQAItem]
|
||
|
|
model: str | None = None
|
||
|
|
prompt_template: str | None = None
|
||
|
|
|
||
|
|
|
||
|
|
class ImageQAPair(BaseModel):
|
||
|
|
question: str
|
||
|
|
answer: str
|
||
|
|
image_path: str
|
||
|
|
|
||
|
|
|
||
|
|
class TextQAResponse(BaseModel):
|
||
|
|
pairs: list[QAPair]
|
||
|
|
|
||
|
|
|
||
|
|
class ImageQAResponse(BaseModel):
|
||
|
|
pairs: list[ImageQAPair]
|