

AI Viết Lại Cả Trình Biên Dịch TypeScript, Nhanh Hơn 11 Lần: Đây Là Cách Người Ta Kiểm Tra Để Tin Được
🦀 AI Viết Lại Cả Trình Biên Dịch TypeScript, Nhanh Hơn 11 Lần: Đây Là Cách Người Ta Kiểm Tra Để Tin Được
Một trình biên dịch là phần mềm đọc code bạn viết và biến nó thành thứ máy tính hiểu được. TypeScript là ngôn ngữ lập trình cực kỳ phổ biến, và trình biên dịch của nó vừa được một đội nhỏ giao hẳn cho AI viết lại từ đầu bằng ngôn ngữ khác, chạy nhanh hơn tới 11 lần. Điều đáng chú ý không chỉ là tốc độ, mà là cách họ chứng minh bản AI viết không làm sai một dòng code nào của người dùng.
Chuyện gì đã xảy ra
Theo Browne, người sáng lập công ty Ping Labs và nổi tiếng với kênh lập trình t3.gg, giao cho AI một việc rất khó: viết lại toàn bộ trình biên dịch, bộ kiểm tra kiểu dữ liệu (type checker) và máy chủ ngôn ngữ của TypeScript bằng Rust, một ngôn ngữ lập trình nổi tiếng chạy nhanh và an toàn bộ nhớ. Dự án có tên tsc-rs.
Lần thử đầu, anh dùng các mô hình AI dòng Codex (của OpenAI) để làm việc này. Sau nhiều tháng và hơn 400.000 đô la tiền token AI, bản viết lại vẫn chỉ đúng khoảng 84% so với bản gốc, tức là cứ khoảng 6 dòng code thì có thể sai 1 dòng, không đủ an toàn để dùng thật. vibeaicoder.xyz đã kể chi tiết câu chuyện tốn kém này.
Lần hai, anh đổi sang Claude Opus 5.5 của Anthropic. Chỉ sau 10 giờ, AI đã ra được bản chạy được đầu tiên. Toàn bộ dự án hoàn thành trong khoảng 2 tuần, với chi phí khoảng 24.000 đô la, rẻ hơn lần thất bại trước tới 17 lần. Theo Browne thừa nhận thẳng: "Tôi chưa từng đọc một dòng code nào trong dự án này" (nguyên văn trong tài liệu dự án).
Vì sao dám tin một bản code không ai đọc qua
Đây là phần quan trọng nhất, vì "AI viết code nhanh" không có nghĩa là "AI viết code đúng". Nhóm đã kiểm tra bằng cách:
- Chạy lại toàn bộ 181.711 bài kiểm tra (test) vốn dùng để kiểm tra bản TypeScript gốc, bản Rust mới phải vượt qua tất cả.
- Đem bản mới chạy thử trên 120 dự án mã nguồn mở thật ngoài đời, không phải chỉ dữ liệu demo tự tạo.
- So sánh từng cảnh báo lỗi: hai dự án quen thuộc với dân lập trình là TanStack Query và Hono cho ra kết quả cảnh báo lỗi giống hệt bản gốc, không thiếu không thừa.
Cách làm này giống như thuê một người mới dịch cả một cuốn sách dày, rồi không chỉ đọc vài trang kiểm tra cho có, mà đối chiếu từng câu với bản gốc và nhờ hàng trăm người khác đọc thử xem có hiểu sai chỗ nào không. Khi tất cả đều khớp, bạn mới dám tin bản dịch mới.
Nhanh hơn bao nhiêu
Trên các ứng dụng thật, bản tsc-rs nhanh hơn bản TypeScript 7 gốc khoảng 1,6 lần, và nhanh hơn bản TypeScript 6 cũ tới 11,4 lần (tính theo trung bình trên nhiều dự án). Với một dự án cụ thể, bản mới kiểm tra code xong trong 7,25 giây, trong khi bản cũ mất 16,1 giây. Với các dự án lớn, vài giây tiết kiệm mỗi lần lưu file cộng dồn lại thành rất nhiều thời gian chờ đỡ mất mỗi ngày.
Điều này có ý nghĩa gì với bạn
Bạn không cần biết Rust hay tự viết trình biên dịch để rút ra bài học ở đây:
- AI giờ có thể làm những việc kỹ thuật cực lớn, miễn là có cách kiểm tra kết quả rõ ràng (ở đây là 181.711 bài test có sẵn). Nếu công việc của bạn có một bộ tiêu chí "đúng/sai" rõ ràng, AI làm việc đó sẽ đáng tin hơn nhiều so với việc chỉ nhìn qua rồi tin.
- Không phải cứ trả tiền nhiều là ra kết quả tốt. Lần thất bại tốn gấp 17 lần so với lần thành công. Chọn đúng công cụ (ở đây là đổi từ Codex sang Claude Opus 5.5) quan trọng hơn việc đổ thêm tiền vào một hướng đi sai.
- Nếu bạn đang tự học lập trình cùng AI, đây cũng là một ví dụ thực tế cho vibe coding, cách lập trình cùng AI khi chưa rành code: luôn cần một cách kiểm tra lại, không giao phó 100% và tin ngay.
Giới hạn cần biết
Dự án tsc-rs vẫn đang ở giai đoạn thử nghiệm, chưa thay thế chính thức bản TypeScript đang được hàng triệu lập trình viên dùng mỗi ngày. Việc một AI viết ra code không ai đọc lại cũng là chuyện gây tranh cãi: nó chỉ an toàn khi có bộ kiểm tra khổng lồ đi kèm như trường hợp này, không phải lúc nào cũng áp dụng được cho mọi dự án.
Câu hỏi thường gặp
AI nào đã viết lại được trình biên dịch TypeScript thành công? Claude Opus 5.5 của Anthropic, sau khi một mô hình AI khác (dòng Codex) đã thử và thất bại trước đó.
Vì sao lại viết lại bằng Rust mà không giữ nguyên ngôn ngữ cũ? Rust nổi tiếng chạy nhanh và an toàn bộ nhớ, giúp trình biên dịch kiểm tra code nhanh hơn đáng kể, điều rất quan trọng với các dự án lập trình lớn.
Làm sao biết bản AI viết lại không có lỗi ẩn? Nhóm chạy lại 181.711 bài kiểm tra có sẵn và thử trên 120 dự án mã nguồn mở thật, so khớp từng cảnh báo lỗi với bản gốc.
Bản trình biên dịch mới này có dùng được ngay chưa? Chưa, đây vẫn là dự án thử nghiệm, chưa phải bản chính thức thay thế TypeScript đang dùng rộng rãi.
Tôi không biết lập trình thì câu chuyện này liên quan gì đến tôi? Nó cho thấy giới hạn của AI đang mở rộng rất nhanh, và quan trọng hơn là cách kiểm tra kết quả AI làm ra, một kỹ năng hữu ích dù bạn dùng Claude cho bất kỳ việc gì, không chỉ để viết code.
Doanh nghiệp muốn giới thiệu sản phẩm AI tới bạn đọc Vibe AI Coder? Xem gói tài trợ


