六個月前(在生成式人工智能領域中算是永遠),在 Vulcan Cyber 工作時,作者進行了關於 LLM 在開源包推薦上的幻覺研究。
在之前的研究中,作者揭露了一種新的攻擊技術:AI 包幻覺。該技術利用 ChatGPT、Gemini 等 LLM 工具,基於提供給最終用戶的模型輸出,傳播不存在的惡意包。
作者還在 GPT-3.5 turbo 模型上進行了測試,對 40 多個主題用 2 種編程語言提出了 457 個問題,發現近 30%的問題中,模型至少推薦了一個攻擊者可用於惡意目的的幻覺包。
此次研究旨在將之前的研究規模擴大,包括增加提問數量、檢查的語言數和測試的模型。
研究動機
- 調查包幻覺在初始發現六個月後的當前環境中是否仍然存在,以確認問題的重要性和模型提供商是否已解決此問題。
- 擴大先前調查的範圍,通過使用更多問題驗證幻覺包的百分比是否與之前的結果一致,並評估該技術在不同 LLM 中的韌性。
- 探索跨模型幻覺的可能性,了解不同模型中是否存在相同的幻覺包。
- 收集更多關於包幻覺重複性的統計數據,以進一步了解此安全問題的範圍。
- 測試攻擊在現實中的有效性,確認研究發現的實際應用性。
研究過程
為模擬幻覺包場景,收集並向不同模型提出開發人員在現實情況中可能會問的一組通用問題,共收集了 2500 個與 100 多個主題和 5 種編程語言(python、node.js、go、.net、ruby)相關的問題,並保留“如何”問題以模擬開發人員的工作流程。此次使用 Langchain 框架處理模型交互,並保留其默認提示。為檢查重複性,隨機選擇 20 個零射擊幻覺問題,在每個模型上問 100 次。
研究結果
- GPT4:總共收到 24.2%的幻覺包,重複性為 19.6%。
- GPT3.5:總共收到 22.2%的幻覺包,重複性為 13.6%。
- GEMINI:總共收到 64.5%的幻覺包,重複性為 14%。
- COHERE:總共收到 29.1%的幻覺包,重複性為 24.2%。在 GO 和.NET 中,所有模型都收到了許多幻覺包,但並非所有幻覺包都可被利用。
- 跨模型幻覺:檢查所有模型的幻覺包結果並比較,發現 Gemini 和 GPT-3.5 之間的交叉幻覺包數量最多,Cohere 和 GPT-4 之間最少。
- 現實中的幻覺包:研究中遇到一個有趣的 Python 幻覺包“huggingface-cli”,作者上傳同名空包,三個月內獲得超 30k 次真實下載,在 GitHub 上發現多家大公司使用或推薦此包。
建議
- 依賴大型語言模型時要謹慎,對其提供的關於軟件包的答案要進行徹底交叉驗證。
- 對使用開源軟件要保持謹慎,遇到不熟悉的包要查看其倉庫信息,評估社區規模、維護記錄、已知漏洞等,在集成到生產環境前進行全面安全掃描。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。