Skip to content

Pydantic Models

AnkiExportResponse

Bases: BaseModel

Pydantic Model for Anki Export Endpoint Response

Parameters:

Name Type Description Default
anki_deck_url str

The media URL from FastAPI stactic media serving to the deck file.

required

BreakdownRequest

Bases: BaseModel

Pydantic Model for the /gpt/breakdown request.

Parameters:

Name Type Description Default
sentence str

The sentence to breakdown.

required
focus str

Optional focus word.

required

BreakdownResponse

Bases: BaseModel

Pydantic Model for the /gpt/breakdown response.

Parameters:

Name Type Description Default
sentence str

The analyzed sentence.

required
focus FocusInfo

The FocusInfo model.

required
tokens list

List of Token models.

required
gpt_explanation str

The GPT API call response.

required

ChatRequest

Bases: BaseModel

Pydantic Model for the /gpt/stream request.

Parameters:

Name Type Description Default
prompt str

The model prompt.

required
model str

The GPT version.

required
system_message str

The GPT system message

required

ClipResponse

Bases: BaseModel

Pydantic Model for the /profile/clips request.

Parameters:

Name Type Description Default
id str

Clip's ID in database.

required
get_url str

URL where FastAPI is serving the stactic file.

required
breakdown_response str

JSON string of BreakdownResponse model.

required

CustomBreakdownRequest

Bases: BaseModel

Pydantic Model for the /gpt/custom_breakdown request.

Parameters:

Name Type Description Default
sentence str

The sentence to analyze

required
focus str

The optinal focus word.

required
sysMsg str

The custom system message for the model.

required
prompt str

The custom prompt for the model.

required
version str

The custom model version

required

ClipResponse

Bases: BaseModel

Pydantic Model for the /profile/clips request.

Parameters:

Name Type Description Default
id str

Clip's ID in database.

required
get_url str

URL where FastAPI is serving the stactic file.

required
breakdown_response str

JSON string of BreakdownResponse model.

required

DictLookup

Bases: BaseModel

Pydantic Model representing information extracted from kotobase for a query word.

Parameters:

Name Type Description Default
word str

Query word.

required
jmentries list

List of JMEntry models.

required
jmnentries list

List of JMNEntry models.

required
kanji list

List of KanjiInfo models.

required
meanings list

List of gloss strings from the first entry's sense

required
jlpt str

JLPT vocabulary level for the word or 'Unkonwn'

required
examples list

List of example sentences.

required

DictWildcardLookup

Bases: BaseModel

Pydantic Model representing information extracted from kotobase for a query word.

Parameters:

Name Type Description Default
pattern str

Query word.

required
jmentries list

List of JMEntry models.

required
jmnentries list

List of JMNEntry models.

required
kanji list

List of KanjiInfo models.

required
examples list

List of example sentences.

required

FocusInfo

Bases: BaseModel

Pydantic Model representing information about the focus word of a sentence breakdown request.

Parameters:

Name Type Description Default
word str

Word to breakdown.

required
reading str

Word Kana.

required
meanings list

List of meanings for the word.

required
jlpt str

JLPT vocabulary level for the word or 'Unkonwn'

required
examples list

List of example sentences.

required

GptTemplateBase

Bases: BaseModel

Pydantic Model representing the base for a profile's gpt template.

Parameters:

Name Type Description Default
sys_msg str

The GPT's system message

required
prompt str

Prompt to use for calls

required
version str

The GPT model version to use

required

GptTemplateResponse

Bases: GptTemplateBase

Pydantic Model representing the response of profile/gpt_template endpoint.

Parameters:

Name Type Description Default
id str

The database ID of the template.

required

JMEntry

Bases: BaseModel

Pydantic Model representing a single JMDictEntry for a queried word.

Parameters:

Name Type Description Default
rank int

Priority rank for entry

required
kana list

List of kana readings

required
kanji list

List of kanji readings

required
senses list

List of WordSense models

required

JMNEntry

Bases: BaseModel

Pydantic Model representing a single JMNeDictEntry for a queried word.

Parameters:

Name Type Description Default
kana list

List of kana readings

required
kanji list

List of kanji readings

required
translation_type str

Type of name

required
gloss list

List of translation strings

required

KanjiInfo

Bases: BaseModel

Pydantic Model representing a single Kanji entry from KANJIDIC2

Parameters:

Name Type Description Default
literal str

String of Kanji Literal

required
grade int

Optional Integer of Japanese Grade in which Kanji is learned

required
stroke_count int

Integer representing number of strokes in handwriting.

required
meanings List[str]

List of String representing known meanings.

required
onyomi List[str]

List of strings representing on readings.

required
kunyomi List[str]

List of strings representing kun readings.

required
jlpt_kanjidic int

Optional Integer representing JLPT level in KANJIDIC2

required
jlpt_tanos int

Optional Integer representing JLPT level in Tanos list.

required

ProfileFileResponse

Bases: BaseModel

Pydantic Model representing the response of profile/files endpoint.

Parameters:

Name Type Description Default
id str

The database ID of the file

required
file_name str

Base file name.

required
get_url str

URL where FastAPI is serving the stactic file.

required
file_type str

Optional information about file.

required
created_at str

Optional creation date information.

required

ProfileTranscriptResponse

Bases: BaseModel

Pydantic Model representing the response of profile/transcripts endpoint.

Parameters:

Name Type Description Default
id str

The database ID of the transcript

required
transcript str

Transcript text.

required
original_file_name str

Optional name of the audio file transcribed.

required
gpt_explanation str

Optional GPT explanation for the transcription if it was created.

required
get_url str

Optional URL where FastAPI is serving the transcribed audio file

required
created_at str

Optional information about creation date.

required

Token

Bases: BaseModel

Pydantic Model representing a Token from an analyzed Japanese sentence

Parameters:

Name Type Description Default
surface str

The word as it was written

required
lemma str

Dictionary lemma of word.

required
reading str

Word Kana.

required
pos str

Word's part of speech.

required

WordSense

Bases: BaseModel

Pydantic Model representing a single sense on a JMDictEntry model

Parameters:

Name Type Description Default
order int

Sense order of precedence

required
pos str

Sense part of speech

required
gloss str

Sense gloss

required