[論文閱讀] 人工智能 + 軟件工程 | 從軟件工程視角看大語言模型:挑戰與未來之路

從軟件工程視角看大語言模型:挑戰與未來之路

論文標題:Software Engineering for Large Language Models: Research Status, Challenges and the Road Ahead

arXiv:2506.23762
Software Engineering for Large Language Models: Research Status, Challenges and the Road Ahead
Hongzhou Rao, Yanjie Zhao, Xinyi Hou, Shenao Wang, Haoyu Wang
Subjects: Software Engineering (cs.SE); Artificial Intelligence (cs.AI)

研究背景:當LLM遇上軟件工程

想象一下,你讓ChatGPT寫一首詩,第一次得到的是浪漫的十四行詩,第二次同樣的prompt卻收到了一首俳句——這就是大語言模型(LLM)的非確定性魅力,但也給軟件開發帶來了新難題。隨著GPT-4、LLaMA等模型的爆發式發展,LLM已從實驗室走向醫療、金融等關鍵領域,但它們的開發過程仍面臨著傳統軟件工程未曾遇到的挑戰:

  • 傳統軟件VS LLM:你的計算器APP每次輸入"2+2"都會輸出"4",但LLM可能今天給你講個數學故事,明天才給出正確答案。這種概率性輸出讓傳統的確定性測試方法失效。
  • 算力黑洞:訓練一個千億參數模型的成本堪比建造一座小型數據中心,這讓中小團隊望而卻步。
  • 黑盒困境:當LLM生成錯誤信息時,工程師很難像調試傳統代碼一樣定位問題,就像醫生無法給"大腦"做CT掃描。

這些問題催生了一個新領域:大語言模型軟件工程(SE for LLM)。華中科技大學的研究團隊正是看到了這一空白,系統分析了LLM從需求到運維的全生命周期挑戰。

主要作者及單位信息

  • Hongzhou Rao, Yanjie Zhao等:來自華中科技大學計算機學院,長期從事AI與軟件工程交叉研究。
  • Haoyu Wang:通訊作者,華中科技大學教授,研究方向包括智能軟件與大規模系統。

創新點:第一個吃螃蟹的系統性研究

這篇論文的獨特之處在于:

  1. 全生命周期視角:首次將LLM開發分為需求工程→數據集構建→模型開發→測試評估→部署運維→維護演進六個階段,每個階段都給出了SE解決方案。
  2. 跨界融合思維:把傳統軟件工程的模塊化、版本控制等思想,與LLM特有的量化、微調等技術結合,比如提出"LLMOps"概念升級傳統MLOps。
  3. 問題-方案雙軌制:不僅指出"數據中毒"“災難性遺忘"等12大核心挑戰,還給出了如"多利益方協作需求定義”"自適應數據評估框架"等具體解決方向。

研究方法和思路:像搭積木一樣拆解LLM開發

核心研究框架

論文采用"分階段剖析"的方法,每個階段都遵循:

  1. 現狀掃描:梳理當前研究進展
  2. 挑戰識別:找出技術瓶頸
  3. 未來指路:提出研究方向

關鍵創新方法舉例

需求工程階段:如何讓LLM理解"好"的標準?
  • 問題:用戶說"我要一個智能客服",但"智能"的定義模糊不清。
  • 方法
    1. 引入多利益方協作機制,讓業務人員、工程師、用戶共同定義指標(如響應準確率、情感識別率)
    2. 采用實證研究方法,通過A/B測試確定關鍵需求優先級
    3. 建立需求驗證閉環,用LLM生成測試用例反推需求合理性
數據集構建:如何避免"垃圾進垃圾出"?
  • 創新數據管道
    原始數據
    LLM輔助清洗
    多模型協作驗證
    人工專家反饋
    自適應評估
    • 利用LLM自動過濾重復數據,但引入人類專家對關鍵樣本標注
    • 采用動態長尾適應技術,對稀有數據類別自動合成補充
模型部署:如何讓LLM在手機上跑起來?
  • 邊緣部署方案
    1. 量化壓縮:將16位浮點數轉為4位整數,模型體積縮小4倍
    2. 混合架構:云邊協同,復雜推理放云端,實時響應放邊緣
    3. 安全沙箱:用TEE(可信執行環境)隔離模型,防止惡意篡改

