рд╕рд╛рдордЧреНрд░реА рдкрд░ рдЬрд╛рдПрдВ

Neural MagicрдбреАрдкрд╕реНрдкрд╛рд░реНрд╕

рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░-рдбрд┐рд▓реАрд╡рд░ AI рдореЗрдВ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

рдпрд╣ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рдмрддрд╛рддреА рд╣реИ рдХрд┐ рдХреИрд╕реЗ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рдП YOLOv5 рдХреЗ рд╕рд╛рде Neural MagicрдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рд╣реИред

DeepSparse CPU рдкрд░ рдЕрд╕рд╛рдзрд╛рд░рдг рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдиреБрдорд╛рди рд░рдирдЯрд╛рдЗрдо рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, ONNX рд░рдирдЯрд╛рдЗрдо рдмреЗрд╕рд▓рд╛рдЗрди, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдПрдХ рд╣реА рдорд╢реАрди рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ YOLOv5s рдХреЗ рд▓рд┐рдП 5.8x рд╕реНрдкреАрдб-рдЕрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ!

YOLOv5 рдЧрддрд┐ рдореЗрдВ рд╕реБрдзрд╛рд░

рдкрд╣рд▓реА рдмрд╛рд░, рдЖрдкрдХреЗ рдЧрд╣рди рд╕реАрдЦрдиреЗ рдХреЗ рдХрд╛рд░реНрдпрднрд╛рд░ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рддреНрд╡рд░рдХ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдФрд░ рд▓рд╛рдЧрдд рдХреЗ рдмрд┐рдирд╛ рдЙрддреНрдкрд╛рджрди рдХреА рдкреНрд░рджрд░реНрд╢рди рдорд╛рдВрдЧреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕реАрдзреЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдХрд╣реЗрдВ, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдЖрдкрдХреЛ рдЬреАрдкреАрдпреВ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреА рд╕рд╛рджрдЧреА рджреЗрддрд╛ рд╣реИ:

  • рд▓рдЪреАрд▓реЗ рдкрд░рд┐рдирд┐рдпреЛрдЬрди: рдХреНрд▓рд╛рдЙрдб, рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдФрд░ рдХрд┐рдирд╛рд░реЗ рдкрд░ рдЗрдВрдЯреЗрд▓ рд╕реЗ рдПрдПрдордбреА рд╕реЗ рдПрдЖрд░рдПрдо рддрдХ рдХрд┐рд╕реА рднреА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд╕рд╛рде рд▓рдЧрд╛рддрд╛рд░ рдЪрд▓рд╛рдПрдВ
  • рдЕрдирдВрдд рдорд╛рдкрдиреАрдпрддрд╛: рдХреЛрд░ рдХреЗ 100s рддрдХ рд▓рдВрдмрд╡рдд рд╕реНрдХреЗрд▓ рдХрд░реЗрдВ, рдорд╛рдирдХ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде, рдпрд╛ рд╕рд░реНрд╡рд░рд▓реЗрд╕ рдХреЗ рд╕рд╛рде рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рд░рдЧрд░реНрднрд┐рдд
  • рдЖрд╕рд╛рди рдПрдХреАрдХрд░рдг: рдЕрдкрдиреЗ рдореЙрдбрд▓ рдХреЛ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдФрд░ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЗрд╕рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪреНрдЫ рдПрдкреАрдЖрдИ

рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдЬреАрдкреАрдпреВ-рдХреНрд▓рд╛рд╕ рдкреНрд░рджрд░реНрд╢рди рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ?

DeepSparse рдЕрдкрдиреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЧрддрд┐ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЙрдбрд▓ рдХреА рдХрдореА рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддрд╛ рд╣реИред

