Tại sao lại cần xây dựng mô hình ngôn ngữ mở cho tiếng Việt?

Trong bài viết Cùng chung tay xây dựng ChatGPT tiếng Việt dữ liệu mở mình kêu gọi mọi người cùng nhau đóng góp dữ liệu để xây dựng mô hình ngôn ngữ mở cho tiếng Việt. Trong phạm vi một bài viết kêu gọi, mình chưa thể giải thích kỹ lưỡng các vấn đề liên quan tới mô hình ngôn ngữ, chúng quá mới mẻ nên cần một bài viết riêng để giải thích kỹ lưỡng hơn. Đây cũng là bài viết để giải đáp các câu hỏi mình nhận được từ bài viết trước đó.

ChatGPT dùng ngon lành rồi, cần gì mô hình ngôn ngữ mở?

Đúng là như vậy, với người dùng bình thường, khi ChatGPT vẫn mở cho mọi người dùng Free thì với hầu hết các tác vụ ChatGPT vẫn là nhất! Điều này không thể chối cãi. Giả sử một ngày đẹp trời ChatGPT không mở Free nữa thì sao? Liệu một mô hình mở có độ tốt gần tương đương có cần thiết hay không và sự ra đời của các mô hình mở để phá thế độc quyền của OpenAI có thể gây sức ép để OpenAI tiếp tục cải tiến chất lượng và tiếp tục cởi mở với người dùng?


Hai nữa là nguồn gốc và khả năng kiểm soát thông tin, mô hình GPT-3.5 (hay ChatGPT) của OpenAI được xây dựng trên tập dữ liệu đóng, OpenAI không công bố cho chúng ta biết mô hình được xây dựng trên dữ liệu nào để có thể truy nguồn gốc và kiểm chứng thông tin.


Ba là bảo mật thông tin, sẽ có những tổ chức, cá nhân, không muốn thông tin nội bộ bị lọt ra ngoài hệ thống của họ. Họ muốn mô hình ngôn ngữ / chatbot phải được triển khai trên servers, trên cơ cở hạ tầng do chính họ bảo mật và kiểm soát. Trong trường hợp này liệu đến khi nào OpenAI làm được những việc tỉ mỉ như vậy? Và liệu có đủ tin cậy khi một công ty có trụ sở ở nước ngoài làm điều đó cho các tổ chức ở Việt Nam?

Liệu mô hình ngôn ngữ mở có đủ tốt để triển khai ứng dụng cụ thể?

Đây là câu hỏi mình thích nhất. ChatGPT là mộ mô hình ngôn ngữ lớn, đa nhiệm, rất tốt nhưng không hoàn hảo. Khi đi vào lĩnh vực sâu nó vẫn chưa đáp ứng được nhu cầu. Chi phí để cải tiến (finetune) thì quá đắt đỏ (do nó là mô hình ngôn ngữ hàng trăm tỉ tham số). Khi đi vào một lĩnh vực cụ thể một mô hình ngôn ngữ nhỏ hơn (vài chục tỉ tham số, thậm chí vài tỉ tham số) nhưng được huấn luyện trên mật độ dày đặc các thông tin chuyên ngành sẽ hoạt động tốt hơn một mô hình ngôn ngữ lớn nhưng mật độ thông tin chuyên ngành loãng. Đó là lý do Bloomberg xây dựng cho mình một mô hình ngôn ngữ riêng trong lĩnh vực tài chính với 50 tỉ tham số (bằng 1/6 so với GPT-3 của OpenAI).

