UNETI VCaption là dự án mình phát triển nhằm giải quyết bài toán sinh chú thích ảnh tự động bằng tiếng Việt. Ứng dụng sử dụng các mô hình AI hiện đại, có giao diện trực quan với Streamlit, giúp người dùng dễ dàng tạo caption cho ảnh cá nhân hoặc đánh giá hàng loạt ảnh. Dự án này không chỉ là một sản phẩm công nghệ mà còn là tâm huyết của mình với mong muốn đóng góp cho cộng đồng AI Việt Nam.
Trong quá trình học tập và làm việc, mình nhận thấy các công cụ sinh caption ảnh hiện nay chủ yếu hỗ trợ tiếng Anh, rất ít giải pháp cho tiếng Việt. Điều này thôi thúc mình xây dựng một ứng dụng mã nguồn mở, dễ dùng, giúp cộng đồng Việt Nam tiếp cận AI trong xử lý ảnh. Mình muốn tạo ra một sản phẩm vừa hữu ích, vừa dễ tiếp cận cho cả người dùng phổ thông lẫn các bạn sinh viên, nghiên cứu viên.
Ban đầu, mình xác định mục tiêu là xây dựng một ứng dụng có thể sinh chú thích ảnh tiếng Việt với độ chính xác cao, giao diện thân thiện, dễ sử dụng và dễ triển khai. Mình cũng muốn ứng dụng có thể mở rộng, tích hợp nhiều mô hình khác nhau để người dùng lựa chọn.
Mình chọn Python làm ngôn ngữ chính vì hệ sinh thái AI mạnh mẽ, nhiều thư viện hỗ trợ. Streamlit được chọn để xây dựng giao diện web vì dễ phát triển, trực quan, phù hợp cho cả demo lẫn triển khai thực tế. Ngoài ra, mình sử dụng Google Drive để lưu trữ model, giúp giảm dung lượng repo và thuận tiện cho việc tải model tự động.
Ứng dụng tích hợp nhiều mô hình như CaRNetvI, CaRNetvH, CaRNetvHC, CaRNetvHCAttention, đều được tối ưu cho tiếng Việt. Mình đã thử nghiệm nhiều kiến trúc, tinh chỉnh tham số và đánh giá trên tập dữ liệu thực tế để chọn ra mô hình tốt nhất. Việc xử lý tiếng Việt có nhiều thách thức riêng, như dấu câu, từ ghép, nên mình phải điều chỉnh pipeline tiền xử lý và hậu xử lý cho phù hợp.
Mình chú trọng vào trải nghiệm người dùng: giao diện hỗ trợ cả chế độ Light/Dark, có thể upload ảnh đơn hoặc nhiều ảnh (dạng .zip), kết quả hiển thị trực tiếp, không cần tải file về. Ứng dụng cũng tự động tải model từ Google Drive khi chạy lần đầu, giúp người dùng không phải thao tác thủ công.
Ứng dụng có thể chạy trên máy tính cá nhân hoặc deploy lên Streamlit Cloud. Mình đã thử nghiệm trên nhiều môi trường, nhận phản hồi từ bạn bè và cộng đồng để cải thiện hiệu năng, giao diện và độ ổn định.
Dự án giúp mình nâng cao kỹ năng về Python, Streamlit, và hiểu sâu hơn về xử lý ngôn ngữ tự nhiên tiếng Việt. Mình học được cách tối ưu trải nghiệm người dùng, triển khai ứng dụng AI thực tế, cũng như làm việc với các công nghệ lưu trữ, triển khai cloud. Ngoài ra, mình còn rèn luyện kỹ năng viết tài liệu, hướng dẫn sử dụng và làm việc nhóm khi nhận được sự đóng góp từ cộng đồng.
Dự án vẫn đang mở rộng, mình mong muốn nhận được góp ý, pull request từ cộng đồng để hoàn thiện hơn. Nếu bạn quan tâm, hãy thử trải nghiệm và đóng góp tại repo GitHub. Mọi ý kiến đóng góp đều rất quý giá với mình!
Tác giả: Thisorp