рдЫрдВрдЯрд╛рдИ рдФрд░ рдкрд░рд┐рдорд╛рдгреАрдХрд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╕рд╛рд░ рдПрдХ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЕрдзреНрдпрдпрди рдХреА рдЧрдИ рддрдХрдиреАрдХ рд╣реИ, рдЬреЛ рдЙрдЪреНрдЪ рд╕рдЯреАрдХрддрд╛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП, рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЖрдХрд╛рд░ рдФрд░ рдЧрдгрдирд╛ рдореЗрдВ рдХреНрд░рдо-рдкрд░рд┐рдорд╛рдг рдореЗрдВ рдХрдореА рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рд╡рд┐рд░рд▓рддрд╛-рдЬрд╛рдЧрд░реВрдХ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рд╢реВрдиреНрдп рдЖрдЙрдЯ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ, рдЖрдЧреЗ рдХреЗ рдкрд╛рд╕ рдореЗрдВ рдЧрдгрдирд╛ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рд╡рд┐рд░рд▓ рдЧрдгрдирд╛ рдЕрдм рдореЗрдореЛрд░реА рдмрд╛рдЙрдВрдб рд╣реИ, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ, рд╕рдорд╕реНрдпрд╛ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ Tensor рдХреЙрд▓рдо, рдЧрдгрдирд╛ рдХреА рдКрд░реНрдзреНрд╡рд╛рдзрд░ рдзрд╛рд░рд┐рдпрд╛рдВ рдЬреЛ рдХреИрд╢ рдореЗрдВ рдлрд┐рдЯ рд╣реЛрддреА рд╣реИрдВред

YOLO рдореЙрдбрд▓ рдЫрдВрдЯрд╛рдИ

рд╕рдВрдкреАрдбрд╝рд┐рдд рдЧрдгрдирд╛ рдХреЗ рд╕рд╛рде рд╡рд┐рд░рд▓ рдиреЗрдЯрд╡рд░реНрдХ, рдХреИрд╢ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдХреЛ рд╕реАрдкреАрдпреВ рдкрд░ рдЬреАрдкреАрдпреВ-рдХреНрд▓рд╛рд╕ рдкреНрд░рджрд░реНрд╢рди рджреЗрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ!

рдореИрдВ рдПрдХ рд╡рд┐рд░рд▓ рд╕рдВрд╕реНрдХрд░рдг рдХреИрд╕реЗ рдмрдирд╛рдКрдВ YOLOv5 рдореЗрд░реЗ рдбреЗрдЯрд╛ рдкрд░ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд?

Neural MagicрдУрдкрди-рд╕реЛрд░реНрд╕ рдореЙрдбрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА, SparseZoo, рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдкреВрд░реНрд╡-рд╕реНрдкреИрд░реНрд╕рдлрд╛рдЗрдб рдЪреЗрдХрдкреЙрдЗрдВрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ YOLOv5 рдХреЛ рдЧрдврд╝рдирд╛ред SparseML рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдЬреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рд╣реИ Ultralytics, рдЖрдк рдПрдХ рдПрдХрд▓ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рдкрд░ рдПрдХ рд╡рд┐рд░рд▓ рдЪреЗрдХрдкреЙрдЗрдВрдЯ рдХреЛ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ CLI рдЖрдЬреНрдЮрд╛ред

рдЕрджрд╛рдпрдЧреА рдХрд╛рдЙрдиреНтАНрдЯрд░ Neural MagicрдХреЗ рдПрд╕ YOLOv5 рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдгред

рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдЙрдкрдпреЛрдЧ

рд╣рдо рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдХреЗ рд╕рд╛рде YOLOv5s рдХреЗ рд╡рд┐рд░рд▓ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдмреЗрдВрдЪрдорд╛рд░реНрдХрд┐рдВрдЧ рдФрд░ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓реЗрдВрдЧреЗред

DeepSparse рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

DeepParse рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рдЪрд▓рд╛рдПрдБред рд╣рдо рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХреЗ рд╕рд╛рде рдПрдХ рдЖрднрд╛рд╕реА рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ Python.

pip install "deepsparse[server,yolo,onnxruntime]"

рдПрдХ рд▓реАрдЬрд┐рдП ONNX рд░реЗрддреА

DeepSparse рдореЗрдВ рдПрдХ рдореЙрдбрд▓ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ ONNX рдкреНрд░рд╛рд░реВрдк, рдпрд╛ рддреЛ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛:

  • рдПрдХ SparseZoo рд╕реНрдЯрдм рдЬреЛ рдПрдХ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИ ONNX SparseZoo рдореЗрдВ рдлрд╝рд╛рдЗрд▓
  • рдПрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд╛рдиреАрдп рдкрде ONNX рдПрдХ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдореЙрдбрд▓

рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдорд╛рдирдХ рдШрдиреЗ рдФрд░ рдЫрдВрдЯрдиреА-рдорд╛рддреНрд░рд╛рддреНрдордХ YOLOv5s рдЪреМрдХрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд SparseZoo рд╕реНрдЯрдмреНрд╕ рджреНрд╡рд╛рд░рд╛ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ:

zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none
zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none

рдПрдХ рдореЙрдбрд▓ рддреИрдирд╛рдд рдХрд░реЗрдВ