Một lợi thế của mô hình nhỏ nữa là chi phí triển khai rẻ hơn rất nhiều. Một mô hình 7 tỉ tham số đã có thể triển khai trên điện thoại iPhone (nguồn https://mlc.ai/mlc-llm)

Hãy tưởng tượng mọi chiếc điện thoại thông minh, mọi máy tính cá nhân để có một mô hình ngôn ngữ chạy được trên đó, bạn có một trợ lý cá nhân, một người hiểu rõ bạn và bạn có thể “triệu hồi” bất cứ lúc nào mình cần. Sự bình dân hóa mô hình ngôn ngữ / trợ lý ảo / chatbot này chỉ có thể thông qua các mô hình ngôn ngữ mở. Nhìn ở góc độ này mô hình ngôn ngữ mở sẽ làm được rất nhiều điều mà mô hình ngôn ngữ đóng không làm được.

Mô hình sắp được xây dựng có độ lớn bao nhiêu? Các kỹ năng nào của mô hình có đủ độ tin cậy để triển khai ứng dụng?

Sẽ có nhiều mô hình cho tiếng Việt được triển khai, khi lượng dữ liệu tiếng Việt chưa được thu thập đầu đủ, mô hình đầu tiên 15 tỉ tham số dựa trên cách xây dựng mô hình ngôn ngữ LLaMA của Meta được huấn luyện đa ngôn ngữ Anh, Nhật, Việt, Phần Lan và ngôn ngữ lập trình sẽ được huấn luyện trên siêu máy tính LUMI của Phần Lan. Mô hình này có khả năng suy luận tốt (do được huấn luyện trên ngôn ngữ lập trình), khả năng dịch từ ngôn ngữ này sang ngôn ngữ khác (Anh Việt, Việt Anh …) và nhiều khả năng khác mà một mô hình ngôn ngữ nói chung có thể làm được (tham khảo Vicuna một chatbot 13 tỉ tham số được xây dựng trên LLaMA có độ tốt 90% so với ChatGPT).

Mô hình tiếp theo nhiều dữ liệu tiếng Việt hơn dự kiến sẽ được xây dựng (chưa chính thức đề xuất), sẽ bao gồm tiếng Anh, tiếng Việt và các ngôn ngữ lập trình. Mô hình này có khả năng hấp thụ 4TB dữ liệu, và dự kiến sẽ được huấn luyện trên khoảng 1-2TB dữ liệu tiếng Việt, dưới 2TB tiếng Anh và phần còn lại là ngôn ngữ lập trình. Độ lớn của mô hình và tỉ lệ trộn dữ liệu sẽ tùy thuộc vào số lượng dữ liệu tiếng Việt chúng ta thu thập được (càng nhiều càng tốt, để mô hình hiểu tiếng Việt tốt hơn). Với mô hình này chúng tôi lạc quan rằng nó có độ tốt không kém các mô hình ngôn ngữ mở chỉ dành riêng cho tiếng Anh.

Mô hình mở liệu có được làm ứng dụng thương mại?

Câu trả lời là có, dự kiến là Apache 2 License cho cả mô hình và bộ dữ liệu. Mọi người có thể dùng mô hình để triên khai ứng dụng thương mại theo đúng luật bản quyền và sử dụng lại bộ dữ liệu để tự huấn luyện / tinh chỉnh mô hình theo nhu cầu.

Dữ liệu huấn luyện liệu có bị bản quyền và được kiểm soát nội dung?

Chúng tôi sẽ chỉ lấy dữ liệu từ những website mở (không yêu cầu đăng nhập và mật khẩu), dữ liệu từ các nguồn mở mà các tổ chức khác đã thu thập như Common Crawl, mC4, cc-100, OSCAR, … đã được sử dụng trong các mô hình mở của tiếng Anh và các ngôn ngữ khác. Các câu hỏi sâu hơn về luật bản quyền các bạn liên hệ với các tổ chức cung cấp dữ liệu mở và các mô hình mở đã có để làm rõ.

Về kiểm soát nội dung, chúng tôi sẽ cố gắng lọc các dữ liệu độc hại (quảng cáo, sex, tục tĩu …) ra khỏi bộ dữ liệu thu thập được, nhưng có lẽ không thể đảm bảo sẽ lọc được 100%. Khối lượng công việc là rất lớn nên bạn nào quan tâm về vấn đề này hãy giúp chúng tôi một tay.

Việc sử dụng, cập nhật và tiếp tục huấn luyện tiếp mô hình sẽ như thế nào? Ai là người làm?

Sau khi mô hình được huấn luyện xong sẽ được tải lên một trang web công cộng để mọi người ai cũng có thể download và tự chạy mô hình trên phần cứng đủ mạnh. Mô hình cũng được làm nhẹ đi (quantization) để chạy được trên các thiết bị đầu cuối như điện thoại thông minh và máy tính cá nhân. Sẽ có những lập trình viên dùng mô hình để triên khai thành chatbot và ứng dụng, bạn sử dụng chúng như sử dụng ChatGPT.

Việc cập nhật mô hình theo nhu cầu sẽ được làm bởi những lập trình viên có kỹ năng và phần cứng thích hợp (sẽ cần GPU có 12 tới 24G vram để làm việc này một cách hiệu quả). Cá nhân có nhu cầu có thể thuê các lập trình viên này làm. Cũng có thể có các công ty cung cấp dịch vụ này khi nhu cầu đủ lớn.

Việc cập nhập mô hình ở quy mô lớn hơn, sẽ cần thu thập thêm dữ liệu, không lớn như chúng ta đang làm nhưng cũng cũng sẽ tốn công sức, và có lẽ sẽ cần có nguồn kinh phí để làm được việc này theo năm. Có thể lúc đó chúng ta đã trở nên chuyên nghiệp hơn, đã có thể kiếm được thu nhập từ mô hình ngôn ngữ mở và đã sẵn sàng để đóng góp những khoản tài chính để làm việc cập nhật mô hình ngôn ngữ hoặc xây dựng mô hình mới một cách chuyên nghiệp hơn.

Cuối cùng, hãy tham gia dự án tại:

Next
Next

Cùng chung tay xây dựng ChatGPT tiếng Việt dữ liệu mở