Nên cho AI chạy ngay trên điện thoại khi ứng dụng cần phản hồi tức thì, phải chạy cả lúc mất sóng, xử lý dữ liệu riêng tư, hoặc khi bạn không muốn tốn tiền mỗi lần người dùng bấm nút. Nên gửi lên máy chủ khi cần một mô hình lớn, muốn sửa mô hình thường xuyên, hoặc điện thoại của người dùng quá yếu. Và rất nhiều sản phẩm tốt chọn cả hai.
Chào bạn, đây là Nhà Phát Minh. Tập này mình kể qua câu chuyện của một nhóm làm ứng dụng ghi lại và tóm tắt bài giảng cho sinh viên, và những lần họ phải dời bộ não của ứng dụng qua lại giữa điện thoại và máy chủ.
Bản đầu: mọi thứ gửi lên máy chủ
Ý tưởng ban đầu rất gọn. Sinh viên bấm ghi âm trong giờ học, ứng dụng chép lại lời giảng thành chữ, rồi tóm tắt những ý chính. Nhóm dùng những mô hình mạnh chạy trên máy chủ, vì dễ làm nhất và cho chất lượng tốt nhất.
Chạy thử với vài chục sinh viên, mọi thứ ổn. Rồi ứng dụng lan ra, sinh viên ghi âm cả buổi học dài, có bạn ghi cả ngày. Hoá đơn máy chủ cuối tháng làm cả nhóm choáng. Mỗi phút âm thanh gửi lên là một khoản tiền, mà phần lớn người dùng đang dùng miễn phí.
Rắc rối thứ hai đến từ giảng đường. Nhiều phòng học sóng yếu, mạng chung của trường thì chập chờn giờ đông. Ứng dụng quay vòng chờ tải lên, có bạn mất cả buổi ghi.
Đây là lúc nhóm phải trả lời câu hỏi mà lẽ ra nên hỏi từ đầu: phần nào của bộ não nên nằm ở đâu.
Năm câu hỏi để quyết định đặt AI ở đâu
Câu hỏi đầu tiên là sóng. Người dùng của bạn có luôn có mạng tốt không. Sinh viên trong giảng đường, nông dân ngoài ruộng, tài xế trên đèo đều có những lúc mất sóng. Nếu ứng dụng phải chạy lúc đó, ít nhất một phần phải chạy trên máy.
Câu hỏi thứ hai là độ trễ. Gửi dữ liệu đi và chờ kết quả về luôn tốn thời gian. Với một bản tóm tắt thì chờ vài giây không sao. Với một thứ cần phản hồi tức thì, như gợi ý chữ khi đang gõ hay nhận dạng trong camera, vài giây là quá lâu.
Câu hỏi thứ ba là riêng tư. Dữ liệu càng nhạy cảm, như giọng nói, ảnh gia đình, giấy tờ cá nhân, thì càng nên xử lý ngay trên máy nếu được. Không gửi đi thì không lo bị lộ trên đường.
Câu hỏi thứ tư là tiền, và câu thứ năm là sức của điện thoại. Chạy trên máy chủ thì mỗi lượt dùng là một khoản chi của bạn. Chạy trên điện thoại thì miễn phí cho bạn, nhưng tốn pin, làm nóng máy, và điện thoại cũ hay giá rẻ có thể không kham nổi.
Thu gọn mô hình để vừa với điện thoại
Nhóm quyết định đưa phần chép lời giảng xuống điện thoại. Việc đầu tiên là tìm một mô hình đủ nhỏ. Mô hình càng nhỏ càng chạy nhanh, càng ít tốn pin, nhưng cũng kém chính xác hơn, nhất là với giọng địa phương và thuật ngữ chuyên ngành.
Họ thử nhiều cách thu gọn, từ chọn mô hình nhỏ hơn tới làm gọn con số bên trong mô hình để nó nhẹ đi. Mỗi lần thu gọn, họ lại mang ra giảng đường ghi thử, so với bản chép của máy chủ. Có những lần mô hình nhẹ đi rất nhiều mà chất lượng gần như không đổi, có lần chỉ gọn thêm một chút là bắt đầu chép sai tên riêng.
Một phát hiện thú vị: điện thoại tầm trung đời mới xử lý rất ổn, nhưng những chiếc máy cũ nhiều sinh viên đang dùng thì nóng ran sau nửa tiếng. Nhóm phải để ứng dụng tự nhận biết sức máy. Máy khoẻ thì chép ngay trong lúc ghi, máy yếu thì chỉ ghi âm và chép sau khi sạc.
Không có một lựa chọn đúng cho mọi người dùng. Có một lựa chọn đúng cho từng loại máy.
Cách lai: nháp trên máy, tinh chỉnh trên máy chủ
Cuối cùng, nhóm chọn một cách lai. Điện thoại chép lời giảng ngay tại chỗ, sinh viên đọc được bản nháp ngay cả khi không có mạng. Khi có mạng và sinh viên cần, bản nháp chữ, chứ không phải cả tệp âm thanh, được gửi lên máy chủ để mô hình lớn sửa lỗi và tóm tắt.
Gửi chữ thay vì gửi âm thanh làm lượng dữ liệu nhỏ đi rất nhiều, chi phí máy chủ giảm hẳn. Phần tóm tắt chỉ chạy khi sinh viên bấm yêu cầu, không chạy tự động cho mọi buổi ghi.
Cách lai này cũng giải quyết được một chuyện khác: cập nhật mô hình. Mô hình trên máy chủ nhóm sửa được bất cứ lúc nào. Mô hình trên điện thoại thì phải chờ người dùng cập nhật ứng dụng. Nên phần hay thay đổi được để trên máy chủ, phần ổn định để trên máy.
Quy tắc nhóm rút ra rất gọn: thứ cần tức thì và riêng tư thì để gần người dùng, thứ cần sức mạnh và hay đổi thì để ở xa.
Những cái bẫy khi chọn chỗ chạy AI
Bẫy đầu tiên là chỉ thử trên máy của đội. Người làm ứng dụng thường có điện thoại tốt và mạng văn phòng nhanh. Người dùng thật thì không. Hãy mua vài chiếc điện thoại cũ, giá rẻ, và thử ở nơi sóng yếu.
Bẫy thứ hai là quên tính tiền theo lượt dùng. Một ứng dụng miễn phí gọi mô hình trên máy chủ mỗi lần người dùng bấm có thể thành một cái hố không đáy khi đông người dùng. Hãy tính từ sớm, trước khi ứng dụng nổi tiếng.
Bẫy thứ ba là nói với người dùng dữ liệu của họ không rời khỏi máy trong khi thật ra có một phần vẫn gửi đi. Nói gì thì phải đúng như vậy, và nói rõ phần nào gửi đi, để làm gì.
Chọn chỗ đặt bộ não cho ứng dụng không phải là chuyện kỹ thuật thuần tuý. Nó là chuyện người dùng của bạn sống ở đâu, dùng máy gì, và tin bạn tới mức nào.
Câu hỏi thường gặp
Chạy AI trên điện thoại có tốn pin không?
Có, nhất là với tác vụ nặng chạy lâu như chép âm thanh hay xử lý video. Mô hình được thu gọn tốt và chỉ chạy khi cần sẽ giảm hao pin đáng kể.
Vì sao ứng dụng AI miễn phí lại tốn tiền của người làm?
Nếu mô hình chạy trên máy chủ, mỗi lượt người dùng gọi là một lần máy chủ làm việc và phát sinh chi phí. Càng nhiều người dùng miễn phí thì chi phí càng lớn.
AI chạy trên điện thoại có riêng tư hơn không?
Thường là có, vì dữ liệu không phải gửi ra ngoài để xử lý. Tuy vậy người dùng vẫn nên đọc kỹ ứng dụng có gửi dữ liệu nào lên máy chủ hay không.
Điện thoại cũ có chạy được ứng dụng AI không?
Nhiều ứng dụng vẫn chạy được nhưng chậm hơn hoặc chuyển phần nặng lên máy chủ. Ứng dụng tốt sẽ tự nhận biết sức máy để chọn cách chạy phù hợp.
Cách lai giữa điện thoại và máy chủ là gì?
Là chia việc: phần cần nhanh, cần chạy khi mất sóng hoặc riêng tư thì xử lý trên điện thoại, phần cần mô hình lớn hoặc hay cập nhật thì gửi lên máy chủ khi có mạng.