Deep Learning 101, Taiwan’s pioneering and highest deep learning meetup, launched on 2016/11/11 @ 83F, Taipei 101
AI是一條孤獨且充滿惶恐及未知的旅程,花俏絢麗的收費課程或活動絕非通往成功的捷徑。
衷心感謝當時來自不同單位的AI同好參與者實名分享的寶貴經驗;如欲移除資訊還請告知。
由 TonTon Huang Ph.D. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。
Deep Learning 101 創立初衷,是為了普及與分享深度學習及AI領域的尖端知識,深信AI的價值在於解決真實世界的商業問題。
去 YouTube 訂閱 | Facebook | 回 GitHub Pages 首頁 | 到 GitHub 點星 | 網站 | 到 Hugging Face Space 按愛心
| 大語言模型 | 語音處理 | 自然語言處理 | 電腦視覺 |
| Large Language Model | Speech Processing | Natural Language Processing, NLP | Computer Vision |
用 AI 懂 AI
- Chain-of-Thought is not explainability
- arXiv 2506.21521 (Potemkin Understanding in Large Language Models)
- arXiv 2502.04644 (Agentic Reasoning: Reasoning LLMs with Tools for the Deep Research)
- AI新賽局:企業的入門策略指南
- 臺灣大型語言模型性能評測與在地化策略分析報告
- 從零到一:打造本地端高精準度 RAG 系統的實戰指南
- GenAI 與 LLM 在金融產業的應用分析:金融服務中 GenAI 與 LLM 的變革潛力。
- AI Robot 陪伴型機器人:2025 趨勢分析技術突破、市場潛力與未來展望。
- 避開 AI Agent 開發陷阱:常見問題、挑戰與解決方案:探討多種 AI 代理人工具的應用經驗與挑戰,分享實用經驗與工具推薦。
AI 技術 體驗/分享
手把手帶你一起踩 AI 坑:https://www.twman.org/AI
- 白話文手把手帶你科普 GenAI:淺顯介紹生成式人工智慧核心概念,強調硬體資源和數據的重要性。
- 大型語言模型直接就打完收工?:回顧 LLM 領域探索歷程,討論硬體升級對 AI 開發的重要性。
- 檢索增強生成(RAG)不是萬靈丹之優化挑戰技巧:探討 RAG 技術應用與挑戰,提供實用經驗分享和工具建議。
- 大型語言模型 (LLM) 入門完整指南:原理、應用與未來:探討多種 LLM 工具的應用與挑戰,強調硬體資源的重要性。
- 解析探索大型語言模型:模型發展歷史、訓練及微調技術的 VRAM 估算:探討 LLM 的發展與應用,硬體資源在開發中的作用。
- Diffusion Model 完全解析:從原理、應用到實作 (AI 圖像生成);深入探討影像生成與分割技術的應用,強調硬體資源的重要性。
- ASR/TTS 開發避坑指南:語音辨識與合成的常見挑戰與對策:探討 ASR 和 TTS 技術應用中的問題,強調數據質量的重要性。
- 那些 NLP 踩的坑:分享 NLP 領域的實踐經驗,強調數據質量對模型效果的影響。
- 那些語音處理踩的坑:分享語音處理領域的實務經驗,強調資料品質對模型效果的影響。
- 手把手學深度學習安裝環境:詳細介紹在 Ubuntu 上安裝深度學習環境的步驟,分享實際操作經驗。
手把手AI 技術深度實戰教學/開源/試用
AI x Cyber-Security
AIxCC 冠軍 Atlanta 團隊「ATLANTIS」系統關鍵重點解析
同步匯整自 https://zread.ai/Team-Atlanta/aixcc-afc-atlantis 同步匯整自
Team-Atlanta/aixcc-afc-atlantis:包含 AIxCC 總決賽中提交的原始程式碼 同步匯整自 AIxCC狀元探秘
針對 DARPA AI 網路挑戰賽(AIxCC)解析冠軍團隊 Team-Atlanta 所開發的網路推理系統(CRS)——「ATLANTIS」的關鍵技術、架構和核心策略。
目錄
1. 團隊與系統簡介
- 團隊名稱: Team Atlanta
- 團隊負責人: Taesoo Kim
- 團隊背景: 由喬治亞理工學院(Georgia Tech)、三星研究院(Samsung Research)、KAIST 和 POSTECH 的專家組成。
- 獲獎成就: 在 DEF CON 33 (2025 年 8 月) 舉辦的 DARPA AI 網路挑戰賽(AIxCC)總決賽中榮獲第一名。
- 參賽系統: ATLANTIS (AI-driven Threat Localization, Analysis, and Triage Intelligence System)。
2. ATLANTIS 核心理念與策略
ATLANTIS 的成功並非依賴單一技術,而是多種策略的「集成(Ensemble)」。
- 正交策略(Orthogonal Strategies): ATLANTIS 並非單一的 CRS,而是由多個獨立的 CRS(如 C、Java、Multilang、Patch)組成。團隊刻意追求不同的(正交的)策略,以最大化覆蓋範圍和容錯能力。
- LLM 作為「增益品」: 團隊的結論是,大型語言模型(LLM)是傳統程式分析方法(如 Fuzzing、符號執行、靜態分析)的「增益品」,而非「替代品」。兩者必須緊密結合。
- 模型大小的「甜蜜點」: 研究發現,並非模型越大越好。像 GPT-4o-mini 這樣的 8B 參數模型 達到了一個「甜蜜點」:它足夠大,能理解程式碼模式、API 約定和異常堆疊;同時也足夠小,輸出更簡潔,決策更直接,不易將簡單問題複雜化。
- 多樣性集成(Ensembling): 系統在各個層面都採用了集成策略,包括 Fuzzing、符號執行和補丁生成。特別是在補丁生成方面,團隊利用了 LLM 的「非確定性」(或稱「幻覺」),將其視為一種「創造力」,透過集成多種 Agent 來駕馭這種特性。
3. 系統高層架構
根據 CRS 架構圖(Design Overview of Atlantis),系統基於 K8s 節點 運行,主要組件包括:
- CRS Web Server / CRS DB: 接收來自
AIXCC API的挑戰(Challenges)。 - Log Collector: 收集
OpenTelemetry Logs。 - LLM Proxy: 作為 LLM 請求的中介,管理
LiteLLM和Custom LLM。 - Bug Finding Modules: 核心的漏洞發現單元,包含
ATLANTIS-C、ATLANTIS-JAVA和ATLANTIS-MULTILANG。 - CP Manager: 挑戰包(Challenge Package)管理器,負責建構、預算分配、任務管理、PoV 驗證等。
- Atlantis-Patch: 接收 CP Manager 的任務,專門負責生成補丁(Patch)。
- Atlantis-SARIF: 負責處理 SARIF 評估(Assessment)並提交報告。
4. 核心解析:自動化補丁 Agent 策略 (Ensemble of Agents)
ATLANTIS-PATCHING 模塊 如何集成多種具有不同策略的 Agent 來生成補丁。這體現了其「集成」和「正交策略」的核心思想。
4.1 MartianAgent (工作流驅動)
- 核心策略: 根據「預設工作流」自動定位、分析並修復安全缺陷。
- 執行流程:
Crash Log->Fault Localization(故障定位) ->Bug Analysis Report(錯誤分析報告) ->Patch Generation(補丁生成)。 - LLM 使用: 為不同任務指派了不同的 LLM:
- 漏洞定位:
o4-mini。 - 報告解析:
gpt-4o。 - 程式碼生成:
claude-sonnet-4-20250514。 - 備用模型:
gemini-2.5-pro。
- 漏洞定位:
4.2 MultiRetrievalPatchAgent (多策略檢索)
- 核心策略: 以「多策略程式碼檢索 + 補丁生成」為核心。
- 執行流程: 強調在生成補丁 之前 必須先進行分析、探索和檢索。它採用多種檢索手段(如正則、AST、語義等),並在 Prompt 中明確要求每輪檢索 3-5 條資訊,優先使用
grep,輔以file查詢。 - 適用場景: 適合需要複雜資訊檢索、上下文理解和多輪推理的場景。
4.3 PrismAgent (多團隊協作狀態機)
- 核心策略: 採用「多團隊協作 + 狀態機工作流」,實現自動化的分析、補丁、評測的多輪閉環。
- 架構: 模擬一個組織架構,包含四個「團隊」(節點):
Supervisor(主管):作為路由節點,根據當前狀態(如評測次數、補丁狀態)動態路由到下一個團隊。Analysis Team(分析團隊):負責漏洞分析。Patch Team(補丁團隊):負責生成補丁。其內部還有patch_generator(生成)和patch_reviewer(評審)的子迴圈。Evaluation Team(評估團隊):負責補丁評測。
4.4 VincentAgent (Sanitizer/PoC 驅動)
- 核心策略: 基於
sanitizer報告和PoC(漏洞利用範例)資訊來自動分析和修復。 - 執行流程: 使用 Langchain 框架實現,其工作流(Workflow)是一個狀態圖,包含
Root Cause Analysis(根本原因分析)、Property Analysis(屬性分析)、Patch Generation(補丁生成) 以及多種反饋節點(如compile_feedback、vulnerable_feedback),實現「分析-生成-反饋-再生產」的閉環。 - 工具: 明確使用了
tree-sitter作為程式碼解析工具。
4.5 ClaudeLikeAgent (ReAct 反饋迴圈)
- 核心策略: 以
ReAct(結合推理與行動)智能體為核心,並整合多工具和多輪反饋。 - 執行流程: 最大的特色是其反饋機制。系統會自動評測生成的補丁
diff。如果評測結果為失敗類型(如VulnerableDiffAction、UncompilableDiffAction等),它會將本輪失敗的diff內容追加到failed_patches變數中,並將其作為輸入反饋給下一輪的 Prompt,從而實現多輪迭代優化。 - LLM 使用: 使用
claude-3-7-sonnet-20250219模型。
4.6 EraserAgent (策略驅動與環境模擬)
- 核心策略: 以「自動化、策略驅動和 LLM 結合」為核心。
- 執行流程: 它首先構建一個
AIxCCEnvironment(自動化修復環境),然後透過EraserPolicy(策略)來驅動環境進行多步交互(environment.step)。Policy 決定每一步的action,環境執行後返回新的觀察值(observation),直到交互完成。 - LLM 使用: 使用
gpt-4.1作為補丁生成模型,並使用一個名為models/betarixm/eraser的模型作為檢索的後備模型。
5. 漏洞挖掘:Fuzzing 優化策略
PDF 的後半部分和總結強調,團隊在傳統程序分析(特別是 Fuzzing)方面進行了大量改進。
5.1 UniAFL (多語言 Fuzzing 框架)
- 亮點: 這是一個支持多語言的 Fuzzing 工具,在決賽中貢獻了 69.2% 的 PoV。
- LLM 應用: UniAFL 的架構包含了 6 個輸入生成模塊,展示了 LLM 在 Fuzzing 中的多種應用層次:
- 不使用 LLM: 傳統的
libFuzzer和Jazzer,或混合 Fuzzing。 - 有限使用 LLM: 應用於字典生成(Dictionary-based) 或將輸入表示為 TestLang 並進行變異(Testlang-based)。
- 大量使用 LLM: 利用 LLM 構造污點傳播鏈、識別潛在漏洞並生成輸入(MLLA)。
- 不使用 LLM: 傳統的
5.2 Directed Jazzer (導向 Fuzzing)
- 展示了一個以
Sinkpoint(漏洞觸發點)為核心的導向 Fuzzing 架構,它結合了靜態分析(CodeQL CG、Joern CG) 和Sink Point DB來計算距離,並指導 Fuzzer(Directed Jazzer) 優先探索可能觸發漏洞的路徑。
6. 總結:關鍵啟示
- LLM 必須與傳統工具結合: LLM 需要與傳統的程式分析工具(Fuzzing、符號執行、靜態分析)深度結合,才能發揮最大效用。
- LLM 是「增益品」,非「替代品」: LLM 在理解程式碼、API、異常堆疊等方面表現出色,但它們是傳統分析方法的增強,而非取代。
- 策略平衡(輕重LLM): 應根據目標選擇合適的策略。例如,
Atlantis-C採用了「重插樁 / 輕 LLM」的策略,而Atlantis-Multilang則走了「輕插樁 / 重 LLM」的路線。 - 模型大小的「甜蜜點」: 8B 參數模型被證明在效能和效率上達到了最佳平衡點。
- LLM 在 Fuzzing 中的應用: LLM 在 Fuzzing 領域的應用已相當具體,包括字典生成、種子生成和輸入生成。