Track Ultralytics stream=True inference over iterator consumption
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 45/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- python
- Domaine
- observability
Piste de recherche
Read the Ultralytics adapter and the shared SyncStreamWrapper introduced in #82, then compare the eager predict() coverage in #84. Trace how streamed results are consumed and finalized; preserve lazy iteration and keep result interpretation in the adapter. Done means both entry points emit one consumption-aware event on exhaustion, close, or error, with bounded metadata and compatibility tests for supported Ultralytics versions.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Current behavior
Ultralytics/YOLO returns a lazy results iterator for model.predict(..., stream=True) and model(..., stream=True). Inference runs as the application consumes it, but the current integration records success and duration when the iterator is returned. This can report success before inference runs, omit detection/classification output metadata, and miss failures during iteration.
PR #84 fixes eager predict() entry-point coverage; it does not address lazy streaming lifecycle tracking.
Possible approach
Reuse the shared SyncStreamWrapper introduced in #82 for iteration timing, exactly-once finalization, closure/error handling, trace correlation, and telemetry failure isolation. Keep YOLO result interpretation in the Ultralytics adapter through integration-specific callbacks.
A proposed starting contract is one inference event per streamed prediction call, finalized when the iterator is exhausted or explicitly closed, with bounded aggregation of available detection/classification metadata. Do not retain every result or consume the iterator ahead of the application. Per-frame events would be a separate design decision.
Verification when implemented
- Creating a lazy iterator emits no premature successful inference event.
- Exhaustion records one event with consumption-aware duration and available result metadata.
- Early closure and iteration errors finalize once without changing application behavior.
- Both entry points behave consistently, with no duplicate events.
- Real supported Ultralytics versions are covered by compatibility tests.
This is a known coverage gap to track for future demand; no user has requested streaming support yet. It is not a prerequisite for the eager-call fix in #84.
- Langage dominant
- Python
- Étoiles
- 17
- Forks
- 1
- Merge moyen
- 17 h 5 min
- PR mergées (30 j)
- 34
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de wild-edge/wildedge-python
-
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
wild-edge/wildedge-python#78 ·
Les mainteneurs répondent en général sous 1 jour
-
vLLM integrationPeut-être à nouveau libre @piotrekno1 l’a pris il y a 121 jours, et aucune pull request n’est ouverte. Ouverte
wild-edge/wildedge-python#38 · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue help wanted
Difficulté 3/5 1-2 jours Accessibilité débutants 48/100
wild-edge/wildedge-python#25 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue help wanted
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
wild-edge/wildedge-python#22 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue help wanted
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
wild-edge/wildedge-python#20 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de wild-edge/wildedge-python
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
volcengine/OpenViking#6445 ·
Les mainteneurs répondent en général sous 1 jour
-
BUG:Edit Album strips spaces from the password so albums with a leading/trailing space in the password can't be editedPeut-être pris @ManyaJain111 l’a pris aujourd’hui. Ouvertebug enhancement possible-duplicate
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
AOSSIE-Org/PictoPy#1637 · 4 commentaires ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
deepspeedai/DeepSpeed#8884 ·
Les mainteneurs répondent en général sous 3 jours
-
Flaky: test_advisor_live_calibrates_an_unmeasured_circuit ranks engines by a 1.8ms sleep marginOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
flagos-ai/FlagQuantum#718 ·
Les mainteneurs répondent en général sous 1 jour
-
bug CI-failure high priority
Difficulté 1/5 Moins d'une heure Accessibilité débutants 86/100
vllm-project/afd-plugin#483 ·
Les mainteneurs répondent en général sous 1 jour