Bài báo mới nhất hợp tác giữa DeepSeek và Đại học Bắc Kinh đã vén màn bản chất của Harness (Bản "Cá Voi").
Tên bài báo là "A Programming Paradigm for Spatiotemporal Composability", được dịch sang tiếng Trung là "Một mô hình lập trình cho tính ghép nối thời-không".
Nghe có vẻ hơi rắc rối, bạn chỉ cần nhớ một câu thôi——
Toàn văn xoay quanh Cordis, đây là cốt lõi của Cá Voi Đen, một "tấm nền Lego" có thể tháo lắp tùy ý.
Ở đây, vạn vật đều là plugin, vạn vật đều có thể tái tổ hợp.
Điều này cũng giải thích tại sao mức độ mở của "Cá Voi Đen" lại cao như vậy, chính thức cũng rất khuyến khích mọi người tạo plugin và tùy chỉnh Harness.
Một bài báo chứa đựng lượng thông tin khổng lồ, cũng là tác phẩm tổng hợp quy mô lớn mà đội ngũ Harness của DeepSeek đã tích lũy sức lực từ lâu, cuối cùng đã chiến thắng đẹp mắt dưới hình thức Cá Voi Đen khổng lồ.
Đáng chú ý là, đây là bài báo thứ bảy trong năm của DeepSeek, cũng là lần hợp tác thứ N với Đại học Bắc Kinh.

Tổng cộng hơn tám mươi trang, tôi đã ôm bài báo và nghiền ngẫm từ đầu đến cuối, đại khái tổng hợp được mấy điểm Takeaway——
1. Cordis cung cấp một ngữ nghĩa kết hợp động phổ quát. Các thành phần được quản lý bởi Context có thể được tải động, gỡ bỏ, và tự động thu hồi các hiệu ứng phụ được quản lý của chúng.
2. Nền tảng toán học đến từ hai khái niệm kinh điển trong lý thuyết loại: effect và coeffect.
3. Không phải đồ chơi phòng thí nghiệm. Thiết kế này đã chạy trên framework chatbot Koishi được bốn năm, được kiểm chứng trong môi trường sản xuất bởi hơn 4000 plugin cộng đồng.

Và tất cả những điều này đều phục vụ cho cùng một tham vọng——
Tự tiến hóa.
Thời gian và không gian, hai rào cản cho sự tự tiến hóa của Harness
Thế giới phần mềm có một thực tế phản trực giác: Hầu hết các hệ thống hỗ trợ plugin, sau khi gỡ bỏ một plugin, cần phải khởi động lại toàn bộ tiến trình chủ.
Điều này có nghĩa là, cái bị xóa đi có thể chỉ là một plugin, nhưng đi cùng nó khởi động lại lại là tất cả các plugin đã được tải.
Đúng vậy, "cắm" vào, thực tế là đã cắm vào thì không thể rút ra được.
VSCode là một trường hợp điển hình.
Bài báo cho biết, tính đến ngày 9 tháng 6 năm 2026, trong số 100 tiện ích mở rộng hàng đầu trên VSCode Marketplace, 87 tiện ích chứa mã thực thi, một khi được kích hoạt thì không thể gỡ bỏ riêng lẻ trong thời gian chạy, sau khi vô hiệu hóa hoặc xóa phải khởi động lại toàn bộ máy chủ mở rộng.
Đây không phải là vấn đề riêng của VSCode. Bài báo chỉ ra rằng, hầu hết các kiến trúc plugin đều tồn tại loại khuyết điểm này, chỉ là mức độ khác nhau.
Chuyện này đặt trong hệ thống plugin thông thường đã đủ phiền phức rồi, nhưng nếu chi phí chỉ là khởi động lại thì cũng có thể chấp nhận được.
Nhưng trong ngữ cảnh của Agent, lại hoàn toàn là một vấn đề khác.
Một bộ yên cương (harness) thông thường, bên trong thường nhét đầy đủ thứ: bộ công cụ, môi trường thực thi, kiểm soát quyền, sandbox, trạng thái phiên, hệ thống ghi nhớ... bản thân nó đã là một hệ thống kỹ thuật cực kỳ phức tạp.
Mà giờ đây, lại gặp phải "AI tự tiến hóa" Tôn Ngộ Không này, chỉ một chút sơ suất là có thể tự sửa chính mình biến mất.

