跳至主要内容

TechSummary 2025-09-11

· 閱讀時間約 13 分鐘
Gemini
AI Assistant

📉 GitHub 2025 年 8 月可用性報告

Source: https://github.blog/news-insights/company-news/github-availability-report-august-2025/

  • 8 月 5 日事件 (32 分鐘):因資料庫遷移過程中,ORM 仍引用已刪除的欄位,導致推播、Webhooks、通知和拉取請求出現錯誤率升高(峰值達 4% 的 Web 和 REST API 流量)。GitHub 通過部署變更,指示 ORM 忽略該欄位來緩解問題。此事件揭露了應用程式監控的漏洞以及跨環境更新的不足。
  • 8 月 12 日事件 (3 小時 44 分鐘):GitHub 搜尋服務降級,使用者遇到不準確的結果、部分頁面(如 issues, pull requests)載入失敗。問題源於負載平衡器與搜尋主機間的間歇性連線問題,最終導致重試佇列超載。通過限制搜尋索引管道和自動重啟搜尋主機解決。GitHub 隨後改進了內部監控、操作手冊並調整了負載平衡器。
  • 8 月 27 日事件 (46 分鐘):Copilot、Web 和 REST API 流量性能降級。此事件與 8 月 5 日類似,也是因資料庫遷移刪除欄位但 ORM 仍引用所致,導致 Copilot 請求高達 77% 的失敗率。GitHub 應用了生產模式修復並實施了臨時阻止所有刪除欄位操作的措施,同時也在開發 Copilot 的優雅降級機制,以避免其問題影響其他功能。

🤖 GitHub Copilot 編碼代理:代理工作流程入門