主要貢獻:給LLM開發裝上"工程方向盤"

1. 建立SE for LLM的方法論體系

  • 定義了6大階段的工程化標準,比如在測試階段提出"三維評估框架"(評估內容-場景-方法)
  • 開發了LLMOps工具鏈原型,集成模型版本控制、自動部署等功能

2. 解決10+關鍵工程挑戰

挑戰領域傳統方案問題論文提出的改進
模型微調災難性遺忘嚴重引入記憶增強模塊,保留關鍵知識
測試評估非確定性難測設計概率容忍度測試標準,允許合理波動
數據安全中毒攻擊隱蔽開發實時異常檢測系統,識別惡意數據模式

3. 推動跨學科研究

  • 促進AI研究者與SE專家合作,比如讓NLP專家參與需求工程
  • 為工業界提供落地指南,如金融領域LLM的合規性部署流程

一段話總結

文檔聚焦于從軟件工程視角探討大型語言模型(LLMs)發展,將其生命周期分為需求工程、數據集構建、模型開發與增強、測試與評估、部署與運維、維護與演進六個階段,分析各階段研究現狀、挑戰及未來方向,強調LLMs在確定性、可解釋性等方面與傳統軟件差異,指出需結合軟件工程方法應對計算成本高、非確定性測試等挑戰,為LLMs開發提供系統性指導。


思維導圖

在這里插入圖片描述


詳細總結

