Moonshot AI đã phát hành Kimi-Dev-72B, một mô hình ngôn ngữ lớn (LLM) mã nguồn mở mạnh mẽ được thiết kế cho các tác vụ kỹ thuật phần mềm. Mô hình này đạt tỷ lệ giải quyết vấn đề (resolve rate) tiên tiến là 60.4% trên SWE-bench Verified, vượt trội so với các mô hình mã nguồn mở khác. Đối với các nhà phát triển và nhà nghiên cứu, Kimi-Dev-72B cung cấp một công cụ mạnh mẽ để tối ưu hóa việc viết mã, gỡ lỗi và tự động hóa các quy trình phát triển phần mềm.
Kimi-Dev-72B là gì?
Kimi-Dev-72B là một LLM mã hóa với 72 tỷ tham số được phát triển bởi Moonshot AI, một công ty có trụ sở tại Bắc Kinh tập trung vào việc thúc đẩy trí tuệ nhân tạo thông qua đổi mới mã nguồn mở. Không giống như các LLM đa năng, Kimi-Dev-72B chuyên về các tác vụ kỹ thuật phần mềm, chẳng hạn như sửa lỗi, tạo mã và tạo kiểm thử đơn vị. Moonshot AI đã phát hành mô hình này theo Giấy phép MIT, cho phép truy cập miễn phí trên các nền tảng như Hugging Face và GitHub. Do đó, các nhà phát triển trên toàn thế giới có thể tải xuống, triển khai và đóng góp vào sự phát triển của nó, thúc đẩy một hệ sinh thái hợp tác.