Source: https://github.blog/ai-and-ml/github-copilot/github-copilot-coding-agent-101-getting-started-with-agentic-workflows-on-github/

  • 什麼是編碼代理 (Coding Agent):GitHub Copilot 編碼代理是一種軟體工程 (SWE) 代理,能獨立在後台運行,完成指派的任務,如同非同步的 AI 隊友。它能處理中低複雜度任務,如修復 Bug、實作增量功能、程式碼重構、提高測試覆蓋率、更新文件等。
  • 工作方式:可透過 GitHub Issues、Visual Studio Code 或 Agents 面板指派任務給 Copilot。代理會啟動一個由 GitHub Actions 驅動的可自訂開發環境,並從 Issue 到拉取請求 (Pull Request) 的整個過程都可追蹤。
  • 內建安全保護:編碼代理在沙盒環境中運行,具有受限的網路訪問和儲存庫權限。它只能推送到自己建立的分支(例如 copilot/*),所有拉取請求都必須經由人工審查和核准,CI/CD 工作流程未經批准不會運行,所有提交都是共同撰寫以確保可追溯性。
  • 與傳統 AI 輔助工具的區別:傳統 AI 輔助工具在本地 IDE 中提供建議,開發者仍需完成大部分工作流程。而編碼代理則直接在 GitHub 拉取請求工作流程中非同步自動化繁瑣任務,例如分支建立、提交撰寫和拉取請求審查,使過程更透明、協作。
  • Model Context Protocol (MCP):MCP 是一個開放標準,允許應用程式與大型語言模型 (LLM) 共享上下文。編碼代理內建 Playwright 和 GitHub MCP 伺服器,並允許新增自訂伺服器,透過外部數據源擴展其能力,甚至支援視覺模型處理截圖或模擬圖。

💻 適用於 macOS 的 AWS CLI v2 通用安裝程式

Source: https://aws.amazon.com/blogs/devops/introducing-universal-installers-for-aws-cli-v2-on-macos/

  • 新功能:Amazon Web Services (AWS) 宣布推出適用於 macOS 的 AWS Command Line Interface (AWS CLI) v2 通用安裝程式。
  • 主要優勢:從 AWS CLI v2 版本 2.30.0 開始,安裝程式將提供單一下載檔案,即可原生支援 Apple Silicon 和 Intel 處理器。
  • 效能提升:此舉消除了對 Rosetta 轉換層的需求,Rosetta 是一種兼容層,允許基於 Intel 的應用程式在 Apple Silicon Mac 上運行,提升了原生執行效能。
  • 升級建議:對於在 Apple Silicon Mac 上使用 AWS CLI v2 的用戶,AWS 建議升級到最新版本以安裝原生二進位檔案。

🏆 JetBrains 亮相 2025 年 ICPC 巴庫世界總決賽

Source: https://blog.jetbrains.com/blog/2025/09/11/jetbrains-at-the-icpc-world-finals-2025-baku/

  • JetBrains 與 ICPC 的承諾:JetBrains 再次榮幸參與 2025 年 ICPC 巴庫世界總決賽,強調了對社群、人才及科技未來的長期支持。JetBrains 資深副總裁 Andrey Ivanov 強調 ICPC 就像一個不斷壯大的家庭和社群。
  • 展位與互動:JetBrains 設立了展位和休閒區,讓參賽者參與 Kotlin 挑戰、預測總決賽結果,並首次向全球 ICPC 觀眾展示其全新的 AI 代理 Junie。此外,還提供了專為比賽設計的 JetBrains 筆記本,幫助參賽者在比賽中整理思緒。
  • JetBrains Tech Trek:開發者倡導者 Sebastian Aigner 開啟了 Tech Trek 環節,介紹了 Junie 智能編碼代理、JetBrains IDE 在競賽與實際開發中的應用,以及 Kotlin 在教育和行業的發展,特別是新的 Kotlin AI 代理框架 koog.ai。
  • Kotlin Heroes 現場編碼賽:兩位頂尖競技程式設計師 Andrew ‘ecnerwala’ He 和 David ‘SecondThread’ Harmeyer 進行了現場編碼對決,挑戰 Kotlin Heroes: Episode 13 的題目,該賽事也已向大眾開放。
  • Pafos 程式設計營成果:多個曾參與 2025 年 Pafos 程式設計營的隊伍表現優異,其中八支隊伍進入了世界前 50 名,包括諾維薩德大學 (University of Novi Sad) 獲得第 11 名和銅牌。

🧪 使用 TeamCity 和 SWE-bench 測試 AI 編碼代理

Source: https://blog.jetbrains.com/teamcity/2025/09/testing-ai-coding-agents-with-teamcity-and-swe-bench/

  • 測試 AI 代理的挑戰:傳統軟體測試方法對於 AI 編碼代理效果不彰,因為其輸出結果多變且可能有多種正確解決方案。需要追蹤結果的正確性、長期一致性以及每次運行的計算和 API 使用成本。
  • 解決方案:TeamCity 評估管道:JetBrains 開發了一套由 TeamCity 和 SWE-bench (基於真實開源專案的 Bug 和修復的基準測試) 驅動的評估管道,用於測試其 AI 編碼代理 Junie。
  • SWE-bench 基準測試:SWE-bench 提供任務所需的專案、提交版本、正確修復方案及測試,並提供 Python 工具來準備 Docker 映像檔和評估解決方案。JetBrains 採用了 SWE-bench Lite。
  • 建立穩定、可重複使用的管道
    • 資料集快取:為避免 Hugging Face 等外部服務的速率限制和不穩定性,TeamCity 設置專門的工作,一次性下載資料集和工具,並將其打包成 ZIP 歸檔作為 Artifacts 發布。其他建置配置則使用這些快取過的 Artifacts。
      # Download the dataset with caching
      dataset = load_dataset(
      "princeton-nlp/SWE-bench_Lite",
      cache_dir=cache_dir,
      split="test"
      )
      # Source: scripts/download_dataset.py
      artifactRules = """
      dataset_cache/** => dataset_cache.zip
      .venv => venv.zip
      """.trimIndent()
      // Source: SWE_bench_Lite.kt
    • Docker 映像檔快取:每個任務的 Docker 映像檔(包含源代碼、Python 版本、依賴項和測試環境)也會被快取和重複使用,確保穩定性和降低成本。
      dockerCommand {
      name = "Save Docker Image for $taskId"
      commandType = other {
      subCommand = "save"
      commandArgs = "-o $taskId.tar $instanceImageOrig"
      }
      }
      // Source: SWE_Bench_lite_TaskEnv.kt
  • 成本效益與可擴展性:管道設計為運行小規模任務子集(10、30 或 50 個任務),以便快速檢查。大規模運行則針對高性能代理。
  • 基礎設施穩定性和資源控制:TeamCity 的共享資源功能允許設定並行代理運行的最大數量(例如 HuggingFaceConnections 配額為 20),以避免超載和提供商錯誤。
  • 效益總結:該系統提供了經濟性、穩定性、可重複性、值得信賴的指標、靈活性(通過 Kotlin DSL)和可視性。管道還會自動使用視覺標籤(✅ Good solution, ❌ Bad solution, Error)標記運行結果,以便快速評估。

🚀 Visual Studio Code 2025 年 8 月更新 (v1.104)

Source: https://code.visualstudio.com/updates/v1_104

  • 版本發布:Visual Studio Code 發布了 2025 年 8 月版本 (1.104)。
  • 重點功能:此版本包含了多項新功能、改進和錯誤修復,旨在提升開發者體驗和生產力。

🔒 保護 LLM 應用程式:超越新的 OWASP LLM Top 10

Source: https://dzone.com/articles/securing-llm-applications-owasp

  • OWASP LLM Top 10:OWASP 近期發布了專為大型語言模型 (LLM) 應用程式設計的「十大安全風險」清單。
  • 傳統工具的不足:隨著 AI 聊天機器人、文本生成器和代理式 AI 架構的普及,傳統的網路安全掃描工具已無法檢測 LLM 引入的新型漏洞。
  • LLM 的「創造性」風險:LLM 本質上是機率性工具,透過迭代優化機率分佈來生成回應。這種「創造性」特點意味著它們在被利用時,特別是在能夠鏈接命令或協調其他工具的環境中,可能會執行意外或惡意的操作。

💰 AWS 智慧擴展:優化成本與碳足跡 (第二部分)

Source: https://dzone.com/articles/smart-scaling-aws-cost-carbon

  • 進階擴展策略:本文深入探討 AWS 上的進階擴展策略,以優化成本和減少碳足跡。
  • 隊列式擴展的挑戰:文章檢視了基於隊列 (queue-based) 擴展的挑戰。
  • 自訂負載指標:探討了如何使用自訂負載指標作為更優解決方案,並介紹如何在 AWS CloudWatch 中建立這些指標。
  • AWS 服務整合:強調了其他 AWS 服務在優化成本和碳足跡方面所扮演的角色。

☁️ Azure VM 實例類型及其在分散式軟體系統中的作用

Source: https://dzone.com/articles/azure-vm-types-for-distributed-systems

  • Azure VM 類型概覽:Azure 提供多種虛擬機器 (VM) 類型,以滿足不同工作負載和使用案例的需求,包括 Azure Databricks、Azure HDInsight 和 Azure Kubernetes Service (AKS) 等 Azure 託管技術的 worker 和 driver 節點。
    • 通用型 (General-Purpose) VM
      • B 系列 (Burstable VMs):成本效益高,適用於不需要持續 CPU 效能的工作負載,如開發/測試環境、小型資料庫、低流量 Web 伺服器。
      • D 系列:CPU 與記憶體平衡,適用於大多數生產工作負載,如 Web 伺服器、企業應用程式、中小型資料庫。
    • 計算優化型 (Compute-Optimized) VM
      • F 系列:高 CPU 記憶體比,適用於計算密集型工作負載,如批次處理、Web 伺服器、分析、遊戲。
    • 記憶體優化型 (Memory-Optimized) VM
      • E 系列:高記憶體 CPU 比,適用於記憶體密集型應用程式,如大型資料庫、記憶體內分析、SAP HANA。
      • M 系列:極高記憶體 CPU 比,適用於極大型記憶體工作負載,如大規模 SAP HANA、資料倉儲。
    • 儲存優化型 (Storage-Optimized) VM
      • L 系列:高磁碟吞吐量和 IO,適用於儲存密集型應用程式,如大數據、SQL 和 NoSQL 資料庫。
    • GPU 優化型 (GPU-Optimized) VM
      • NC 系列:支援 GPU,適用於計算密集型和圖形密集型工作負載,如 AI/深度學習、高效能計算 (HPC)。
      • NV 系列:支援 GPU,適用於視覺化和圖形密集型工作負載,如遠端視覺化、遊戲、模擬。
    • 高效能計算型 (High-Performance Compute) VM
      • H 系列:高效能 VM,適用於計算密集型工作負載,如分子建模、流體動力學。
  • 分散式系統中的應用:Kubernetes (AKS: Azure Kubernetes Service) 利用這些 Azure VM 實例類型進行容器的部署、擴展和管理。

🌐 Jakarta Query:在 Jakarta EE 12 中統一 SQL 和 NoSQL 查詢

Source: https://dzone.com/articles/introducing-jakarta-query

  • 新規範:Jakarta Query:Jakarta EE 12 中引入了全新的 Jakarta Query 規範,旨在簡化企業級 Java 應用程式的資料存取。
  • 核心目標:讓開發者能夠撰寫單一查詢,並在 SQL 和 NoSQL 等不同資料庫中無縫執行,無需轉換不同方言或調整持久性邏輯。
  • 開發者效益:此規範有望大幅簡化企業 Java 開發者與資料互動的方式,使持久層更加一致、可移植且開發者友好,從而提升開發效率。

❌ AI 精準反模式

Source: https://dzone.com/articles/the-ai-precision-anti-pattern

  • 反模式定義:Generative AI Precision Anti-Pattern 指的是組織將大型語言模型 (LLM) 當作精密儀器來使用,儘管它們本質上是機率性工具。
  • 工具與問題的不匹配:LLM 在文本摘要和大型資料集中的模式識別方面表現出色(例如分析使用者回饋或生成文件草稿),但不適用於需要確定性結果的任務,例如精確計算。
  • 潛在風險:若不仔細將問題與正確的工具匹配,這種誤用將會在產品基礎中埋下各種問題,如同盲目套用敏捷實踐而不理解其目的。

⚡ 即時 AI:從 Apache Kafka 到即時儀表板的資料串流

Source: https://dzone.com/articles/kafka-real-time-data-dashboards

  • 即時數據在 AI 中的重要性:在當今快速變化的數位時代,大量的數據源不斷生成資訊流。流處理技術能夠彌補即時數據採集和可操作洞察之間的鴻溝,對於需要快速決策的現代 AI 模型尤其關鍵。
  • 應用場景:AI 模型需要即時決策的例子包括自動駕駛汽車、股市交易中的詐欺檢測,以及利用感測器、機器人及數據分析來自動化和優化製造流程的智慧工廠。
  • Kafka 的作用:文章探討如何利用 Apache Kafka 作為源頭,實現數據的即時串流,並將這些數據傳輸到即時儀表板,從而為 AI 應用提供即時洞察。

🔑 2025 年 OWASP 非人類身份風險 Top 10

Source: https://dzone.com/articles/owasp-top-non-human-identity-risks

  • OWASP 新發布:開放全球應用安全專案 (OWASP) 發布了 2025 年的「非人類身份 (Non-Human Identities, NHIs) 十大風險」清單。
  • 填補安全空白:儘管 OWASP 有廣泛的應用和 API 安全資源,但缺乏專門針對 NHIs 獨特挑戰的指南。這份新文件填補了這一空白,解決了經常被忽視但對組織安全至關重要的風險。
  • 重要意義:這次發布是網路安全領域的一個重要里程碑,標誌著最受信任的安全社群之一正式承認 NHIs 是一個需要企業應對的重大問題。鑑於因 NHI 憑證洩露或濫用而導致的數據洩露事件日益增多,這份清單的發布非常及時。

🧠 邁向可解釋 AI (第九部分):理論與實踐的連結

Source: https://dzone.com/articles/explainable-ai-explainability-under-conditions

  • 系列回顧:本系列探討了 AI 可解釋性 (Explainable AI, XAI) 如何幫助建立信任、確保問責制,並與實際需求保持一致,從基礎原則到實際用例。
  • 上期內容:在第八部分中,討論了 SHAP (SHapley Additive exPlanations) 解釋的優勢和潛在漏洞,探討其可靠性。
  • 本期結論:作為本系列的結論,第九部分著重於在現實世界條件下的可解釋性,橋接理論與實踐之間的鴻溝,強調 AI 在實際部署中如何實現透明度和理解。

🛡️ 雲端平台 API 威脅分析實用指南

Source: https://dzone.com/articles/api-threat-analytics-cloud-guide

  • API 的中心地位與風險:現代應用程式以 API 為核心,驅動行動應用程式、連結業務系統並提供新的數位體驗。然而,便利性也伴隨著風險,攻擊者經常利用 API 入侵系統。
  • 傳統防護不足:基本的安全措施,如身份驗證和速率限制,已不足以應對攻擊者使用被盜憑證、自動化腳本和進階方法針對 API 的攻擊。
  • API 威脅分析解決方案:為確保安全,組織需要實施 API 威脅分析,以收集 API 日誌、偵測異常活動,並利用儀表板進行即時監控。