Chạy ứng dụng AI tương tác với Streamlit và Ultralytics YOLO11
Tìm hiểu cách chạy suy luận Ultralytics YOLO11 trong ứng dụng web Streamlit bằng một script ngắn và xây dựng demo thị giác máy tính tương tác mà không cần viết mã front-end.
Abirami Vina13 phút đọc
Model thị giác máy tính là công cụ AI có tác động lớn, cho phép máy móc diễn giải và phân tích dữ liệu hình ảnh, thực hiện các tác vụ như phát hiện đối tượng, phân loại hình ảnh và phân đoạn instance với độ chính xác cao. Tuy nhiên, đôi khi việc triển khai và đưa model đến với nhiều người dùng hơn đòi hỏi chuyên môn kỹ thuật bổ sung, chẳng hạn như kỹ năng phát triển web hoặc ứng dụng di động.
Lấy Ultralytics YOLO11 làm ví dụ. Đây là model hỗ trợ nhiều tác vụ và hữu ích trong nhiều ứng dụng. Tuy nhiên, nếu thiếu kiến thức kỹ thuật về front-end, một số kỹ sư AI có thể thấy việc xây dựng và triển khai giao diện thân thiện với người dùng hơi khó khăn.
Streamlit là framework mã nguồn mở nhằm đơn giản hóa quy trình này. Đây là công cụ dựa trên Python để xây dựng ứng dụng tương tác mà không cần phát triển front-end phức tạp. Khi kết hợp với Ultralytics YOLO11, Streamlit cho phép người dùng tải lên hình ảnh, xử lý video và trực quan hóa kết quả theo thời gian thực với rất ít thao tác.
Ultralytics còn đơn giản hóa quy trình hơn nữa với giải pháp Live Inference, giúp tích hợp Streamlit dễ dàng hơn. Chỉ với một lệnh, người dùng có thể khởi chạy ứng dụng Streamlit cho YOLO11 dựng sẵn, không cần thiết lập thủ công hay viết mã.
Trong bài viết này, chúng tôi sẽ hướng dẫn cách thiết lập và chạy YOLO11 bằng giải pháp Live Inference của Ultralytics kết hợp với Streamlit, giúp triển khai AI theo thời gian thực nhanh chóng và dễ tiếp cận hơn.
Streamlit là gì?#
Streamlit là framework Python giúp đơn giản hóa việc tạo ứng dụng web tương tác. Nhà phát triển AI có thể xây dựng ứng dụng ứng dụng AI mà không cần xử lý những phức tạp trong phát triển front-end.
Công cụ này được thiết kế để hoạt động hiệu quả với các model AI và machine learning. Chỉ với một vài dòng Python, nhà phát triển có thể tạo giao diện cho phép người dùng tải ảnh lên, xử lý video và tương tác với model AI.

Hình 1. Các tính năng chính của Streamlit. Hình ảnh của tác giả.
Một trong những tính năng chính của Streamlit là kết xuất động. Khi người dùng thay đổi nội dung, ứng dụng tự động cập nhật mà không cần tải lại trang thủ công.
Ngoài ra, nhờ nhẹ và dễ sử dụng, Streamlit hoạt động hiệu quả trên cả máy cục bộ lẫn nền tảng đám mây. Vì vậy, đây là lựa chọn phù hợp để triển khai ứng dụng AI, chia sẻ model với người khác và mang đến trải nghiệm tương tác trực quan, dễ sử dụng.
Ultralytics YOLO11: Model AI thị giác đa năng#
Trước khi tìm hiểu cách chạy inference trực tiếp với Ultralytics YOLO11 trong ứng dụng Streamlit, hãy cùng xem kỹ hơn điều gì giúp YOLO11 hoạt động đáng tin cậy.
Ultralytics YOLO11 là model được thiết kế cho các tác vụ computer vision theo thời gian thực như phát hiện đối tượng, phân đoạn instance và ước tính tư thế. Model mang lại hiệu năng tốc độ cao cùng độ chính xác cao.