Mô hình tận dụng kiến trúc dựa trên transformer, được tối ưu hóa thông qua học tăng cường (RL) quy mô lớn và huấn luyện trung gian (mid-training) với khoảng 150 tỷ token dữ liệu chất lượng cao, thực tế, bao gồm các vấn đề trên GitHub (GitHub issues) và các commit yêu cầu kéo (pull request commits). Cách tiếp cận này đảm bảo Kimi-Dev-72B vượt trội trong các tình huống mã hóa thực tế, phù hợp với các tiêu chuẩn ngành. Ví dụ, khả năng tự động vá các kho lưu trữ trong môi trường Docker và xác thực các giải pháp dựa trên bộ kiểm thử đầy đủ khiến nó khác biệt so với các đối thủ cạnh tranh.
Kiến trúc kỹ thuật của Kimi-Dev-72B
Thiết kế kép: BugFixer và TestWriter
Cốt lõi của Kimi-Dev-72B là một khung công tác gồm hai thành phần: BugFixer và TestWriter. Các thành phần này hoạt động song song để giải quyết các thách thức kỹ thuật phần mềm. BugFixer xác định và sửa chữa các vấn đề về mã, trong khi TestWriter tạo ra các kiểm thử đơn vị để xác thực các bản sửa lỗi. Cả hai thành phần đều tuân theo quy trình hai giai đoạn: Định vị tệp (File Localization) và Chỉnh sửa mã (Code Edits). Trong giai đoạn Định vị tệp, mô hình xác định chính xác các tệp liên quan trong một kho lưu trữ. Sau đó, trong giai đoạn Chỉnh sửa mã, nó thực hiện các thay đổi chính xác, cho dù là vá lỗi hay thêm các hàm kiểm thử.
Thiết kế kép này tăng cường hiệu quả. Ví dụ, BugFixer đảm bảo các bản vá vượt qua kiểm thử đơn vị, trong khi TestWriter tạo ra các kiểm thử gây ra lỗi xác nhận (assertion errors) cho các lỗi và vượt qua khi các bản sửa lỗi được áp dụng. Bằng cách tích hợp các vai trò này, Kimi-Dev-72B đạt được hiệu suất mạnh mẽ trong các tác vụ mã hóa phức tạp, chẳng hạn như giải quyết các vấn đề trên GitHub với sự can thiệp tối thiểu của con người.
Huấn luyện trung gian và Chiến lược dữ liệu
Để xây dựng Kimi-Dev-72B, Moonshot AI bắt đầu với mô hình cơ sở Qwen 2.5-72B và nâng cao nó thông qua huấn luyện trung gian với một tập dữ liệu được tuyển chọn cẩn thận. Tập dữ liệu này, bao gồm hàng triệu vấn đề trên GitHub và yêu cầu kéo, cho phép mô hình học cách các nhà phát triển con người suy luận thông qua các thách thức mã hóa. Việc khử trùng dữ liệu nghiêm ngặt đảm bảo không có sự trùng lặp với các kho lưu trữ SWE-bench Verified, duy trì tính toàn vẹn của đánh giá.
Giai đoạn huấn luyện trung gian, liên quan đến khoảng 150 tỷ token, củng cố kiến thức sẵn có của Kimi-Dev-72B về sửa lỗi và tạo kiểm thử đơn vị. Hơn nữa, tinh chỉnh có giám sát (SFT) cải thiện khả năng Định vị tệp của nó, cho phép mô hình điều hướng các cơ sở mã lớn một cách chính xác. Cách tiếp cận dựa trên dữ liệu này củng cố khả năng xử lý các tác vụ kỹ thuật phần mềm trong thế giới thực của mô hình một cách hiệu quả.
Học tăng cường và Tự chơi trong thời gian kiểm thử
Hiệu suất của Kimi-Dev-72B được hưởng lợi đáng kể từ học tăng cường quy mô lớn. Trong quá trình huấn luyện RL, mô hình giải quyết hàng nghìn tác vụ giải quyết vấn đề, chỉ nhận được phần thưởng khi toàn bộ bộ kiểm thử vượt qua. Quá trình nghiêm ngặt này đảm bảo rằng các bản vá được tạo ra vừa chính xác vừa mạnh mẽ. Ngoài ra, Kimi-Dev-72B sử dụng cơ chế tự chơi trong thời gian kiểm thử, trong đó BugFixer và TestWriter cộng tác để tạo ra tối đa 40 ứng viên bản vá và 40 ứng viên kiểm thử cho mỗi vấn đề. Cách tiếp cận lặp đi lặp lại này tăng cường độ chính xác, vì mô hình tinh chỉnh đầu ra của nó thông qua tự đánh giá.
Quy trình RL tận dụng cơ sở hạ tầng tác nhân nội bộ có khả năng mở rộng của Moonshot AI, cho phép huấn luyện hiệu quả trên nhiều tác vụ khác nhau. Kết quả là, Kimi-Dev-72B đạt tỷ lệ giải quyết vấn đề 60.4% trên SWE-bench Verified, vượt qua mô hình mã nguồn mở dẫn đầu trước đó và tiếp cận hiệu suất của các mô hình mã nguồn đóng như Gemini 2.5 Pro.

Các chỉ số hiệu suất và Kết quả Benchmark
Kimi-Dev-72B đặt ra một tiêu chuẩn mới cho các LLM mã hóa mã nguồn mở. Trên SWE-bench Verified, một khung đánh giá nghiêm ngặt cho các tác vụ kỹ thuật phần mềm, nó đạt tỷ lệ giải quyết vấn đề 60.4%, vượt trội so với các mô hình mã nguồn mở khác và chỉ đứng sau các mô hình mã nguồn đóng hàng đầu. Chỉ số này phản ánh khả năng của mô hình trong việc giải quyết các vấn đề mã hóa trong thế giới thực, chẳng hạn như lỗi trong các kho lưu trữ mã nguồn mở, với độ chính xác cao.

