Spaces:
Sleeping
Sleeping
File size: 842 Bytes
16b7df8 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | from __future__ import annotations
from typing import Any, Literal, Optional
from pydantic import BaseModel, Field
class ExtractedEntity(BaseModel):
label: Literal["Service", "Library", "Incident", "Team"]
name: str
version: Optional[str] = None
properties: dict[str, Any] = Field(default_factory=dict)
class ExtractedRelationship(BaseModel):
from_label: str
from_name: str
rel_type: str
to_label: str
to_name: str
class ExtractionResult(BaseModel):
entities: list[ExtractedEntity] = Field(default_factory=list)
relationships: list[ExtractedRelationship] = Field(default_factory=list)
class GraphIngestRequest(BaseModel):
chunk_ids: list[str]
team_id: str
class GraphTraverseRequest(BaseModel):
type: Literal["incident", "service", "library"]
name: str
team_id: str
|