Add dataset QA and custom YOLO training flow
This commit is contained in:
@@ -16,12 +16,12 @@ from .coverage import get_coverage_report
|
||||
from .jobs import cancel_job, create_job
|
||||
from .modules.results.service import scan_results, scan_training_curves
|
||||
from .modules.system.service import disk_usage, get_conda_envs, get_gpus
|
||||
from .modules.dataset.service import create_dataset, list_uploaded_datasets, save_upload
|
||||
from .modules.dataset.service import create_dataset, generate_yolo_dataset_yaml, list_uploaded_datasets, save_upload, validate_dataset
|
||||
from .modules.weights.service import load_manifest, sync_weights, verify_weights
|
||||
from .agents.evaluation_agent import evaluate_project
|
||||
from .agents.validation_agent import validate_project
|
||||
from .paths import ensure_inside
|
||||
from .schemas import DatasetCreate, JobCreate, ProfileCreate, WeightSyncRequest
|
||||
from .schemas import DatasetCreate, DatasetYoloYamlRequest, JobCreate, ProfileCreate, WeightSyncRequest
|
||||
|
||||
app = FastAPI(title="Seg Data Server Net", version="0.1.0")
|
||||
|
||||
@@ -109,6 +109,19 @@ async def api_upload_dataset_files(dataset_name: str, kind: str, files: list[Upl
|
||||
raise HTTPException(status_code=400, detail=str(exc)) from exc
|
||||
|
||||
|
||||
@app.get("/api/datasets/{dataset_name}/validate")
|
||||
def api_validate_dataset(dataset_name: str) -> dict:
|
||||
return validate_dataset(dataset_name)
|
||||
|
||||
|
||||
@app.post("/api/datasets/{dataset_name}/yolo-yaml")
|
||||
def api_generate_dataset_yolo_yaml(dataset_name: str, request: DatasetYoloYamlRequest) -> dict:
|
||||
try:
|
||||
return generate_yolo_dataset_yaml(dataset_name, request.class_names)
|
||||
except Exception as exc:
|
||||
raise HTTPException(status_code=400, detail=str(exc)) from exc
|
||||
|
||||
|
||||
@app.get("/api/profiles")
|
||||
def api_profiles(kind: str | None = None) -> list[dict]:
|
||||
return db.list_profiles(kind)
|
||||
|
||||
Reference in New Issue
Block a user