Để so sánh, các bài đăng trên X (trước đây là Twitter) làm nổi bật sự vượt trội của Kimi-Dev-72B, ghi nhận khả năng của nó có thể "vượt trội hơn các mô hình có kích thước lớn gấp 10 lần" và đạt kết quả "chỉ sau Gemini 2.5 Pro". Tuy nhiên, một số thử nghiệm của cộng đồng, chẳng hạn như sử dụng OpenHands, báo cáo độ chính xác thấp hơn (17%) do sự khác biệt giữa các khung đánh giá agentic và agentless. Sự khác biệt này nhấn mạnh tầm quan trọng của các môi trường kiểm thử tiêu chuẩn hóa để đảm bảo các chỉ số hiệu suất nhất quán.
Các ứng dụng thực tế của Kimi-Dev-72B
Tự động hóa Phát triển Phần mềm
Kimi-Dev-72B xuất sắc trong việc tự động hóa các tác vụ phát triển phần mềm lặp đi lặp lại. Ví dụ, nó có thể tạo mã Python sạch, được tài liệu hóa tốt cho các yêu cầu phức tạp, chẳng hạn như tạo một lớp cho Máy bay với các thuộc tính như số đuôi, loại máy bay, tốc độ hành trình và phạm vi tối đa. Mô hình bao gồm các gợi ý kiểu (type hints) và chuỗi tài liệu (docstrings), tuân thủ các thực hành tốt nhất về chất lượng mã. Khả năng này giúp giảm thời gian phát triển và giảm thiểu lỗi, làm cho nó trở nên có giá trị cho cả nhà phát triển mới bắt đầu và có kinh nghiệm.
Hơn nữa, Kimi-Dev-72B có thể tự động vá các kho lưu trữ trong môi trường Docker, đảm bảo khả năng tương thích với các quy trình làm việc thực tế. Bằng cách xác thực các bản vá dựa trên bộ kiểm thử đầy đủ, nó đảm bảo các giải pháp mạnh mẽ, biến nó thành một công cụ đáng tin cậy cho các quy trình tích hợp và triển khai liên tục (CI/CD).
Nâng cao Năng suất Nhà phát triển
Các nhà phát triển có thể tận dụng Kimi-Dev-72B để tối ưu hóa quy trình gỡ lỗi và kiểm thử. Thành phần TestWriter tạo ra các kiểm thử đơn vị phù hợp với yêu cầu dự án, giảm bớt nỗ lực thủ công cần thiết để đảm bảo độ tin cậy của mã. Ngoài ra, khả năng xử lý các cơ sở mã lớn và định vị tệp của mô hình nâng cao tính hữu ích của nó trong các dự án quy mô lớn, nơi việc điều hướng thủ công có thể tốn thời gian.
Ví dụ, một nhà phát triển làm việc trên một dự án Python có thể sử dụng Kimi-Dev-72B để xác định và sửa lỗi trong một mô-đun cụ thể. Mô hình không chỉ gợi ý tệp chính xác mà còn cung cấp các chỉnh sửa mã chính xác, hoàn chỉnh với các bình luận giải thích. Tính năng này đặc biệt hữu ích cho những người đóng góp mã nguồn mở cần giải quyết các vấn đề trong các kho lưu trữ không quen thuộc.
Hỗ trợ Nghiên cứu và Đổi mới
Là một mô hình mã nguồn mở, Kimi-Dev-72B khuyến khích sự đóng góp của cộng đồng, thúc đẩy đổi mới trong phát triển phần mềm dựa trên AI. Các nhà nghiên cứu có thể truy cập trọng số của mô hình, mã nguồn và báo cáo kỹ thuật (sắp có) trên Hugging Face và GitHub. Sự minh bạch này cho phép thử nghiệm các kỹ thuật huấn luyện mới, phương pháp tinh chỉnh và các ứng dụng, chẳng hạn như tích hợp Kimi-Dev-72B vào các IDE chuyên biệt hoặc công cụ CI/CD.
Hơn nữa, cam kết của Moonshot AI đối với khoa học mở phù hợp với mục tiêu của cộng đồng AI rộng lớn hơn. Bằng cách phát hành Kimi-Dev-72B theo Giấy phép MIT, công ty mời gọi các nhà phát triển và nhà nghiên cứu xây dựng dựa trên nền tảng của nó, có khả năng dẫn đến những tiến bộ trong các lĩnh vực như đánh giá mã tự động và lập trình cặp đôi có hỗ trợ AI.
Bắt đầu với Kimi-Dev-72B
Cài đặt và Thiết lập
Triển khai Kimi-Dev-72B khá đơn giản, nhờ có sẵn trên Hugging Face và GitHub. Dưới đây là hướng dẫn từng bước để thiết lập mô hình cục bộ:
Clone Kho lưu trữ:
git clone https://github.com/MoonshotAI/Kimi-Dev.git
cd Kimi-Dev
Tạo Môi trường ảo:
conda create -n kimidev python=3.12
conda activate kimidev
Cài đặt các Phụ thuộc:
pip install -e .
pip install vllm --extra-index-url https://download.pytorch.org/whl/cu128
Tải xuống Dữ liệu Tiền xử lý (tùy chọn, cho các tác vụ SWE-bench):
Tải xuống tệp swebench_repo_structure.zip
từ kho lưu trữ GitHub và giải nén để tối ưu hóa quá trình xử lý kho lưu trữ.
Tải Mô hình:
Sử dụng mã Python sau để tải Kimi-Dev-72B và tạo phản hồi:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "moonshotai/Kimi-Dev-72B"
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype="auto", device_map="auto")
tokenizer = AutoTokenizer.from_pretrained(model_name)
prompt = "Write a Python function to calculate Fibonacci numbers."
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(**model_inputs, max_new_tokens=512)
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
Thiết lập này cho phép các nhà phát triển tích hợp Kimi-Dev-72B vào quy trình làm việc của họ, cho dù là để tạo mã, gỡ lỗi hay kiểm thử.
Tích hợp API với Apidog
Để tối đa hóa tiềm năng của Kimi-Dev-72B, các nhà phát triển có thể tích hợp nó vào các quy trình làm việc dựa trên API bằng cách sử dụng các công cụ như Apidog. Apidog đơn giản hóa việc kiểm thử, tài liệu và giám sát API, cho phép tương tác liền mạch với các khả năng của Kimi-Dev-72B. Ví dụ, bạn có thể tạo các điểm cuối API để gửi các truy vấn mã hóa đến mô hình và nhận mã được tạo ra hoặc các bản sửa lỗi theo thời gian thực.

