Add FastAPI endpoint and catalog loader
This commit is contained in:
1 parent
033036db76
commit
daf107feed
10 files changed
+694
No files matched your search
@@ -0,0 +1,32 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import Literal
|
||||
|
||||
from pydantic import BaseModel, ConfigDict, Field
|
||||
|
||||
|
||||
class MatchRequest(BaseModel):
|
||||
model_config = ConfigDict(extra="forbid")
|
||||
|
||||
messages: list[str] = Field(default_factory=list)
|
||||
|
||||
|
||||
class Candidate(BaseModel):
|
||||
model_config = ConfigDict(extra="forbid")
|
||||
|
||||
sku: str
|
||||
confidence: float = Field(ge=0.0, le=1.0)
|
||||
|
||||
|
||||
class MatchResult(BaseModel):
|
||||
model_config = ConfigDict(extra="forbid")
|
||||
|
||||
message: str
|
||||
status: Literal["matched", "ambiguous", "not_found"]
|
||||
candidates: list[Candidate]
|
||||
|
||||
|
||||
class MatchResponse(BaseModel):
|
||||
model_config = ConfigDict(extra="forbid")
|
||||
|
||||
results: list[MatchResult]
|
||||
Reference in new issue
Block a user