一、LLMs與傳統軟件的差異
特征傳統軟件LLMs
確定性相同輸入輸出一致概率性輸出,具不確定性
可執行性基于顯式邏輯執行神經網絡推理,透明度低
可維護性代碼修改調試微調、再訓練或數據增強
可復用性跨項目復用代碼組件預訓練模型適配多任務
可測試性支持系統單元和集成測試需基于輸出評估,容不確定性
可擴展性模塊化設計擴展通過MoE、LoRA等參數高效方法擴展
可部署性需特定平臺部署方法跨平臺,基礎設施需求相似
二、LLM開發生命周期各階段分析
  1. 需求工程
    • 研究現狀:利用LLMs支持需求工程任務研究較多,但針對LLM自身需求工程方法研究有限,多為領域特定需求,如醫療、法律等領域。
    • 關鍵挑戰:需求定義準確性,如非功能需求中“創造力”等概念模糊;需求定義合理性,如邊緣部署中性能與資源的權衡。
    • 未來方向:多利益相關方協作定義需求;開展實證研究,明確需求邊界。
  2. 數據集構建
    • 數據質量
      • 現狀:手動標注數據質量高但規模有限,LLM輔助數據構建效率高但依賴LLM性能。
      • 挑戰:手動構建勞動密集、規模受限;數據分布不平衡,長尾效應明顯;LLM合成數據存偏見與誤差。
      • 方向:優化數據管道,集成多模型協作與人工反饋;建立自適應數據評估機制,動態調整數據生成。
    • 數據安全
      • 現狀:面臨數據中毒、惡意代碼注入、未經授權數據使用等風險。
      • 挑戰:訓練數據中毒難以檢測;數據授權驗證技術精度不足。
      • 方向:建立可信數據源過濾機制;開發更精確數據檢測技術,如LLM輔助實時異常檢測。
  3. 模型開發與增強
    • 預訓練
      • 現狀:關注訓練穩定性與計算資源優化,如控制梯度爆炸、優化學習率。
      • 挑戰:缺乏通用訓練穩定性評估模型;訓練成本高昂,限制中小團隊發展。
      • 方向:深入理論研究訓練動態,開發實時監控工具;探索模型增長技術,提高訓練效率。
    • 微調
      • 現狀:多任務微調與災難性遺忘問題受關注,LoRA等技術應用較廣。
      • 挑戰:多任務間干擾,資源分配困難;災難性遺忘機制不清,解決方案有限。
      • 方向:設計混合微調架構,動態分配資源;開發知識保留技術,如記憶增強模型。
    • 模型集成
      • 現狀:多模態模型、多模型協作及LLM-based代理應用發展迅速。
      • 挑戰:跨模態語義對齊困難;多模型協作中模型能力與價值觀差異。
      • 方向:構建智能提示與安全框架,實現跨模態信息轉換與安全交互。
    • 模型壓縮
      • 現狀:量化、知識蒸餾、pruning是主要方法。
      • 挑戰:壓縮與性能平衡難,極端量化性能下降明顯。
      • 方向:聯合優化多種壓縮技術,開發自動化評估框架。
    • PEFT
      • 現狀:參數高效微調技術如LoRA廣泛應用。
      • 挑戰:適配器引入復雜度與延遲,存在安全風險。
      • 方向:設計自適應適配器架構,優化模塊選擇與安全防護。
  4. 測試與評估
    • 評估內容
      • 現狀:多維度評估LLM能力,如推理、偏見等。
      • 挑戰:抽象能力量化難,評估結果不一致。
      • 方向:引入跨域方法,如教育科學中的知識轉移評估;適應不同測試環境,動態調整評估場景。
    • 評估場景
      • 現狀:各領域開發專用評估基準。
      • 挑戰:基準覆蓋不全、質量參差不齊,數據污染影響評估結果。
      • 方向:建立綜合評估平臺,持續更新基準;采用數據擾動技術,減少污染影響。
    • 評估方法
      • 現狀:自動化評估與人工評估結合。
      • 挑戰:抽象能力評估依賴人工,效率低。
      • 方向:改進LLM-as-Judge框架,降低偏見;推動人機協作評估,平衡效率與準確性。
  5. 部署與運維
    • 集群部署
      • 現狀:關注資源管理、 latency優化與安全。
      • 挑戰:異構硬件資源調度復雜;API暴露與數據泄漏風險。
      • 方向:開發高效調度算法,動態分配資源;建立隱私保護與安全風險評估框架。
    • 邊緣部署
      • 現狀:模型壓縮與跨平臺部署是重點。
      • 挑戰:硬件資源有限,模型壓縮影響性能;模型暴露易受攻擊。
      • 方向:開發通用部署框架,支持多模型與硬件;利用TEE技術,增強邊緣部署安全。
    • 混合部署
      • 現狀:云邊協同計算模式興起。
      • 挑戰:設備間協作與數據安全傳輸。
      • 方向:優化任務分配與通信,設計加密與聯邦學習方案。
  6. 維護與演進
    • 現狀:技術債務積累,模型漂移影響性能,需持續更新適應法規倫理。
    • 挑戰:技術債務缺乏系統研究,模型漂移檢測與適應困難;倫理合規自動化難。
    • 方向:系統研究技術債務,利用LLMOps管理;開發漂移適應機制,動態更新模型;將倫理規范轉化為模型約束,實現自適應合規。

關鍵問題及答案

  1. LLMs在需求工程階段面臨的核心挑戰是什么?
    • 答案:LLMs在需求工程階段核心挑戰是需求定義的準確性與合理性。準確性方面,非功能需求如“創造力”“推理能力”等概念模糊,缺乏明確量化標準;合理性方面,需平衡不同利益相關方需求,如邊緣部署中性能與資源消耗的權衡,以及處理LLMs概率性輸出與用戶確定性需求的矛盾。
  2. 數據集構建中數據安全的主要威脅及應對方向是什么?
    • 答案:數據集構建中數據安全主要威脅有數據中毒(惡意數據注入導致模型行為異常)和數據授權問題(未經授權使用數據引發法律風險)。應對方向包括建立可信數據源過濾機制,結合數據 provenance技術追蹤數據來源;開發更精確的數據檢測技術,如利用LLM輔助實時異常檢測,識別惡意數據與偏見內容。
  3. 模型部署與運維階段,邊緣部署相比集群部署的獨特挑戰是什么?
    • 答案:邊緣部署相比集群部署的獨特挑戰在于硬件資源限制與安全風險。硬件上,邊緣設備計算能力、內存和能源有限,需在模型壓縮時平衡性能與精度;安全上,邊緣設備模型暴露易受物理 tampering、模型 stealing等攻擊,且本地處理敏感數據需更強隱私保護機制,而集群部署可依托云資源實現更復雜的安全防護與資源調度。