Đây cũng là góc độ mà bài báo của DeepSeek tiếp cận vấn đề tự tiến hóa:
Agent trong tương lai có thể dựa vào nhiệm vụ, tự mình tạo ra một công cụ, tự mình cài công cụ vào thời gian chạy, phát hiện có vấn đề thì lại tự thay thế nó.
Nếu mỗi lần sửa một dòng code đều phải khởi động lại toàn bộ tiến trình, thì ngữ cảnh, cache đã tích lũy trước đó đều có thể sụp đổ hết.
Đây gọi là tính ghép nối thời gian.
Nếu sự phụ thuộc giữa các module dựa vào việc mỗi module tự vá lỗi, hôm nay kiểm tra xem có A không, ngày mai đoán xem B... chỉ một chút sơ suất sẽ dẫn đến phụ thuộc vòng tròn, đến khi tải lại thì sẽ nổ.
Đây gọi là tính ghép nối không gian.
Và hai khó khăn này cũng chính là hai vấn đề mà Cordis muốn giải quyết.
Giải pháp của DeepSeek
Trước tiên cần bổ sung hai điểm kiến thức toán học, cũng là hai trụ cột lý thuyết của bài báo này——
Effect và Coeffect.
Nói đơn giản, effect khắc họa "ảnh hưởng của chương trình đối với thế giới"; coeffect khắc họa "ràng buộc của thế giới đối với chương trình". Hai khái niệm có quan hệ đối ngẫu: hệ thống effect làm phong phú thêm kiểu, hệ thống coeffect làm phong phú thêm ngữ cảnh.
Nhưng có một vấn đề, trong ngữ cảnh AI tự tiến hóa, framework được tải động.
Effect/coeffect kinh điển là công cụ của hệ thống kiểu tĩnh.
Để đồng thời vượt qua hai rào cản thời gian và không gian, nhóm đã nâng cấp thích ứng hai khái niệm này một lần cho thời gian chạy Agent——"revertible effects" và "reactive coeffects".
Revertible effects, nhắm vào chiều thời gian.
Định nghĩa cốt lõi chỉ có một câu: Mỗi lần sửa đổi ngữ cảnh đều phải đi kèm một hàm ngược (inverse function) rõ ràng, như vậy hiệu ứng phụ là có thể đảo ngược.
Khi tải plugin, mỗi lần sửa đổi trạng thái đều ghi lại hàm ngược tương ứng, chồng lên theo thứ tự thành một "chuỗi hoàn tác".
Khi gỡ bỏ plugin thì thực thi ngược lại chuỗi này, trạng thái hệ thống có thể khôi phục chính xác về trạng thái trước khi plugin được tải.
Có thể hiểu như một chồng đĩa, cái đặt lên cuối cùng sẽ được lấy đi trước.
Như vậy, thứ tự thời gian sẽ không bị loạn.
Reactive coeffects thì chịu trách nhiệm cho chiều không gian.
Trong Cordis, component có thể khai báo mình cần những phụ thuộc nào, từ đó đạt được khả năng phân giải phụ thuộc.
Ví dụ một plugin chat nói rằng, tôi cần một bộ chuyển đổi tin nhắn và một cơ sở dữ liệu. Hai phụ thuộc đều thỏa mãn, nó mới vào trạng thái ACTIVE. Thiếu một cái, nó giữ nguyên trạng thái INACTIVE, không vội khởi động, cũng không chạy trước rồi báo lỗi tham chiếu null.
Nhà cung cấp xuất hiện, phía phụ thuộc tự động kích hoạt. Nhà cung cấp rút đi, phía phụ thuộc dừng lại trước, sau khi nó thu hồi effect của mình, nhà cung cấp mới hoàn tất việc gỡ bỏ.
Phía cung cấp phụ thuộc bị gỡ, phía phụ thuộc tự động dừng; phụ thuộc lại xuất hiện, phía phụ thuộc tự động khôi phục. Sự sắp xếp topo này không phải do nhà phát triển viết tay, mà được tự động suy ra từ khai báo.
Sự kết hợp của hai điều trên tạo nên cốt lõi của Cordis.
Ý nghĩa trực quan của "tính ghép nối thời-không" trong tiêu đề bài báo nằm ở đây.
Koishi
Vậy những điều vừa nói, có được kiểm chứng qua thực tế không?
Có.
Và quy mô còn không nhỏ.
Cái mà bài báo dùng để kiểm chứng thực nghiệm, là một framework chatbot tên là Koishi.

