Workflows block: Power BI sink for streaming detection results
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- backend-api-design
Direzione di ricerca
Inizia esaminando il contratto esistente di roboflow_core/webhook_sink@v1 e i sink presenti in inference/core/workflows/core_steps/sinks/. Poi esamina loader.py e i test e la demo del plugin esterno. Il lavoro è completo quando è stata confermata la posizione preferita in core, nel plugin o nell’esempio e sono coperti il contratto documentato del sink, il comportamento di sicurezza dei segreti, i percorsi di cooldown e i test unitari e di integrazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Hi! I'd like to contribute a Workflows sink block that pushes detection results to Power BI. It's listed as an example project for the Enterprise team, and I don't see an existing BI sink in inference/core/workflows/core_steps/sinks/ on main (the sinks there today are email, local_file, onvif_movement, roboflow/*, s3, slack, twilio, and webhook) — please correct me if I've missed one.
Proposed v1 — a power_bi_sink block that:
- takes a
predictionsinput (object detection / instance segmentation / keypoint) plus a Power BI streaming/push dataset URL, handled as a secret; - transforms detections into rows — one row per detection by default (
class_name,class_id,confidence,x,y,width,height,timestamp, optionalimage_id), with anaggregatemode that emits one row per class with a count; POSTs the rows to the push URL over HTTPS.
It would mirror the existing roboflow_core/webhook_sink@v1 contract — fire_and_forget, cooldown_seconds, disable_sink, and error_status / throttling_status / message outputs — so it composes in the UI like the other sinks. The push URL is treated as a secret end-to-end (marked private, never logged, and kept out of error messages, since connection errors otherwise embed the URL).
I'd scope Power BI first via the push-dataset URL (no OAuth / service principal — that's a much larger surface and unnecessary for v1). Tableau has no equivalent zero-auth push endpoint (it needs the Hyper API or Server REST publishing), so I'd treat Tableau as a separate follow-up.
Question before I open a PR: would you want this in core roboflow_core, or would you prefer it as an external plugin or an example?
I'm building it either way — I already have a working, tested external plugin version (mirrors the webhook sink, unit-tested including the secret-safety and cooldown paths, with a runnable local demo). I'd just rather match your preference before opening a core PR. If core is welcome, I'll add it under core_steps/sinks/, register it in loader.py, and include the unit + integration tests per the Workflows contribution checklist.
Thanks!
- Lingua principale
- Python
- Stelle
- 2.5k
- Fork
- 340
- Merge medio
- 2g 11h
- PR unite (30g)
- 92
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di roboflow/inference
-
Allow Pillow 13 in inference-sdkForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
roboflow/inference#3335 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
roboflow/inference#3173 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
roboflow/inference#2993 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Add context manager (__enter__ / __exit__) support to InferencePipelineForse già presa @KushagraKanaujia l’ha presa 67 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
roboflow/inference#2744 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
roboflow/inference#1913 · 1 commento · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di roboflow/inference
Issue simili
-
area:core-platform effort:S priority:P3 risk:night-safe status:ready type:test
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
randomparity/kdive#3620 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
FinanceFlash/unvibecode#760 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
google-research/google-research#3470 ·
I maintainer di solito rispondono entro 21 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
mrvautin/ha-workouts#11 ·