This commit is contained in:
2025-09-08 16:36:17 +08:00
parent 99b50e92cf
commit e024a7ae46

View File

@@ -0,0 +1,28 @@
from datetime import datetime
from typing import List, Optional
from pgvector.sqlalchemy import VECTOR
from pydantic import BaseModel
from sqlalchemy import Column, Text, BigInteger, DateTime, Identity
from sqlmodel import SQLModel, Field
class Terminology(SQLModel, table=True):
__tablename__ = "terminology"
id: Optional[int] = Field(sa_column=Column(BigInteger, Identity(always=True), primary_key=True))
oid: Optional[int] = Field(sa_column=Column(BigInteger, nullable=True, default=1))
pid: Optional[int] = Field(sa_column=Column(BigInteger, nullable=True))
create_time: Optional[datetime] = Field(sa_column=Column(DateTime(timezone=False), nullable=True))
word: Optional[str] = Field(max_length=255)
description: Optional[str] = Field(sa_column=Column(Text, nullable=True))
embedding: Optional[List[float]] = Field(sa_column=Column(VECTOR(), nullable=True))
class TerminologyInfo(BaseModel):
id: Optional[int] = None
create_time: Optional[datetime] = None
word: Optional[str] = None
description: Optional[str] = None
other_words: Optional[List[str]] = []