Hình 2. Ví dụ sử dụng YOLO11 để phát hiện đối tượng.
Một trong những ưu điểm lớn nhất của YOLO11 là tính dễ sử dụng. Không cần thiết lập phức tạp; nhà phát triển có thể cài đặt package Python của Ultralytics và bắt đầu chạy dự đoán chỉ với một vài dòng code.
Package Python của Ultralytics cung cấp nhiều tính năng, cho phép người dùng tinh chỉnh model và điều chỉnh cài đặt phát hiện. Package này cũng giúp tối ưu hiệu năng trên nhiều thiết bị để triển khai mượt mà hơn.
Ngoài tính linh hoạt, package Python của Ultralytics còn hỗ trợ tích hợp trên nhiều nền tảng, bao gồm thiết bị edge, môi trường cloud và hệ thống sử dụng GPU NVIDIA. Dù được triển khai trên thiết bị nhúng nhỏ hay máy chủ cloud quy mô lớn, YOLO11 đều thích ứng với phần cứng mục tiêu, giúp Vision AI tiên tiến dễ tiếp cận hơn.
Lợi ích khi sử dụng Streamlit với Ultralytics YOLO11#
Có thể bạn đang băn khoăn: làm sao biết Streamlit có phải là lựa chọn triển khai phù hợp với mình không? Nếu bạn đang tìm cách đơn giản, tiết kiệm code để chạy Ultralytics YOLO11 mà không phải xử lý phát triển front-end, Streamlit là một lựa chọn phù hợp — đặc biệt cho việc tạo mẫu, các dự án proof-of-concept (PoC) hoặc triển khai hướng đến số lượng người dùng nhỏ.
Streamlit đơn giản hóa quy trình làm việc với Ultralytics YOLO11 bằng cách loại bỏ những phức tạp không cần thiết và cung cấp giao diện trực quan để tương tác theo thời gian thực. Sau đây là một số ưu điểm chính khác:
- Điều khiển AI có thể tùy chỉnh: Bạn có thể thêm thanh trượt, menu thả xuống và nút vào giao diện, cho phép người dùng dễ dàng tinh chỉnh cài đặt phát hiện và lọc các đối tượng cụ thể.
- Tích hợp với các công cụ AI khác: Streamlit hỗ trợ tích hợp với NumPy, OpenCV, Matplotlib và các thư viện machine learning khác, nâng cao khả năng của quy trình làm việc AI.
- Trực quan hóa dữ liệu tương tác: Tính năng hỗ trợ tích hợp cho biểu đồ và đồ thị cho phép người dùng trực quan hóa kết quả phát hiện đối tượng, phân đoạn hoặc thông tin phân tích từ tracking.
- Thuận tiện cho cộng tác: Có thể dễ dàng chia sẻ ứng dụng Streamlit với thành viên nhóm, bên liên quan hoặc khách hàng thông qua một liên kết đơn giản, giúp nhận phản hồi và lặp lại tức thì.
Hướng dẫn từng bước triển khai Ultralytics YOLO11 trong ứng dụng web Streamlit#
Giờ đây, sau khi đã tìm hiểu lợi ích của việc sử dụng Streamlit với Ultralytics YOLO11, hãy cùng tìm hiểu cách chạy các tác vụ thị giác máy tính theo thời gian thực trong trình duyệt bằng Streamlit với YOLO11.
Cài đặt package Python của Ultralytics#
Bước đầu tiên là cài đặt package Python của Ultralytics. Bạn có thể thực hiện việc này bằng lệnh sau:
pip install ultralyticsSau khi cài đặt, YOLO11 đã sẵn sàng sử dụng mà không cần thiết lập phức tạp. Nếu gặp sự cố khi cài đặt các package cần thiết, bạn có thể tham khảo Hướng dẫn xử lý sự cố thường gặp để biết mẹo khắc phục và giải pháp.
Khởi chạy ứng dụng Streamlit với Ultralytics YOLO11#
Thông thường, bạn cần phát triển một script Python sử dụng các component của Streamlit để chạy YOLO11. Tuy nhiên, Ultralytics cung cấp một cách đơn giản để chạy YOLO11 với Streamlit.
Chạy script Python sau đây bằng streamlit run path/to/file.py sẽ khởi chạy ứng dụng Streamlit trong trình duyệt web mặc định của bạn:
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # bạn có thể sử dụng bất kỳ model nào được Ultralytics hỗ trợ hoặc model được huấn luyện tùy chỉnh
)
inf.inference()Không cần cấu hình thêm. Giao diện ứng dụng Streamlit có phần tải ảnh và video lên, menu thả xuống để chọn biến thể model Ultralytics YOLO11 bạn muốn sử dụng và các thanh trượt để điều chỉnh độ tin cậy khi phát hiện. Mọi thứ được sắp xếp gọn gàng, giúp người dùng chạy inference mà không cần viết thêm code.
Chạy suy luận bằng Ultralytics YOLO11 trên ứng dụng Streamlit#
Giờ đây, khi ứng dụng Streamlit đang chạy trong trình duyệt web, hãy cùng tìm hiểu cách sử dụng ứng dụng để chạy suy luận với Ultralytics YOLO11.
Ví dụ, giả sử chúng ta muốn phân tích một tệp video để phát hiện đối tượng. Sau đây là các bước tải tệp lên, chọn model và xem kết quả theo thời gian thực:
- Tải tệp video lên: Chọn "video" trong menu thả xuống cấu hình người dùng để ứng dụng xử lý tệp đã ghi sẵn thay vì luồng hình ảnh từ webcam.
- Chọn model YOLO11: Chọn "YOLO11l" từ menu thả xuống model để phát hiện đối tượng bằng model YOLO11 cỡ lớn.
- Bắt đầu quá trình phát hiện: Nhấp vào "Start" để Ultralytics YOLO11 phân tích từng frame của video và phát hiện đối tượng theo thời gian thực.
- Xem video đã xử lý: Theo dõi video hiển thị trên màn hình cùng các cập nhật trực tiếp, trong đó các đối tượng được phát hiện được hiển thị bằng bounding box.
- Tương tác với kết quả trong Streamlit: Sử dụng giao diện để điều chỉnh cài đặt hoặc phân tích kết quả phát hiện mà không cần thiết lập hay viết code bổ sung.

