Một pull request khổng lồ với 128.000 dòng code được tạo hoàn toàn bởi AI đã châm ngòi cho những cuộc thảo luận sôi nổi về tương lai của phát triển mã nguồn mở. Đóng góp gây tranh cãi này cho dự án OpenCut , được tạo bằng Claude AI , đã trở thành tâm điểm của những lo ngại về spam do AI tạo ra có thể làm ngập các kho lưu trữ mã nguồn mở.
Pull request mang tiêu đề Try to help but need some help chứa những gì có vẻ như là một nỗ lực đóng góp thiện chí nhưng lại sai hướng cho dự án. Tuy nhiên, quy mô khổng lồ và bản chất được tạo bởi AI của đoạn code này đã đặt ra những câu hỏi nghiêm túc về tính bền vững của các mô hình đóng góp mã nguồn mở hiện tại.
Phân tích spam code AI
Phân tích pull request khổng lồ này cho thấy một mô hình đáng lo ngại. 128.000 dòng code được chia thành 86.000 dòng tài liệu do AI tạo ra (68%), 9.000 dòng test do AI tạo ra (7%), và chỉ 32.000 dòng code thực sự (25%). Chất lượng tài liệu đặc biệt kém, giống như nội dung copy-paste từ các phiên chat AI hơn là tài liệu dự án có ý nghĩa.
Bản thân code có vẻ chứa lỗi và loại bỏ logic hiện có mà không có lý do rõ ràng, khiến nó không chỉ vô dụng mà còn có thể gây hại cho dự án. Nhiều commit với các thông điệp chung chung như Updated project files càng làm nổi bật tính chất tự động của đóng góp này.
Phân tích Pull Request:
- Tổng số dòng: 128,000
- Tài liệu do AI tạo ra: 86,000 dòng (68%)
- Bài kiểm tra do AI tạo ra: 9,000 dòng (7%)
- Code thực tế: 32,000 dòng (25%)
- Số lượng commit: hơn 300
- Thông điệp commit chung chung: hơn 20 trường hợp "Updated project files"
Mối đe dọa ngày càng lớn đối với tính bền vững của mã nguồn mở
Sự cố này đã khơi dậy những lo ngại rộng lớn hơn về tương lai của việc duy trì mã nguồn mở. Các thành viên cộng đồng chỉ ra những tiền lệ lịch sử khi spam tăng mạnh khi có các ưu đãi liên quan, chẳng hạn như khi Digital Ocean tặng áo phông miễn phí cho các đóng góp mã nguồn mở. Với việc triển vọng việc làm hiện tại gắn liền với biểu đồ đóng góp GitHub , tiềm năng spam do AI tạo ra có thể nghiêm trọng hơn nhiều.
LLM đã giúp có thể dễ dàng tạo ra những thứ rác trông có vẻ hợp lý ở quy mô lớn và các nhà duy trì mã nguồn mở sẽ sớm phải đối phó với khối lượng lớn các PR như thế này trong tương lai.
Thách thức không chỉ dừng lại ở khối lượng đơn thuần. Code do AI tạo ra có thể vượt qua nhiều tiêu chí chất lượng truyền thống trong khi chứa những hiểu lầm tinh vi đòi hỏi đầu tư thời gian đáng kể để xác định. Điều này tạo ra gánh nặng bất cân xứng khi các nhà duy trì phải dành công sức đáng kể để xem xét các đóng góp chỉ tốn rất ít nỗ lực để tạo ra.
Thách thức trong phát hiện và ngăn chặn
Khác với spam do con người tạo ra, code AI đặt ra những thách thức phát hiện độc đáo. Code được tạo ra thường có tên biến hợp lý, các hàm ngắn gọn và cấu trúc tài liệu tốt, khiến việc xác định là có vấn đề trở nên khó khăn nếu không xem xét kỹ lưỡng. Các bộ lọc tự động truyền thống có thể bắt được spam rõ ràng lại kém hiệu quả hơn đối với đầu ra AI tinh vi.
Một số thành viên cộng đồng đề xuất triển khai các giải pháp xã hội, chẳng hạn như yêu cầu những người đóng góp mới phải đầu tiên gửi các mô tả vấn đề chi tiết thể hiện sự hiểu biết về codebase. Tuy nhiên, những người khác lo lắng rằng cách tiếp cận này có thể làm nản lòng những người đóng góp hợp pháp trong khi không thể ngăn chặn những kẻ spam quyết tâm có thể sử dụng AI để tạo ra những lời giải thích thuyết phục.
Các vấn đề kỹ thuật chính được xác định:
- Chất lượng tài liệu kém giống như các phiên chat với LLM
- Code chứa các lỗi rõ ràng và việc loại bỏ logic
- Không có lý do rõ ràng cho các thay đổi
- Có thể gây hại cho dự án nếu được merge
- Bằng chứng sử dụng Claude AI (có file
.claude/settings.local.json
)
Những tác động rộng lớn hơn
Sự cố này không chỉ đại diện cho một pull request có vấn đề đơn lẻ. Nó làm nổi bật một sự thay đổi cơ bản trong cách code có thể được tạo ra và gửi ở quy mô lớn. Sự dễ dàng mà các công cụ AI có thể tạo ra khối lượng lớn code trông hợp lý đe dọa làm quá tải các quy trình xem xét dựa trên tình nguyện viên mà hầu hết các dự án mã nguồn mở dựa vào.
Tình huống này cũng đặt ra câu hỏi về trách nhiệm của các nhà cung cấp và người dùng công cụ AI. Trong khi người gửi có vẻ có thiện ý, việc thiếu giám sát của con người và hiểu biết về code được tạo ra đã tạo ra gánh nặng đáng kể cho các nhà duy trì dự án.
Khi cộng đồng mã nguồn mở đang vật lộn với những thách thức này, nhu cầu về các chính sách, công cụ và chuẩn mực xã hội mới trở nên ngày càng cấp bách. Sự tồn tại của các hệ sinh thái mã nguồn mở lành mạnh có thể phụ thuộc vào việc tìm ra những cách hiệu quả để khai thác lợi ích của AI trong khi ngăn chặn việc lạm dụng nó.
Tham khảo: Try to help but need some help #479