DeepSparse рдЖрдкрдХреЗ рдореЙрдбрд▓ рдХреЛ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ API рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдирдореВрдирд╛ рдЫрд╡рд┐ рдХреЛ рдиреАрдЪреЗ рдЦреАрдВрдЪреЗрдВ рдФрд░ рдЗрд╕реЗ рдЗрд╕ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВ basilica.jpg рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд╕рд╛рде:

wget -O basilica.jpg https://raw.githubusercontent.com/neuralmagic/deepsparse/main/src/deepsparse/yolo/sample_images/basilica.jpg

Python рдПрдкреАрдЖрдИ

Pipelines рд░рдирдЯрд╛рдЗрдо рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдкреНрд░реА-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдкреЛрд╕реНрдЯ-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд▓рдкреЗрдЯреЗрдВ, рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдл рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░реЗрдВред рдж рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕-Ultralytics рдПрдХреАрдХрд░рдг рдореЗрдВ рдПрдХ рдЖрдЙрдЯ-рдСрдл-рдж-рдмреЙрдХреНрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИ Pipeline рдЬреЛ рдХрдЪреНрдЪреА рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдмрд╛рдЙрдВрдбрд┐рдВрдЧ рдмреЙрдХреНрд╕ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддрд╛ рд╣реИред

рдПрдХ рдмрдирд╛рдПрдБ Pipeline рдФрд░ рд░рди рдирд┐рд╖реНрдХрд░реНрд╖:

from deepsparse import Pipeline

# list of images in local filesystem
images = ["basilica.jpg"]

# create Pipeline
model_stub = "zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none"
yolo_pipeline = Pipeline.create(
    task="yolo",
    model_path=model_stub,
)

# run inference on images, receive bounding boxes + classes
pipeline_outputs = yolo_pipeline(images=images, iou_thres=0.6, conf_thres=0.001)
print(pipeline_outputs)

рдпрджрд┐ рдЖрдк рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ рдЬреЛ рдУрдкрди-рд╕реАрд╡реА рдирд╣реАрдВ рдвреВрдВрдв рд╕рдХрддреА рд╣реИ libGL.so.1. рдЙрдмрдВрдЯреВ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд▓рд╛рдирд╛ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ:

apt-get install libgl1

HTTP рд╕рд░реНрд╡рд░

рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рд╕рд░реНрд╡рд░ рд▓реЛрдХрдкреНрд░рд┐рдп рдлрд╛рд╕реНрдЯрдПрдкреАрдЖрдИ рд╡реЗрдм рдлреНрд░реЗрдорд╡рд░реНрдХ рдФрд░ рдпреВрд╡рд┐рдХреЙрд░реНрди рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдЪрд▓рддрд╛ рд╣реИред рд╕рд┐рд░реНрдл рдПрдХ рдХреЗ рд╕рд╛рде CLI рдХрдорд╛рдВрдб, рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдореЙрдбрд▓ рд╕реЗрд╡рд╛ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рд╕реЗрдЯрдЕрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд░реНрд╡рд░ рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рд╕реЗ рдХрд┐рд╕реА рднреА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдбрд┐рдЯреЗрдХреНрд╢рди рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ YOLOv5, рдЖрдкрдХреЛ рдХрдЪреНрдЪреА рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ рдкрд░ рднреЗрдЬрдиреЗ рдФрд░ рдмрд╛рдЙрдВрдбрд┐рдВрдЧ рдмреЙрдХреНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред

рдЫрдВрдЯрдиреА-рдорд╛рддреНрд░рд╛рддреНрдордХ YOLOv5s рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рдХреЛ рд╕реНрдкрд┐рди рдХрд░реЗрдВ:

deepsparse.server \
    --task yolo \
    --model_path zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЕрдиреБрд░реЛрдз, рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ PythonрдХреЗ рдПрд╕ requests рдкреИрдХреЗрдЬ:

import requests, json

# list of images for inference (local files on client side)
path = ['basilica.jpg']
files = [('request', open(img, 'rb')) for img in path]

# send request over HTTP to /predict/from_files endpoint
url = 'http://0.0.0.0:5543/predict/from_files'
resp = requests.post(url=url, files=files)

# response is returned in JSON
annotations = json.loads(resp.text)  # dictionary of annotation results
bounding_boxes = annotations["boxes"]
labels = annotations["labels"]

рдЯрд┐рдкреНрдкрдгреА рдХрд░рдирд╛ CLI

