Device temporal scores: model version, separate threshold, minimum frames
Los mantenedores suelen responder en 6 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- backend-api-design, databases
Línea de trabajo
Read the implementation of POST /detections, pyroclient.create_detection, and the worker branch that handles device scores, along with the existing temporal_model_version, TEMPORAL_MODEL_THRESHOLD, and MIN_FRAMES settings. Check how the engine’s 11-frame window fills early in an event before deciding where the minimum-frame rule belongs. Done means device scores can carry a model version, use their own threshold, and follow a clearly chosen minimum-frame rule.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Follow-up of #723, which stores the temporal score computed on the device with engine as provenance and applies TEMPORAL_MODEL_THRESHOLD to it.
Three things were left out of that PR to keep it small:
- Model version. The engine sends no version with its scores, so
temporal_model_versionstaysNULLfor device scores. We cannot tell which release produced a score or spot calibration drift. Proposal: an optionaltemporal_model_versionform field onPOST /detections(and the matchingpyroclient.create_detectionparameter), stored in the existing column. pyro-engine side: send the version reported bypyro_temporal_api/health. - Separate threshold. The device model and the API model share
TEMPORAL_MODEL_THRESHOLD, but their scores are not necessarily comparable. Proposal: aDEVICE_TEMPORAL_MODEL_THRESHOLDsetting, defaulting toTEMPORAL_MODEL_THRESHOLD, used by the worker's device branch only. - Minimum frames.
MIN_FRAMESdoes not apply to device scores: the engine scores its own window (11 frames, pyronear/pyro-engine#415) and sends a score with every frame once an alert is ongoing, so a sequence can validate on its creation frame. Decide whether the engine must score a minimum number of frames before sending scores, or whether the API should require a minimum here. Needs a look at how many frames the engine window holds early in an event.
No migration for the first two.
- Lenguaje dominante
- Python
- Estrellas
- 30
- Forks
- 15
- Merge medio
- 7 d 16 h
- PR fusionados (30 d)
- 16
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de pyronear/pyro-api
-
Tests in test_risk_filter.py fail when CI runs shortly after midnight UTCPosiblemente ocupada @Majyles la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 6 días
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
Los mantenedores suelen responder en 6 días
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 42/100
Los mantenedores suelen responder en 6 días
-
Share an alert with a temporary public linkPosiblemente ocupada @Acruve15 la tomó hace 8 días. Abiertotype: feat
Dificultad 5/5 Más de una semana Aptitud para principiantes 45/100
Los mantenedores suelen responder en 6 días
-
type: feat
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
Los mantenedores suelen responder en 6 días
Todos los issues de pyronear/pyro-api
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
huggingface/accelerate#4511 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
pylint-dev/pylint#11791 ·
Los mantenedores suelen responder en 1 día
-
Rasterio granule reads never retry, so one 503 (Service Unavailable) fails the whole requestPosiblemente ocupada @chuckwondo la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
developmentseed/titiler-cmr#305 ·
Los mantenedores suelen responder en 1 día
-
community enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día