Thách thức và Hạn chế
Mặc dù Kimi-Dev-72B vượt trội trong nhiều lĩnh vực, nó vẫn có những hạn chế. Hiệu suất của mô hình có thể thay đổi tùy thuộc vào khung đánh giá, như đã lưu ý trong phản hồi của cộng đồng trên X. Các khung agentic, liên quan đến các tương tác lặp đi lặp lại, có thể mang lại kết quả khác so với các thiết lập agentless, nhấn mạnh sự cần thiết của các giao thức kiểm thử tiêu chuẩn hóa.
Ngoài ra, kích thước 72 tỷ tham số của Kimi-Dev-72B đòi hỏi tài nguyên tính toán đáng kể, có thể hạn chế khả năng tiếp cận đối với các nhà phát triển có phần cứng hạn chế. Moonshot AI có kế hoạch giải quyết vấn đề này bằng cách tối ưu hóa các phiên bản tương lai để tăng hiệu quả, có thể thông qua các kỹ thuật lượng tử hóa (quantization) như Q4 hoặc FP8, như đã được đề xuất trong các cuộc thảo luận của cộng đồng.
Kết luận
Kimi-Dev-72B đại diện cho một bước tiến đáng kể trong các LLM mã hóa mã nguồn mở. Tỷ lệ giải quyết vấn đề 60.4% trên SWE-bench Verified của nó, cùng với khung công tác BugFixer và TestWriter đổi mới, định vị nó như một công cụ mạnh mẽ cho các nhà phát triển và nhà nghiên cứu. Bằng cách tự động hóa các tác vụ kỹ thuật phần mềm phức tạp, nâng cao năng suất và thúc đẩy sự hợp tác của cộng đồng, Kimi-Dev-72B mở đường cho một kỷ nguyên mới của phát triển dựa trên AI.
Để bắt đầu, hãy tải xuống Kimi-Dev-72B từ Hugging Face hoặc GitHub và khám phá các khả năng của nó. Để tích hợp API liền mạch, hãy thử Apidog để tối ưu hóa quy trình làm việc của bạn. Khi Moonshot AI tiếp tục đổi mới, Kimi-Dev-72B là minh chứng cho tiềm năng của AI mã nguồn mở trong việc biến đổi phát triển phần mềm.