рдЖрдк рдЗрдВрдЬрди рдХреЛ рдбрд┐рд╕реНрдХ рдкрд░ рдПрдХ рдПрдиреЛрдЯреЗрдЯ рдлреЛрдЯреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдиреЛрдЯреЗрдЯ рдХрдорд╛рдВрдб рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ --рд╕реНрд░реЛрдд 0 рдЕрдкрдиреЗ рд▓рд╛рдЗрд╡ рд╡реЗрдмрдХреИрдо рдлрд╝реАрдб рдХреЛ рдПрдиреЛрдЯреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП!

deepsparse.object_detection.annotate --model_filepath zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none --source basilica.jpg

рдЙрдкрд░реЛрдХреНрдд рдХрдорд╛рдВрдб рдЪрд▓рд╛рдиреЗ рд╕реЗ рдПрдХ annotation-results рдлрд╝реЛрд▓реНрдбрд░ рдФрд░ рдПрдиреЛрдЯреЗрдЯ рдХреА рдЧрдИ рдЫрд╡рд┐ рдХреЛ рдЕрдВрджрд░ рд╕рд╣реЗрдЬреЗрдВред

рдПрдиреЛрдЯреЗрдЯ

рдмреЗрдВрдЪрдорд╛рд░реНрдХрд┐рдВрдЧ рдкреНрд░рджрд░реНрд╢рди

рд╣рдо DeepSparse рдХреЗ рдереНрд░реВрдкреБрдЯ рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВрдЧреЗ ONNX рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдХреА рдмреЗрдВрдЪрдорд╛рд░реНрдХрд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, YOLOv5s рдкрд░ рд░рдирдЯрд╛рдЗрдо рдХрд╛ рдереНрд░реВрдкреБрдЯред

рдмреЗрдВрдЪрдорд╛рд░реНрдХ AWS рдкрд░ рдЪрд▓рд╛рдП рдЧрдП рдереЗ c6i.8xlarge рдЙрджрд╛рд╣рд░рдг (16 рдХреЛрд░)ред

рдмреИрдЪ 32 рдкреНрд░рджрд░реНрд╢рди рддреБрд▓рдирд╛

ONNX рд░рдирдЯрд╛рдЗрдо рдмреЗрд╕рд▓рд╛рдЗрди

рдмреИрдЪ 32 рдкрд░, ONNX рд░рдирдЯрд╛рдЗрдо рдорд╛рдирдХ рдШрдиреЗ YOLOv42s рдХреЗ рд╕рд╛рде 5 рдЫрд╡рд┐рдпреЛрдВ/рд╕реЗрдХрдВрдб рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ:

deepsparse.benchmark zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none -s sync -b 32 -nstreams 1 -e onnxruntime

> Original Model Path: zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none
> Batch Size: 32
> Scenario: sync
> Throughput (items/sec): 41.9025

рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдбреЗрдВрд╕ рдкрд░рдлреЙрд░реНрдореЗрдВрд╕

рдЬрдмрдХрд┐ рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдЕрдиреБрдХреВрд▓рд┐рдд рд╡рд┐рд░рд▓ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рдЕрдкрдирд╛ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдорд╛рдирдХ рдШрдиреЗ YOLOv5s рдХреЗ рд╕рд╛рде рднреА рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддрд╛ рд╣реИред

рдмреИрдЪ 32 рдкрд░, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдорд╛рдирдХ рдШрдиреЗ YOLOv70s рдХреЗ рд╕рд╛рде 5 рдЫрд╡рд┐рдпрд╛рдВ/рд╕реЗрдХрдВрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, ORT рдкрд░ 1.7x рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░!

deepsparse.benchmark zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none -s sync -b 32 -nstreams 1

> Original Model Path: zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none
> Batch Size: 32
> Scenario: sync
> Throughput (items/sec): 69.5546

рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рд╡рд┐рд░рд▓ рдкреНрд░рджрд░реНрд╢рди

рдЬрдм рдореЙрдбрд▓ рдкрд░ рд╡рд┐рд░рд▓ рдкреНрд░рднрд╛рд╡ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ ONNX рд░рдирдЯрд╛рдЗрдо рдФрд░ рднреА рдордЬрдмреВрдд рд╣реИред

рдмреИрдЪ 32 рдкрд░, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдЫрдВрдЯрдиреА-рдорд╛рддреНрд░рд╛рддреНрдордХ YOLOv241s рдХреЗ рд╕рд╛рде 5 рдЫрд╡рд┐рдпрд╛рдВ/рд╕реЗрдХрдВрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, ORT рдкрд░ 5.8x рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░!