Hình 3. Giao diện ứng dụng Ultralytics YOLO trên Streamlit.
Các trường hợp sử dụng Streamlit và Ultralytics YOLO11#
Chúng ta đã tìm hiểu cách Streamlit phù hợp để tạo nguyên mẫu, công cụ nghiên cứu và ứng dụng quy mô nhỏ đến vừa. Streamlit cung cấp một cách đơn giản để triển khai model AI mà không cần phát triển front-end phức tạp.
Tuy nhiên, chạy YOLO11 với Streamlit không phải lúc nào cũng là giải pháp dùng được ngay — trừ khi bạn sử dụng ứng dụng Ultralytics YOLO trên Streamlit đã thiết lập theo các bước trên. Trong hầu hết trường hợp, cần thực hiện một số công việc phát triển để tùy chỉnh ứng dụng cho phù hợp với nhu cầu cụ thể. Dù Streamlit đơn giản hóa việc triển khai, bạn vẫn cần cấu hình các component cần thiết để đảm bảo YOLO11 chạy ổn định.
Hãy cùng tìm hiểu hai ví dụ thực tế về cách triển khai hiệu quả Ultralytics YOLO11 với Streamlit trong các tình huống thực tế.
Đếm đối tượng để kiểm kê hàng tồn kho bằng Ultralytics YOLO11#
Theo dõi hàng tồn kho tại cửa hàng bán lẻ, kho chứa hoặc khu vực lưu trữ vật tư văn phòng có thể tốn thời gian và dễ xảy ra sai sót. Khi sử dụng Ultralytics YOLO11 với Streamlit, doanh nghiệp có thể tự động hóa việc đếm đối tượng nhanh chóng và hiệu quả, đây là lựa chọn phù hợp để kiểm chứng ý tưởng (PoC) trước khi đầu tư triển khai ở quy mô lớn.
Với thiết lập này, người dùng có thể tải ảnh lên hoặc sử dụng luồng hình ảnh trực tiếp từ camera, còn Ultralytics YOLO11 có thể giúp phát hiện và đếm đối tượng ngay lập tức. Số lượng theo thời gian thực có thể hiển thị trong giao diện Streamlit, giúp dễ dàng theo dõi mức tồn kho mà không cần thao tác thủ công.
Ví dụ, chủ cửa hàng có thể quét một kệ hàng và biết ngay có bao nhiêu chai, hộp hoặc hàng hóa đóng gói mà không cần đếm thủ công. Bằng cách tận dụng Ultralytics YOLO11 và Streamlit, doanh nghiệp có thể giảm khối lượng công việc thủ công, cải thiện độ chính xác và thử nghiệm tự động hóa với mức đầu tư tối thiểu.

