Nỗi ám ảnh mang tên “Onboarding” dự án cũ
Nhảy vào một dự án legacy với hàng chục nghìn dòng code không một dòng comment là cơn ác mộng của mọi developer. Người tiền nhiệm đã nghỉ từ lâu, tài liệu thì sơ sài. Thông thường, bạn sẽ mất ít nhất 1-2 tuần chỉ để đọc luồng và hiểu cách các module kết nối trước khi dám đặt bút viết dòng code đầu tiên.
Trước đây, giải pháp phổ biến là dùng RAG (Retrieval-Augmented Generation). Tuy nhiên, RAG thường chỉ lấy ra từng mẩu code rời rạc, khiến AI dễ bị “ngáo” vì thiếu bức tranh tổng thể. Với Gemini 1.5/2.0 Pro, mọi thứ đã khác. Khả năng xử lý từ 1 triệu đến 2 triệu token cho phép bạn ném toàn bộ source code của một ứng dụng vào một lần prompt duy nhất.
Mình từng thử ném một hệ thống microservices phức tạp vào Gemini. Kết quả thật bất ngờ: AI chỉ mất 45 giây để giải thích chính xác luồng dữ liệu mà mình định mất cả ngày để trace thủ công.
Tại sao Long Context của Gemini lại là “vũ khí hạng nặng”?
Hầu hết các model như GPT-4 hay Claude đời cũ có giới hạn ghi nhớ (context window) khá hẹp. Khi bạn copy quá nhiều file, chúng sẽ bắt đầu “quên” phần đầu hoặc báo lỗi quá tải. Gemini Pro xóa bỏ rào cản này.
Cửa sổ ngữ cảnh khổng lồ mang lại ba lợi thế cực lớn:
- Quét toàn bộ codebase: Không cần băm nhỏ hay dùng vector database phức tạp. Toàn bộ logic dự án nằm gọn trong bộ nhớ đệm của AI.
- Hiểu mối quan hệ xuyên suốt: AI nhận diện được file A gọi function ở file B, và file B đó tác động đến database ở file C một cách nhất quán.
- Truy tìm bug logic: Thay vì chỉ check cú pháp, nó có thể phát hiện những lỗi logic nghiệp vụ sâu bên trong mà chỉ khi nhìn tổng thể mới thấy được.
Quy trình 3 bước để “AI hóa” codebase của bạn
Để AI đọc code hiệu quả, đừng copy-paste thủ công từng file. Chúng ta cần một cách tiếp cận chuyên nghiệp và gọn gàng hơn.
Bước 1: Đóng gói codebase bằng Repomix
Repomix là công cụ dòng lệnh giúp nén toàn bộ project thành một file text duy nhất nhưng vẫn giữ nguyên cấu trúc thư mục. Nó tự động loại bỏ các thư mục rác như node_modules hay .git để tiết kiệm token.
Tại thư mục gốc của dự án, bạn chỉ cần chạy:
npx repomix
Sau vài giây, bạn sẽ có file repomix-output.txt. Đây là “bản đồ” hoàn hảo để các mô hình ngôn ngữ lớn (LLM) có thể đọc hiểu nhanh nhất.
Bước 2: Nạp dữ liệu vào Google AI Studio
Thay vì dùng bản Gemini web thông thường, hãy sử dụng Google AI Studio. Đây là sân chơi dành cho developer với đầy đủ tham số tùy chỉnh và hỗ trợ tối đa context window.
- Truy cập Google AI Studio.
- Chọn model Gemini 1.5 Pro hoặc Gemini 2.0 Flash để có tốc độ xử lý nhanh nhất.
- Nhấn + (Add Content) và upload file
repomix-output.txtlên.
Với một dự án React khoảng 50.000 dòng code, nó chỉ chiếm tầm 150k – 200k tokens. Con số này vẫn còn rất nhỏ so với giới hạn 2 triệu token của Gemini.
Bước 3: Những câu lệnh “đắt giá” để khai thác dự án
Khi AI đã nắm trọn codebase, hãy đặt những câu hỏi có mục tiêu rõ ràng. Dưới đây là vài prompt mình thường dùng:
1. Phân tích kiến trúc:
Dựa trên code, hãy vẽ sơ đồ Mermaid mô tả luồng dữ liệu từ Request đến Database. Chỉ ra các Design Pattern đang được sử dụng.
2. Rà soát bảo mật:
Đóng vai Senior Security Engineer, hãy tìm các lỗ hổng như SQL Injection hoặc hở Secret Key trong codebase này. Liệt kê cụ thể file và dòng code.
3. Hướng dẫn tính năng mới:
Tôi muốn thêm tính năng 'Xác thực 2 lớp'. Tôi cần sửa những file nào và logic hiện tại có gì cần lưu ý không?
Kinh nghiệm thực chiến: Khi AI tìm ra lỗi trong 30 giây
Mình từng xử lý một ca memory leak khó nhằn trên hệ thống FastAPI. Ứng dụng cứ chạy khoảng 2 tiếng là treo. Sau khi nạp 40 file code vào Gemini, mình hỏi: “Tại sao ứng dụng bị tụt hiệu năng theo thời gian?”.
Chỉ mất chưa đầy 1 phút, Gemini chỉ ra lỗi khởi tạo connection pool bên trong một vòng lặp – thứ mà mình đã bỏ sót khi đọc bằng mắt. Nó thậm chí còn viết lại đoạn code đó theo chuẩn Singleton pattern, giúp giảm 40% lượng RAM tiêu thụ ngay lập tức. Tiết kiệm cho mình ít nhất nửa ngày ngồi mò mẫm log.
Lưu ý quan trọng để tránh “tiền mất tật mang”
Dù Gemini rất mạnh, bạn vẫn cần tuân thủ các nguyên tắc an toàn:
- Bảo mật dữ liệu: Tuyệt đối không upload code chứa API key hoặc mật khẩu DB thật. Hãy đảm bảo Repomix đã loại bỏ các file
.envtrước khi nén. - Kiểm chứng kết quả: AI vẫn có thể “ảo tưởng” (hallucination). Đừng bao giờ copy-paste code của AI mà không chạy thử và review lại kỹ lưỡng.
- Quản lý chi phí: AI Studio có gói miễn phí, nhưng nếu dùng API cho dự án lớn, hãy theo dõi lượng token để tránh hóa đơn gây sốc.
Tận dụng Long Context là cách nhanh nhất để biến một codebase xa lạ thành sân nhà của bạn. Thay vì tốn hàng tuần để làm quen, giờ đây bạn có thể bắt tay vào giải quyết vấn đề ngay lập tức.