Koishi được xây dựng dựa trên Cordis, bốn năm tích lũy được hơn 4000 plugin cộng đồng, bao phủ bộ chuyển đổi nhắn tin tức thời, driver cơ sở dữ liệu, bảng điều khiển quản lý và các chức năng người dùng đa dạng.
GitHub hiển thị, Koishi là một framework chatbot đa nền tảng, có thể mở rộng, hiệu suất cao.
Tên và thiết kế biểu tượng của nó bắt nguồn từ nhân vật Komeiji Koishi trong dự án Touhou Project.
Komeiji Koishi là một nhân vật có những hành động vô thức, cái tên này vừa tượng trưng cho chủ đề chatbot, vừa chứa đựng tình yêu mà nhà phát triển đã đổ vào đó.
Cũng là một phần README khá thú vị.

Vậy Cordis là gì?
Tác giả Koishi cho biết, tên Cordis bắt nguồn từ tiếng Latinh có nghĩa là trái tim, mọi thứ của Koishi đều bắt đầu từ Cordis.
Là một meta-framework, Cordis không bị ràng buộc với bất kỳ lĩnh vực hoặc kịch bản cụ thể nào.
Khả năng mà nó cung cấp là điều mà hầu hết các framework đều không lạ——hệ thống plugin, nhưng đằng sau hệ thống này lại là mục tiêu mà hầu hết các framework đều chưa đạt được: tính đảo ngược.
Và còn để lại một câu như thế này:
Tôi hy vọng nó có thể trở thành cốt lõi của phần mềm tương lai (ít nhất là phần mềm do tôi phát triển).

Bốn năm trôi qua, bài báo này của DeepSeek đã đưa ra sự kiểm chứng.
Trước tiên là kiểm chứng chiều thời gian.
Trong Koishi, quản trị viên có thể từ bảng điều khiển vô hiệu hóa một plugin, ảnh hưởng của plugin đối với hệ thống sẽ được thu hồi tại chỗ, các plugin khác tiếp tục hoạt động.
Khi phát triển, plugin được sửa đổi và lưu lại, plugin bị sửa sẽ được áp dụng lại, cache và kết nối vẫn giữ nguyên.
Tiếp theo là kiểm chứng chiều không gian.
Trong hệ sinh thái Koishi, bộ chuyển đổi IM cung cấp quyền truy cập nền tảng tin nhắn, driver cơ sở dữ liệu cung cấp lưu trữ bền vững, plugin chức năng khai báo những thứ này là phụ thuộc để truy cập trực tiếp.
Trong quá trình chạy thực tế, khi chuyển đổi backend lưu trữ hoặc kết nối lại bộ chuyển đổi, chỉ có những plugin mà phụ thuộc thực sự thay đổi mới được kích hoạt lại, các plugin không thay đổi phụ thuộc vẫn đứng yên.
Cần biết rằng, những plugin này thường do các tác giả khác nhau phát triển độc lập, sự phối hợp duy nhất giữa chúng chính là reactive coeffect mà Cordis nhấn mạnh.
Điều này chứng tỏ, một bộ quy tắc kết hợp động thực sự có thể hoạt động trong một hệ sinh thái plugin mở được đóng góp bởi các tác giả khác nhau.
Nhưng bài báo cũng không đóng gói trường hợp này thành một demo hoàn hảo.
Nhóm thừa nhận, hiện chỉ có dữ liệu kiểm chứng từ hệ sinh thái duy nhất Koishi, ngôn ngữ duy nhất TypeScript, thiếu so sánh đối chứng có kiểm soát với các kiến trúc thay thế...
Nhưng quan trọng nhất vẫn là chỉ ra một hướng đi mới, một cơ sở hạ tầng Harness Agent phục vụ cho sự tự tiến hóa.
Và DeepSeek Harness được phát hành hiện nay, chính là phiên bản nâng cấp của Koishi Cordis.
Giới thiệu tác giả bài báo
Cuối cùng là nói về tác giả bài báo như thường lệ.
Có tổng cộng ba người, trải dài qua Đại học Bắc Kinh và DeepSeek.