Hình 4. Phát hiện chai trong tủ lạnh bằng Ultralytics YOLO11.
Tăng cường bảo mật với Ultralytics YOLO11 và Streamlit#
Đảm bảo an ninh cho các khu vực hạn chế tại văn phòng, nhà kho hoặc địa điểm tổ chức sự kiện có thể khó khăn, đặc biệt khi giám sát thủ công. Bằng cách sử dụng Ultralytics YOLO11 với Streamlit, doanh nghiệp có thể thiết lập một hệ thống bảo mật ứng dụng AI đơn giản để phát hiện truy cập trái phép theo thời gian thực.
Có thể kết nối luồng hình ảnh từ camera với giao diện Streamlit, nơi Ultralytics YOLO11 được dùng để nhận diện và theo dõi những người đi vào khu vực hạn chế. Nếu phát hiện người không được phép, hệ thống có thể kích hoạt cảnh báo hoặc ghi lại sự kiện để xem xét.
Ví dụ, quản lý kho có thể giám sát việc ra vào các khu vực lưu trữ an ninh cao, hoặc văn phòng có thể theo dõi hoạt động trong các khu vực hạn chế mà không cần giám sát liên tục.
Đây có thể là dự án thí điểm hữu ích cho các doanh nghiệp muốn khám phá hoạt động giám sát an ninh ứng dụng Vision AI trước khi đầu tư vào hệ thống tự động hóa hoàn chỉnh, quy mô lớn hơn. Bằng cách tích hợp Ultralytics YOLO11 với Streamlit, doanh nghiệp có thể tăng cường an ninh, giảm thiểu việc giám sát thủ công và ứng phó hiệu quả hơn với truy cập trái phép.
Mẹo giám sát ứng dụng AI tương tác bằng Streamlit#
Sử dụng các công cụ như Streamlit để triển khai model thị giác máy tính giúp tạo trải nghiệm tương tác, thân thiện với người dùng. Tuy nhiên, sau khi thiết lập giao diện trực tiếp, điều quan trọng là phải đảm bảo hệ thống hoạt động hiệu quả và cho kết quả chính xác theo thời gian.
Sau đây là một số yếu tố chính cần cân nhắc sau khi triển khai:
- Giám sát thường xuyên: Theo dõi độ chính xác phát hiện, tốc độ suy luận và mức sử dụng tài nguyên. Điều chỉnh tham số model hoặc nâng cấp phần cứng nếu hiệu năng suy giảm.
- Quản lý nhiều người dùng và khả năng mở rộng: Khi nhu cầu người dùng tăng, tối ưu hóa hạ tầng là yếu tố then chốt để duy trì hiệu năng. Nền tảng đám mây và giải pháp triển khai có khả năng mở rộng giúp đảm bảo hệ thống vận hành ổn định.
- Cập nhật model: Việc cập nhật model và thư viện giúp cải thiện độ chính xác, bảo mật và khả năng tiếp cận các tính năng mới.
Điểm chính cần ghi nhớ#
Ultralytics đơn giản hóa việc triển khai YOLO11 bằng giao diện trực tiếp Streamlit có thể sử dụng ngay và chạy chỉ với một lệnh — không cần viết code. Nhờ đó, người dùng có thể bắt đầu phát hiện đối tượng theo thời gian thực ngay lập tức.
Giao diện cũng tích hợp các tùy chọn tùy chỉnh, cho phép người dùng dễ dàng chuyển đổi model, điều chỉnh ngưỡng độ tin cậy và lọc đối tượng. Mọi thao tác được thực hiện trong giao diện đơn giản, thân thiện với người dùng, không cần phát triển UI thủ công.
Bằng cách kết hợp các khả năng của Ultralytics YOLO11 với tính dễ triển khai của Streamlit, doanh nghiệp và nhà phát triển có thể nhanh chóng tạo nguyên mẫu, kiểm thử và hoàn thiện ứng dụng ứng dụng AI.
Hãy tham gia cộng đồng của chúng tôi và khám phá repository GitHub để tìm hiểu thêm về AI. Xem các trang giải pháp của chúng tôi để tìm hiểu thêm về những đổi mới như AI trong sản xuất và thị giác máy tính trong chăm sóc sức khỏe. Tham khảo các lựa chọn cấp phép và bắt đầu ngay hôm nay!
Được viết bởi
Bình luận
Đặt câu hỏi, chia sẻ kết quả hoặc giúp đỡ người khác.










