Promote focused small-building detector
GeoIntel CI / docs-smoke (push) Canceled after 0s
GeoIntel CI / contract-smoke (push) Canceled after 0s

This commit is contained in:
Codex
2026-07-13 12:15:27 +02:00
parent b3f7c3ca63
commit 1689dce928
20 changed files with 546 additions and 61 deletions
+15 -5
View File
@@ -3,10 +3,12 @@ from __future__ import annotations
from datetime import datetime
from uuid import UUID
from pydantic import BaseModel, Field
from pydantic import BaseModel, ConfigDict, Field
class DetectionModelCapability(BaseModel):
model_config = ConfigDict(protected_namespaces=())
model_id: str
display_name: str
framework: str
@@ -23,6 +25,8 @@ class DetectionModelsResponse(BaseModel):
class ModelAssetRead(BaseModel):
model_config = ConfigDict(protected_namespaces=())
model_asset_id: str
filename: str
display_name: str
@@ -39,12 +43,16 @@ class ModelAssetRead(BaseModel):
class ModelAssetListResponse(BaseModel):
model_config = ConfigDict(protected_namespaces=())
items: list[ModelAssetRead]
total: int
model_directory: str
class DetectionRunRequest(BaseModel):
model_config = ConfigDict(protected_namespaces=())
project_id: UUID
dataset_id: UUID
model_id: str
@@ -63,6 +71,8 @@ class DetectionQaRequest(BaseModel):
class DetectionRunResponse(BaseModel):
model_config = ConfigDict(protected_namespaces=())
analysis_run_id: UUID
job_id: UUID
project_id: UUID
@@ -75,6 +85,8 @@ class DetectionRunResponse(BaseModel):
class DetectionRunRead(BaseModel):
model_config = ConfigDict(from_attributes=True, protected_namespaces=())
id: UUID
project_id: UUID
dataset_id: UUID | None = None
@@ -90,8 +102,6 @@ class DetectionRunRead(BaseModel):
started_at: datetime | None = None
finished_at: datetime | None = None
model_config = {"from_attributes": True}
class DetectionRunListResponse(BaseModel):
items: list[DetectionRunRead]
@@ -99,6 +109,8 @@ class DetectionRunListResponse(BaseModel):
class DetectionRead(BaseModel):
model_config = ConfigDict(from_attributes=True, protected_namespaces=())
id: UUID
project_id: UUID
dataset_id: UUID | None = None
@@ -113,8 +125,6 @@ class DetectionRead(BaseModel):
properties_json: dict | None = None
created_at: datetime | None = None
model_config = {"from_attributes": True}
class DetectionListResponse(BaseModel):
items: list[DetectionRead]
+9 -5
View File
@@ -3,7 +3,7 @@ from __future__ import annotations
from datetime import datetime
from uuid import UUID
from pydantic import BaseModel, Field
from pydantic import BaseModel, ConfigDict, Field
from app.schemas.detection import DetectionModelCapability
@@ -16,6 +16,8 @@ class SegmentationModelsResponse(BaseModel):
class SegmentationRunRequest(BaseModel):
model_config = ConfigDict(protected_namespaces=())
project_id: UUID
dataset_id: UUID
model_id: str
@@ -33,6 +35,8 @@ class SegmentationQaRequest(BaseModel):
class SegmentationRunResponse(BaseModel):
model_config = ConfigDict(protected_namespaces=())
analysis_run_id: UUID
job_id: UUID
project_id: UUID
@@ -45,6 +49,8 @@ class SegmentationRunResponse(BaseModel):
class SegmentationRunRead(BaseModel):
model_config = ConfigDict(from_attributes=True, protected_namespaces=())
id: UUID
project_id: UUID
dataset_id: UUID | None = None
@@ -60,8 +66,6 @@ class SegmentationRunRead(BaseModel):
started_at: datetime | None = None
finished_at: datetime | None = None
model_config = {"from_attributes": True}
class SegmentationRunListResponse(BaseModel):
items: list[SegmentationRunRead]
@@ -69,6 +73,8 @@ class SegmentationRunListResponse(BaseModel):
class SegmentationRead(BaseModel):
model_config = ConfigDict(from_attributes=True, protected_namespaces=())
id: UUID
project_id: UUID
dataset_id: UUID | None = None
@@ -87,8 +93,6 @@ class SegmentationRead(BaseModel):
provenance_json: dict | None = None
created_at: datetime | None = None
model_config = {"from_attributes": True}
class SegmentationListResponse(BaseModel):
items: list[SegmentationRead]