Tác giả chính tên là Yifan Shi, đến từ Đại học Bắc Kinh, đồng thời cũng là thành viên của DeepSeek.
Sau khi đào sâu tìm hiểu thì phát hiện, hóa ra trong DeepSeek V3 Technical Report trước đây, từng xuất hiện tên của anh ấy.

Dự án được dùng để kiểm chứng trong bài báo mới này——Koishi——cũng xuất phát từ tay anh ấy.
Có thể thấy là rất có sự ám ảnh với "shi", tên thật là Yifan Shi, tên dự án là Koishi, tên GitHub là Shigma. (doge)

Trở lại chủ đề chính.
Koishi là một kho lưu trữ từ bốn năm trước, hiện nay đã có 5.7K sao. Có thể nói, đây là nguồn gốc của tất cả.
Bởi vì khái niệm Cordis cũng được đề xuất trong Koishi.
Năm 2023, Shigma viết một bài thiết kế cho tài liệu chính thức của Koishi, tiêu đề là "Hệ thống plugin có thể đảo ngược", gần như là tổ tiên của bài báo mới này.

Zhang Wei (Wei Zhang), cũng đến từ Đại học Bắc Kinh, là phó giáo sư tại Viện Nghiên cứu Phần mềm, Khoa Máy tính, Đại học Bắc Kinh.
Trang web của trường cho thấy, nghiên cứu của Zhang Wei chủ yếu bao gồm kỹ thuật phần mềm, ngôn ngữ lập trình.

Năm 1999, ông tốt nghiệp cử nhân chuyên ngành Nhiệt vật lý Kỹ thuật tại Đại học Hàng không Vũ trụ Nam Kinh. Sau đó chuyển hướng sang máy tính, năm 2002 nhận bằng thạc sĩ Khoa học Máy tính tại Đại học Hàng không Vũ trụ Nam Kinh.
Sau khi tốt nghiệp thạc sĩ, Zhang Wei vào Đại học Bắc Kinh tiếp tục học tiến sĩ, và năm 2006 nhận bằng tiến sĩ Lý thuyết và Phần mềm Máy tính.
Sau khi tốt nghiệp tiến sĩ, ông trực tiếp ở lại Đại học Bắc Kinh làm việc, sau đó tiếp tục nghiên cứu và giảng dạy trong các lĩnh vực kỹ thuật phần mềm, ngôn ngữ lập trình.
Đáng chú ý là, ngay từ ASE năm 2021, Zhang Wei đã hợp tác với Yifan Shi.

Năm 2024, hai người lại cùng nhau công bố bài báo ICSME "Focused: An Approach to Framework-oriented Cross-language Link Specification and Detection".

Cuối cùng là người quen cũ.
Cui Tianyi, Trưởng nhóm Harness của DeepSeek. Cử nhân tốt nghiệp Khoa Máy tính, Đại học Chiết Giang, là học đệ của Liang Wenfeng.

Trong thời gian đi học, Cui Tianyi từng được tuyển thẳng vào Đại học Chiết Giang nhờ NOIP/cuộc thi tin học, và còn 6 lần giành huy chương vàng tại các cuộc thi lập trình ACM ICPC khu vực châu Á.
Sau khi tốt nghiệp, anh ấy lại lần lượt làm việc 9 năm tại văn phòng Hong Kong và New York của Jane Street.

Liên kết bài báo: https://github.com/cordiverse/paper
Koishi: https://github.com/koishijs/koishi
Bài viết này đến từ tài khoản WeChat công chúng "Quantum Bit", tác giả: Jay