總結:從實驗室魔法到工程化現實

解決的主要問題

  • 系統性缺失:填補了LLM開發缺乏工程方法論的空白
  • 效率瓶頸:提出的參數高效微調(PEFT)等技術降低訓練成本50%以上
  • 安全風險:建立從數據到部署的全鏈條安全防護體系

研究成果一句話概括

這篇論文首次從軟件工程角度,將LLM混亂的開發過程梳理成可管理、可優化的工程流程,就像給狂奔的AI列車鋪設了鐵軌。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/912623.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/912623.shtml
英文地址,請注明出處:http://en.pswp.cn/news/912623.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Docker基礎】Docker容器管理:docker rm及其參數詳解

目錄 1 Docker容器生命周期概述 2 docker rm命令基礎 2.1 命令基本語法 2.2 命令功能說明 2.3 基本使用示例 3 docker rm參數詳解 3.1 -f, --force 3.2 -v, --volumes 3.3 -l, --link 3.4 --time 4 docker rm高級用法 4.1 批量刪除容器 4.1.1 刪除所有已停止的容器…

鴻蒙進階——Mindspore Lite AI框架源碼解讀之模型加載詳解(五)

文章大綱 引言一、LiteSession::CompileGraph(Model *model)二、LiteSession::CompileGraph(Model *model) 核心流程1、MindirModel::ConvertTensors1.1、遍歷并執行MindirModel::ConvertTensor1.1.1、MindirModel::LoadTensorData 三、LiteSession::InitGraphInputTensors(mod…

WireShark網絡取證分析第一集到第五集和dvwa靶場環境分析漏洞

文章目錄 一、WireShark網絡取證是什么?二、WireShark網絡取證1.WireShark網絡取證分析第一集Ann的即時通訊好友叫什么名字?在捕獲的即時通訊對話中第一條評論是什么?Ann傳輸的文件叫什么名字?您想提取的文件的魔數是什么(前四個字節)?文件的MD5sum是多少?什么是秘密配方…

【51單片機按下按鍵1,8位共陰極數碼管輸出2022-606。按下按鍵2,8位共陰極數碼管輸出606-1132。】2022-6-10

緣由單片極的共陰極數碼管按下按鍵1和按鍵2輸出的內容-編程語言-CSDN問答 #include "REG52.h" unsigned char code smgduan[]{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0,64}; //共陰0~F消隱減號 unsigned char Js0, miao…

HDMI轉12G- SDI GS12170+GS12281-富利威方案設計及技術支持

GS12281 是一款低功耗、多速率、重定時電纜驅動器,支持高達 12G UHD-SDI 的速率。它設計用于接收 100Ω 差分輸入信號,自動從數字視頻信號中恢復嵌入式時鐘并重新定時輸入數據,并通過 75Ω 同軸電纜傳輸重新定時的信號。 100Ω 走線輸入支持…

自然語言處理:NLP入門

本文目錄: 一、概念二、發展史三、核心任務和技術特別分享1:當前挑戰和前沿方向特別分享2:大神名言啟示 前言:從本章開始講解自然語言處理(NLP),今天先入個門~ 一、概念 自然語言處理&#xff…

用Fiddler中文版抓包工具掌控微服務架構中的接口調試:聯合Postman與Charles的高效實踐

隨著微服務架構在項目中的廣泛應用,系統被拆分成多個獨立的服務,彼此通過API通信。雖然架構帶來了靈活性,但也大幅增加了接口數量和調用鏈復雜度:一次用戶操作可能觸發跨多個服務的調用,導致前端調試難度飆升。要精準排…

MongoDB 更新文檔指南

MongoDB 更新文檔指南 引言 MongoDB 是一款高性能、可擴展的文檔存儲系統,它為存儲和管理大量數據提供了強大的支持。在 MongoDB 中,更新文檔是常見操作之一,它允許用戶修改現有文檔的內容。本文將詳細講解 MongoDB 中更新文檔的各種方法&a…

Cursor + Serena MCP集成,更好的解析項目架構

項目地址,下到本地。 Serena可以更好的理解項目的架構并總結,而不是簡單的閱讀代碼文件,可以直接用Cursor結合MCP的方式進行使用。:Serena 的語義代碼分析功能建立在語言服務器上,使用廣泛實施的語言服務器協議&#x…

【Python】numpy數組常用數據處理(測試代碼+api例程)

目錄 一、數列生成1.按照間隔生成數列(np.array[])2.按照數列數字個數生成數列(np.linspace) 二、數列增刪改查1.1 數組末尾添加數據(np.append)1.2 數組指定索引位置添加數據(np.insert&#x…

CMU-15445(6)——PROJECT#2-BPlusTree-Task#1

PROJECT#2-BTree 在 PROJECT#2 中,我們需要實現一個B plus Tree,用過 MySQL 的同學肯定對它不陌生,BTree是實現高效數據檢索的核心組件,其內部節點的作用是引導搜索過程,而實際的數據項則存于葉子節點中。該索引結構能…

向量數據庫搜索原理解密:從暴力掃描到近似最近鄰的演進之路

摘要 向量數據庫已成為處理AI時代海量非結構化數據的核心基礎設施。本文深入解析向量搜索的六大核心技術原理,涵蓋暴力掃描、樹結構索引、量化壓縮、圖導航算法等核心機制,通過10張架構圖解與數學公式推導,揭示千萬級向量毫秒級檢索背后的工程奇跡。全文超5000字,包含Fais…

Yolov7訓練自己的數據集和ONNX/TRT部署

Yolov7訓練自己的數據集和ONNX/Trt部署 一、環境配置 1.1 項目下載 項目原地址:GitHub - WongKinYiu/yolov7: Implementation of paper - YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors 打開終端,輸…

Python - 數據分析三劍客之NumPy

在Python中,NumPy、Pandas和Matplotlib是進行數據分析和數據可視化的三個核心庫。它們各自有不同的功能,但經常一起使用來處理和分析數據。 1、NumPy NumPy(Numerical Python)是一個用于科學計算的庫,提供了高性能的…

百度文庫智能PPT月訪問量超3400萬,用戶規模翻倍增長

6月27日,極光旗下月狐數據發布《2025年智能PPT行業市場研究報告》。報告顯示,智能PPT市場整體增速年同比超50%,市場玩家成倍激增。其中,百度文庫智能PPT月訪問量超3400萬、位列全球第一,市場份額在中國位于斷崖式領先。…

遠眺科技工業園區數字孿生方案,如何實現智能管理升級?

面對工業園區日益復雜的能耗管控、環境監測、安全運維需求,傳統管理模式已經難以為繼。而數字孿生技術,正好成為解決上述問題的關鍵“解藥”。本文將以遠眺工業園區數字孿生項目為例,為您剖析數字孿生技術如何解決數據孤島、響應滯后等痛點。…

成都芯谷金融中心文化科技園:打造區域科技活力

在成渝地區雙城經濟圈建設加速推進的背景下,成都芯谷金融中心文化科技園正以"科技文化金融"的融合創新模式,重塑區域產業生態,成為驅動城市高質量發展的活力源泉。這座總建筑面積達45萬平方米的產城綜合體,不僅承載著雙…

Claude Code 全面指南:從安裝到高效開發的實用教程

在 AI 助手逐漸成為開發者標配的今天,Claude Code 作為 Anthropic 推出的一款智能編程工具,憑借其強大的自然語言交互和自動化能力,正迅速改變著軟件開發的方式。本文將詳細介紹 Claude Code 的功能、安裝配置、使用方法及安全與成本管理&…

在Flutter中生成App Bundle并上架Google Play

Ran tool 要在Flutter中生成App Bundle并上架Google Play,請按照以下步驟操作: 1. 準備簽名密鑰 首先需要創建一個密鑰庫用于簽名: keytool -genkey -v -keystore upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias …

kubernetes pod調度基礎

目錄 Replication Controller 和 ReplicaSet 標簽與標簽選擇器 無狀態應用管理Deployment 有狀態應用管理StatefulSet 守護進程集DaemonSet Replication Controller 和 ReplicaSet RC用來確保Pod副本數達到期望值,這樣可以確保一個或多七個同類Pod總是可用的 如果存在的P…