Savant 0.2.7 Python markoa kaleratu da, NVIDIA DeepStream erabiltzea erraztuz ikaskuntza automatikoarekin lotutako arazoak konpontzeko. Esparruak GStreamer edo FFmpeg-ekin astuntasun guztiak zaintzen ditu, irteera optimizatutako kanalizazioak eraikitzera bideratu ahal izateko sintaxi deklaratiboa (YAML) eta Python funtzioak erabiliz. Savantek datu-zentroko azeleragailuetan (NVIDIA Turing, Ampere, Hopper) eta ertzeko gailuetan (NVIDIA Jetson NX, AGX Xavier, Orin NX, AGX Orin, New Nano) berdin funtzionatzen duten kanalizazioak sortzeko aukera ematen du. Savant-ekin, erraz prozesatu ditzakezu hainbat bideo-korronte aldi berean eta azkar sor ditzakezu ekoizpenerako prest dauden bideo-analisi kanalak NVIDIA TensorRT erabiliz. Proiektuaren kodea Apache 2.0 lizentziapean banatzen da.
Savant 0.2.7 0.2.X adarreko funtzio-aldaketaren azken bertsioa da. 0.2.X adarreko etorkizuneko bertsioek akatsen konponketak soilik izango dituzte. Ezaugarri berrien garapena 0.3.X adarrean egingo da, DeepStream 6.4-n oinarrituta. Adar honek ez du Jetson Xavier gailu familia onartzen, NVIDIAk ez baititu onartzen DS 6.4-n.
Berrikuntza nagusiak:
- Erabilera kasu berriak:
- RT-DETR transformatzailean oinarritutako detekzio-eredu batekin lan egitearen adibidea;
- CUDA postprozesatzea CuPy-rekin YOLOV8-Seg-erako;
- PyTorch CUDA Savant kanalizazioan integratzearen adibide bat;
- Orientatutako objektuekin lan egiten duen erakustaldia.
- Ezaugarri berriak:
- Prometheus-ekin integratzea. Kanalizazioak exekuzio-metriak esportatu ditzake Prometheus eta Grafana-ra, errendimendua kontrolatzeko eta jarraitzeko. Garatzaileek sistemaren neurriekin batera esportatzen diren neurri pertsonalizatuak deklara ditzakete.
- Buffer Adapter - Egokitzaileen eta moduluen artean datuak mugitzeko diskoan transakzio-buffer iraunkor bat ezartzen du. Haren laguntzarekin, baliabideak ustekabean kontsumitzen dituzten eta trafiko-leherketak jasaten dituzten karga handiko kanalizazioak garatu ditzakezu. Egokitzaileak bere elementu eta tamaina datuak Prometheus-era esportatzen ditu.
- Modeloak biltzeko modua. Moduluek orain beren ereduak konpila ditzakete TensorRT-en kanalizaziorik exekutatu gabe.
- PyFunc ixteko gertaeren kudeatzailea. API berri honek kanalizazioen itxierak dotoretasunez kudeatzeko aukera ematen du, baliabideak askatuz eta hirugarren sistemei itxialdia gertatu dela jakinaraziz.
- Fotograma-iragazkia sarreran eta irteeran. Lehenespenez, kanalizazioak bideo-datuak dituzten fotograma guztiak onartzen ditu. Sarrera eta irteerako iragazketarekin, garatzaileek datuak iragazi ditzakete prozesatzea ekiditeko.
- Ereduaren postprozesatzea GPUan. Ezaugarri berriarekin, garatzaileek ereduen irteerako tentsoreak zuzenean atzi ditzakete GPU memoriatik PUZaren memorian kargatu gabe eta CuPy, TorchVision edo OpenCV CUDA erabiliz prozesatu gabe.
- GPU memoria irudikatzeko funtzioak. Argitalpen honetan, OpenCV GpuMat, PyTorch GPU tentsoreen eta CuPy tentsoreen artean memoria buffer-ak bihurtzeko funtzioak eskaini ditugu.
- Pipe-ilaren erabilerari buruzko estatistikak atzitzeko APIa. Savantek PyFuncs-en arteko ilarak gehitzeko aukera ematen du, prozesaketa paraleloa eta buffer-a ezartzeko. Gehitutako APIak garatzaileei kanalizazioan zabaldutako ilaretarako sarbidea ematen die eta haien erabilera kontsultatzeko aukera ematen die.
Hurrengo bertsioan (0.3.7) DeepStream 6.4ra mugitzea aurreikusten da, funtzionalitateak zabaldu gabe. Ideia 0.2.7-rekin guztiz bateragarria den bertsio bat lortzea da, baina DeepStream 6.4-n eta teknologia hobetuan oinarritutakoa, baina API mailan bateragarritasuna hautsi gabe.
Iturria: opennet.ru