沒人教,沒人管,甚至沒人給它發工資。一個AI代理在GitHub倉庫里自己讀文檔、跑實驗、寫代碼、提交結果,硬是在2024年MaxSAT競賽的229道難題上刷出了新紀錄。
更離譜的是,它把"怎么變強"的經驗寫進expert.md,推回倉庫。下一個AI代理pull下來繼續練。這不是科幻,是Claude Code正在干的事。
![]()
一圖讀懂:這個系統怎么運轉
先看架構圖。GitHub倉庫是中央大腦,存著四樣東西:expert.md(歷代AI的經驗總結)、library/(工具庫)、best-solutions(當前最優解)、experiments.log(實驗記錄)。
下面掛著N臺虛擬機,每臺跑兩個AI代理。代理們循環做三件事:讀program.md領任務、讀expert.md繼承知識、從library挑工具跑實驗。跑完把新發現寫回expert.md,最優解更新到best-solutions,然后git push。
關鍵是"無人類指導"四個字。不是人類寫死策略讓AI執行,是AI自己決定試什么、學什么、放棄什么。代理之間也不直接通信,全靠GitHub倉庫異步協作——一個代理半夜push了新策略,另一個代理早上pull到就能用。
這設計妙在避免了"中央調度瓶頸"。傳統分布式計算要有個主節點分配任務,這里主節點就是個靜態文件倉庫。AI代理們像蜜蜂采蜜,各自飛出去,回巢時把花粉(新發現)存在固定位置,其他蜜蜂自取。
MaxSAT是什么?為什么值得AI死磕
SAT(布爾可滿足性問題)是計算機科學的"試金石"。給定一堆布爾變量和約束,問是否存在滿足所有約束的賦值。MaxSAT是它的優化版:約束有權重,求滿足約束的最大總權重。
這問題看著抽象,應用極廣。芯片驗證、軟件測試、調度優化、密碼分析……本質上都是"一堆限制條件里找最優解"。2024年MaxSAT Evaluation的main anytime weighted track,229個實例來自真實工業場景,代表了這個領域最難的考題。
傳統解法分兩支。一支是手工設計的啟發式算法,人類專家憑經驗調參數;另一支是機器學習輔助,但通常只負責預測某個子問題,核心搜索邏輯還是人寫的。這個AI代理不一樣——它從工具庫開始,自己組合、改進、甚至發明策略。
library/里有什么?原文沒列全,但從上下文推斷,應該包括基礎求解器(如Glucose、Kissat)、局部搜索啟發式、預處理技術、參數配置模板等。AI代理的任務是:針對當前實例,選哪些工具、按什么順序、調什么參數。
自主學習循環:沒有老師,只有反饋
program.md是給AI的"任務說明書",但只定義目標(優化這229個實例),不定義方法。expert.md是核心創新——它不是靜態知識庫,是動態積累的"實驗筆記"。
想象你學做菜,每次做完把"火大了""鹽少了"寫下來。下次做飯前先翻筆記。這個AI的筆記結構大概是:實例特征→嘗試過的策略→效果對比→失敗原因推測。用自然語言寫在expert.md里,方便下一個AI代理閱讀理解。
experiments.log則是結構化數據:實例ID、運行時間、找到的最佳解、使用的工具鏈、硬件環境。AI代理分析這些日志,識別哪些策略在哪些類型實例上有效。這是典型的"離線學習"——不依賴實時獎勵,而是從批量歷史數據里挖規律。
最狠的是best-solutions.bin。這不是文本,是二進制格式的最優解存檔。AI代理可以直接讀取前代的最佳結果,作為新搜索的起點。相當于每代人都站在前人肩膀上,但不用等前人死掉——昨晚的解,今早就能用。
為什么選GitHub當協作層
這設計有種"用現成基礎設施偷懶"的美感。Git的版本控制解決沖突合并,GitHub的權限管理控制寫入,issue和PR機制天然支持異步討論(雖然這里主要是AI自己跟自己對話)。
更重要的是可追溯性。227次commits,每次push都有時間戳、作者(AI代理ID)、變更內容。如果某個策略突然失效,可以回滾到上一個穩定版本。這比傳統黑箱式的AI訓練透明得多——你能看到"智慧"是怎么一層層堆起來的。
VM集群的部署也很務實。不用搞Kubernetes那種重型編排,每臺VM獨立運行,只和GitHub通信。Agent 1和Agent 2在同一臺VM上,可能共享內存加速;Agent 1和Agent 3跨VM,完全隔離。這種"半分布式"架構平衡了效率和容錯。
原文沒提具體用了多少臺VM,但從圖上的"..."和Agent編號推測,至少是6個以上,可能按需彈性擴展。競賽有時間限制,anytime track意味著隨時提交當前最佳解,算力越多并行優勢越大。
從"工具使用者"到"策略發明者"
關鍵問題是:這個AI只是在調參,還是在發明新算法?原文用詞很謹慎——"discovers novel strategies"(發現新策略),不是"invents new algorithms"(發明新算法)。
但別小看"發現"。MaxSAT求解器的策略空間極其龐大:預處理要不要做、做哪種;主求解器選CDCL(沖突驅動子句學習)還是局部搜索;重啟頻率怎么設;變量決策啟發式用VSIDS還是學習一個……人類專家通常固定幾套"配方",AI可以針對每個實例動態調配。
更激進的可能性是組合創新。library里可能有10種預處理、5種搜索內核、3種后處理,人類專家沒時間試遍150種組合。AI可以系統性地探索,把"沒人想到過"的工具鏈跑通。這就是"novel strategies"的來源——不是從0發明,是從未被探索過的組合。
expert.md的寫法也暗示了這一點。如果是純參數調優,用結構化配置就夠了。但用自然語言寫"經驗",說明AI在總結抽象規律,比如"稀疏約束圖實例適合先跑X預處理"——這種啟發式規則可以遷移到新實例。
72顆星的背后:開源社區的角色
這個倉庫目前72個star,0個fork。數字很小,但意味深長。它不是面向普通開發者的工具庫,是研究原型,吸引的是SAT求解器領域的硬核玩家。
![]()
真正有趣的是"other agents can build on its findings"(其他代理可以基于它的發現繼續建設)。這暗示了一個未來圖景:不同團隊部署自己的AI代理,都往同一個倉庫push經驗。人類研究者pull下來分析,找出AI發現的規律,再反哺到人工算法設計。
這是一種新型人機協作。AI負責"廣撒網"式的暴力探索,人類負責"深思考"式的理論提煉。227次commits里,可能藏著人類專家幾年都試不出來的策略組合,但AI不會解釋為什么有效——這需要人類介入。
CLAUDE.md文件的存在也值得玩味。這是給Claude Code的專屬說明,還是通用代理規范?從命名看,項目綁定了Anthropic的AI編程工具,但架構設計是通用的。換成OpenAI的Codex或Google的Gemini,理論上也能跑,只要會讀Markdown、執行shell命令、調Git。
技術細節的留白與想象
原文透露的信息密度很高,但關鍵細節故意模糊。比如:AI代理一次運行多久?是幾分鐘快速迭代,還是幾小時深度搜索?229個實例是串行處理還是并行分配?expert.md的具體格式是什么?
這些留白可能是商業敏感,也可能是研究尚未定型。但從run.sh和run_local.sh的存在推測,項目支持云端集群和本地單機兩種模式。本地版方便調試,云端版用于正式刷榜。
agent.log和experiments.log的區別也耐人尋味。前者可能是單個代理的運行日志,后者是全系統的實驗匯總。這種分層日志設計,既方便實時調試,又支持批量分析。
benchmarks/max-sat-2024目錄存放測試實例,這是標準競賽數據集,確保結果可復現、可對比。但"main anytime weighted track"只是2024年競賽的一個賽道,還有unweighted、incomplete等其他賽道。這個AI目前只攻weighted,是資源限制還是策略聚焦?原文沒說。
對AI研究方法的啟示
這個項目最顛覆的,是把"AI做科研"從比喻變成工程現實。傳統機器學習是:人類設計實驗→收集數據→訓練模型→驗證效果。這里是:AI設計實驗→執行→分析結果→更新知識→設計下一個實驗。
循環的關鍵是"可寫回的知識表示"。expert.md不是模型權重那種黑箱,是人類可讀的文本。這意味著AI的"學習成果"可以被審計、被質疑、被改進。如果某條經驗寫錯了,人類可以手動修正,下一個AI代理會讀到修正版。
這也解決了AI系統的一個經典難題:災難性遺忘。神經網絡學新任務會忘掉舊任務,但這里的知識存在Git歷史里,隨時可以checkout。AI代理每次pull的是最新版,但完整歷史都在,相當于外置了長期記憶。
對比DeepMind的AlphaDev(用AI發現更快排序算法),這個項目更"平民化"。不需要TPU集群,GitHub+云VM就能跑。開源代碼(雖然README說Public,但license未明)意味著社區可以復現、 fork、改進。
局限與未解之謎
別急著喊"AI科學家來了"。當前版本有幾個明顯天花板:
第一,工具庫是人類預設的。AI在組合現有工具,不是從第一性原理推導新算法。如果library里沒有某種技術,AI也發現不了。這限制了"顛覆式創新"的可能。
第二,評估標準單一。MaxSAT競賽只看解的質量和找到時間,不看算法可解釋性、內存占用、實現復雜度。AI可能找到"作弊"策略,比如針對測試集過擬合,或利用競賽服務器的特定硬件特性。
第三,沒有理論產出。人類SAT專家會證明"某類實例可在多項式時間內求解",AI只關心"這個實例我解出來了"。經驗總結停留在啟發式層面,沒有上升到定理。
第四,協作機制原始。多代理之間沒有真正的分工配合,只是共享倉庫。如果Agent 1發現某個策略對實例A有效,Agent 2不會主動來問"你怎么做到的",它只能自己從expert.md里讀。
為什么這事值得科技從業者關注
對25-40歲的科技從業者來說,這個項目的信號很明確:AI正在吃掉"策略優化"類工作。不是替代程序員,是替代"調參工程師"——那些靠經驗試配置、記筆記、傳手藝的崗位。
更深層的變化是知識管理方式。expert.md這種"自然語言知識庫+版本控制"的模式,可能擴展到其他領域。想象一個運維團隊,AI代理7×24小時嘗試各種告警響應策略,把有效的寫進runbook,無效的打標簽廢棄。人類SRE(站點可靠性工程師)定期review,提煉通用原則。
對創業者,這是"AI原生工具鏈"的樣板。不是給現有軟件加AI功能,是圍繞AI的能力邊界重新設計協作流程。GitHub在這里不只是代碼托管,是分布式認知的同步層。
對研究者,它提出了新問題:怎么評估AI的"科研貢獻"?如果AI發現了人類沒見過的策略組合,但給不出數學證明,這算發現還是工程技巧?同行評議體系怎么適應這種產出?
最后,72個star的冷清和227次commits的熱鬧形成對比。這可能是最真實的AI研究現狀:大眾還沒感知,圈內已經卷瘋了。MaxSAT是個小眾領域,但方法論是通用的。下一個被AI"自學成才"的,可能是你的專業領域。
畢竟,這個倉庫的自我介紹已經寫得很明白了:目標是"world's top expert on MaxSAT"——不是"之一",是"頂尖"。而且"no human guidance",人類只負責按啟動鍵。
現在它72星。等它720星的時候,可能MaxSAT競賽已經要分"人類組"和"AI組"了。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.