
Đánh giá các tác nhân mã hóa AI cho SQL phân tán: 350 lượt chạy, 17 mô hình
URL bài viết: https://www.yugabyte.com/blog/benchmarking-ai-coding-agents-for-distributed-sql-lessons/ URL bình luận: https://news.ycombinator.com/item?id=48209259 Điểm: 1 Bình luận: 0
Trở lại trang chủ Blog
Đánh giá hiệu năng các tác nhân mã hóa AI cho SQL phân tán: Những gì chúng tôi đã học được
Chúng tôi đã thực hiện 350 đánh giá trên mọi mô hình và công cụ chính. Dưới đây là những gì dữ liệu cho thấy!
Dmitry Sherstobitov
Ngày 20/5/2026
Trong phần 1 của loạt bài đăng gồm 2 phần này, chúng tôi đã đưa ra một tuyên bố táo bạo: AI không thất bại vì thiếu dữ liệu. Nó thất bại vì được huấn luyện quá tốt trên cơ sở dữ liệu sai.
Các mô hình AI viết PostgreSQL thuần túy. Nếu cơ sở dữ liệu của bạn được phân tán, việc cung cấp cho mô hình AI một tệp kỹ năng YugabyteDB sẽ thu hẹp khoảng cách và đảm bảo nó viết mã hoạt động cho ứng dụng của bạn.
Trong bài đăng này, chúng tôi phân tích kết quả đánh giá hiệu năng trên 17 cấu hình mô hình. Chúng tôi chia sẻ những yếu tố đã làm thay đổi điểm số, những yếu tố đã thoái lui và một phát hiện cấu trúc duy nhất làm thay đổi cách mọi nhóm nên suy nghĩ về việc cung cấp ngữ cảnh cho một công cụ mã hóa AI.
Đánh giá hiệu năng trong thực tế
Chúng tôi đã thực hiện hơn 350 đánh giá trên 17 cấu hình mô hình: Claude 4.5, 4.6 và 4.7, Gemini 3.1 Pro, GPT-5.x, Composer 2, Codex CLI – thông qua Claude Code CLI, Cursor và Codex.
Tuyên bố của chúng tôi rằng AI tập trung vào Postgres của bạn thiếu dữ liệu chính xác là đúng. Nhưng ba điều khác đã xuất hiện mà chúng tôi không ngờ tới:
Công cụ bao bọc mô hình quan trọng ngang với chính mô hình.
Các quy tắc của tệp kỹ năng thường xuyên thoái lui dưới mức zero-shot khi mẫu yêu cầu luồng điều khiển hoạt động, không chỉ là một lệnh cấm.
Sáu lần lặp lại điều chỉnh một tệp kỹ năng cho một khối lượng công việc cụ thể đã âm thầm làm cho nó tệ hơn ở mọi nơi khác.
Cách tệp kỹ năng hoạt động
Thêm tệp kỹ năng YugabyteDB và khả năng tránh các mẫu không mong muốn tăng từ 2,42 lên 3,79 – mức tăng +57%.
Chúng tôi đã chấm điểm ba chiều, mỗi chiều từ 0-5:
D1 – tránh các mẫu không mong muốn: các lỗi âm thầm (SERIAL PKs, bảng UNLOGGED, cột hệ thống). Được kiểm tra bằng regex dựa trên danh sách 38 mục – mang tính xác định, không có phán đoán.
D2 – áp dụng các mẫu tích cực: khóa UUID, logic thử lại, cấu hình trình điều khiển thông minh.
D3 – chất lượng kiến trúc: phân tích tĩnh theo kinh nghiệm về cấu trúc mã, xử lý lỗi, quản lý tài nguyên và nhận thức phân tán. Năm chiều phụ được chấm điểm bằng regex, trung bình từ 0-5.
Chúng tôi đã thực hiện 55 tác vụ trên:
thiết kế lược đồ
mã ứng dụng
tối ưu hóa truy vấn
khả năng chịu lỗi
vận hành
Với tối thiểu 11 lời nhắc cho mỗi cấu hình mô hình.
Ngữ cảnhTổng thểD1 Tránh mẫu không mong muốnD2 Mẫu tích cựcD3 Chất lượngZero-shot2,722,423,352,38Tệp kỹ năng3,253,793,442,53
Mọi chiều đều được cải thiện. Hiệu ứng tập trung ở D1: những điều mà các mô hình không biết, không phải những điều chúng phải suy luận. Bạn không thể suy luận rằng ctid và xmin không tồn tại trong lớp lưu trữ của YugabyteDB. Bạn không thể suy luận rằng CREATE UNLOGGED TABLE vẫn âm thầm ghi qua Raft. Trừ khi mô hình được huấn luyện cụ thể về trường hợp đặc biệt này, nó sẽ mặc định theo mẫu phổ biến nhất. Bạn phải cung cấp các sự kiện, hoặc bạn sẽ gặp phải các lỗi âm thầm.
Các mẫu D1 được cải thiện nhiều nhất – UNLOGGED TABLE, SERIAL PKs, cột hệ thống – được ghi lại trong các ghi chú tương thích của YugabyteDB. Điểm zero-shot là 2,42. Khoảng cách không phải do thiếu tài liệu; đó là vì dữ liệu huấn luyện chung không ghi đè lên mẫu PostgreSQL chiếm ưu thế tại thời điểm suy luận. Tệp kỹ năng hoạt động khác – nó chèn ngữ cảnh tại thời điểm suy luận, khi tác vụ, lược đồ và cụm cụ thể đã được biết. Những điều đó không có trong bất kỳ tập huấn luyện nào.
Từ Phần 1: việc chấm điểm đã được xây dựng lại. Chiều "nhận thức" ban đầu đã được chia thành D1 và D2 – việc tránh và áp dụng di chuyển độc lập, và việc tính trung bình chúng đã che giấu cả hai tín hiệu. Danh sách kiểm tra đã tăng từ 26 mục lên 38. Hiệu quả thực thi (D4) bị loại trừ khỏi các điểm số trên – 96% các lần chạy đạt điểm 2,5 hoặc 3,0, không tạo ra sự khác biệt hữu ích nào.
trên toàn bộ 55 tác vụ chuẩn. Hiệu quả thực thi được đề cập riêng trong phần thử nghiệm TPC-H dưới đây.
Những gì nó khắc phục. Và những gì nó không khắc phục.
Những cải tiến lớn nhất đều nằm ở các lỗ hổng kiến thức. Đây là các tính năng của PostgreSQL biên dịch trên YugabyteDB, nhưng hoạt động khác với mong đợi.
`SELECT id, ctid, xmin FROM orders` theo dõi các phiên bản hàng trong PostgreSQL tiêu chuẩn. Lớp lưu trữ DocDB của YugabyteDB không hiển thị các cột đó – truy vấn bị lỗi. Mô hình chưa bao giờ thấy lỗi trong quá trình huấn luyện, vì vậy nó lặp lại mẫu. Tỷ lệ tránh lỗi không cần huấn luyện (zero-shot avoidance): 13%. Với tệp kỹ năng: 71%.
`CREATE UNLOGGED TABLE` là một tối ưu hóa PostgreSQL tiêu chuẩn cho các bảng tạm thời. Trên YugabyteDB, cú pháp được phân tích, bảng được tạo và mọi thao tác ghi vẫn đi qua cơ chế đồng thuận Raft. Không có lỗi, không có cảnh báo, không có lợi ích. Tỷ lệ tránh lỗi không cần huấn luyện: 27%. Với tệp kỹ năng: 81%.
Ba mục có mức cải thiện gần như bằng không, và cả ba đều là các mẫu thủ tục – không phải lỗ hổng kiến thức:
Khóa chính UUID – 77% không cần huấn luyện, 75% với tệp kỹ năng. Các mô hình đã sử dụng UUID khi tác vụ đề cập đến khả năng mở rộng – tệp kỹ năng không thêm cải thiện nào ở đây. Phần 1 đã chỉ ra lý do tại sao điều này quan trọng: `SERIAL` định tuyến mọi thao tác chèn đến cùng một tablet, làm mất tác dụng hoàn toàn của việc phân mảnh băm (hash sharding).
Thử lại với độ trễ tăng dần (retry with backoff) – 79% không cần huấn luyện, 64% với tệp kỹ năng. Quy tắc thêm các mã lỗi cụ thể của hệ thống phân tán (40001, 40P01) nhưng không dạy luồng điều khiển, và thực tế còn giảm xuống dưới mức không cần huấn luyện.
ROLLBACK trước khi thử lại – 69% không cần huấn luyện, 50% với tệp kỹ năng. Sự giảm sút tương tự. Một chi tiết yêu cầu mã hoạt động, không phải một quy tắc.
Tệp kỹ năng khắc phục các lỗ hổng kiến thức, nhưng nó không khắc phục các mẫu thủ tục, điều này có thể làm cho mọi thứ tồi tệ hơn. Sự khác biệt đó là phát hiện chính trong phần tiếp theo.
Chi phí công cụ
Đây là lúc điểm chuẩn trở nên thú vị.
Claude Opus 4.6 đạt 4.62 điểm tổng thể thông qua Claude Code CLI với tệp kỹ năng. Cùng một mô hình, cùng một ngữ cảnh, thông qua một bản dựng Claude Code cũ hơn: 2.01.
| Đường dẫn truy cập | Tổng thể | D1 | D2 | D3 |
|---|---|---|---|---|
| Claude Code CLI (hiện tại, Opus 4.7) | 4.35 | 4.73 | 4.46 | 3.85 |
| Claude Code CLI (Opus 4.6) | 4.62 | 4.95 | 4.46 | 4.46 |
| Con trỏ (Opus 4.6) | 3.91 | 3.75 | 4.14 | 3.83 |
| Claude Code CLI (2026-03, Opus 4.6) | 2.01 | 4.65 | 0.61 | 0.77 |
Kết quả Claude Code ban đầu – 2.01 – đến từ một phiên bản mà cơ chế tác nhân (agentic sca)
Nguồn tin: Hacker News AI — Tác giả: mityash. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.