deepsparse.benchmark zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none -s sync -b 32 -nstreams 1

> Original Model Path: zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none
> Batch Size: 32
> Scenario: sync
> Throughput (items/sec): 241.2452

рдмреИрдЪ 1 рдкреНрд░рджрд░реНрд╢рди рддреБрд▓рдирд╛

рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рднреА рд╕реНрдкреАрдб-рдЕрдк рдУрд╡рд░ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ ONNX рд╡рд┐рд▓рдВрдмрддрд╛-рд╕рдВрд╡реЗрджрдирд╢реАрд▓, рдмреИрдЪ 1 рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рд░рдирдЯрд╛рдЗрдоред

ONNX рд░рдирдЯрд╛рдЗрдо рдмреЗрд╕рд▓рд╛рдЗрди

рдмреИрдЪ 1 рдкрд░, ONNX рд░рдирдЯрд╛рдЗрдо рдорд╛рдирдХ, рдШрдиреЗ YOLOv48s рдХреЗ рд╕рд╛рде 5 рдЫрд╡рд┐рдпреЛрдВ/рд╕реЗрдХрдВрдб рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

deepsparse.benchmark zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none -s sync -b 1 -nstreams 1 -e onnxruntime

> Original Model Path: zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none
> Batch Size: 1
> Scenario: sync
> Throughput (items/sec): 48.0921

рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рд╡рд┐рд░рд▓ рдкреНрд░рджрд░реНрд╢рди

рдмреИрдЪ 1 рдореЗрдВ, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдЫрдВрдЯрдиреА-рдорд╛рддреНрд░рд╛рддреНрдордХ YOLOv135s рдХреЗ рд╕рд╛рде 5 рдЖрдЗрдЯрдо/рд╕реЗрдХрдВрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, 2.8x рдкреНрд░рджрд░реНрд╢рди рд▓рд╛рдн рд╕реЗ рдЕрдзрд┐рдХ ONNX рд░рдирдЯрд╛рдЗрдо!

deepsparse.benchmark zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none -s sync -b 1 -nstreams 1

> Original Model Path: zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned65_quant-none
> Batch Size: 1
> Scenario: sync
> Throughput (items/sec): 134.9468

рдХреНрдпреЛрдВрдХрд┐ c6i.8xlarge рдЙрджрд╛рд╣рд░рдг рд╡реАрдПрдирдПрдирдЖрдИ рдирд┐рд░реНрджреЗрд╢ рд╣реИрдВ, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рдХреЗ рдереНрд░реВрдкреБрдЯ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рд╡рдЬрди 4 рдХреЗ рдмреНрд▓реЙрдХ рдореЗрдВ рдЫрдВрдЯрдиреА рдХреА рдЬрд╛рддреА рд╣реИред

рдмреИрдЪ 1 рдореЗрдВ, рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ 4-рдмреНрд▓реЙрдХ рдЫрдВрдЯрдиреА-рдорд╛рддреНрд░рд╛рддреНрдордХ YOLOv5s рдХреЗ рд╕рд╛рде 180 рдЖрдЗрдЯрдо/рд╕реЗрдХрдВрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, a 3.7x рдкрд░рдлреЙрд░рдореЗрдВрд╕ рдЧреЗрди рдУрд╡рд░ ONNX рд░рдирдЯрд╛рдЗрдо!

deepsparse.benchmark zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned35_quant-none-vnni -s sync -b 1 -nstreams 1

> Original Model Path: zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned35_quant-none-vnni
> Batch Size: 1
> Scenario: sync
> Throughput (items/sec): 179.7375

DeepSparse рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░реЗрдВ

рдЕрдиреБрд╕рдВрдзрд╛рди рдпрд╛ рдкрд░реАрдХреНрд╖рдг? рдбреАрдкрд╕реНрдкрд╛рд░реНрд╕ рд╕рдореБрджрд╛рдп рдЕрдиреБрд╕рдВрдзрд╛рди рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рд╣реИред рд╣рдорд╛рд░реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рд╕рд╛рде рдЖрд░рдВрдн рдХрд░реЗрдВред



2023-11-12 рдмрдирд╛рдпрд╛ рдЧрдпрд╛, рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 2024-03-19
рд▓реЗрдЦрдХ: рдЧреНрд▓реЗрди-рдЬреЛрдЪрд░ (4)

рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