近年來,大型語言模型(LLMs)已從處理幾百個字擴展至同時管理相當於幾本書的內容。這種擴大的輸入能力被稱為「上下文窗口」,它正在解鎖新的應用和案例,過去這些都需要大量工程努力。
谷歌DeepMind的研究者最近研究了具擴展上下文窗口的LLMs在「多次示範」情境學習(ICL)中的能力。研究結果表明,透過在單一提示中包含數百或甚至數千個訓練範例,可以顯著提升模型性能;而以前這種改進需要通過微調來達成。
少數示範與多次示範ICL
ICL允許LLMs在推理時利用提供的範例學習新任務,這需要向模型提供既解決了問題的範例與待解決的問題的提示。傳統上,這類學習被稱為「少數示範學習」。
與微調不同,ICL 是用戶友好且更易於訪問的;不過,它受限於模型的上下文窗口。例如,GPT-3只能支持約2,000個tokens的上下文窗口,限制了可以納入的範例數量。
目前的模型則能處理超過100,000個tokens,像Gemini 1.5 Pro等模型甚至能夠處理超過一百萬個tokens,使每個提示中可以包含數百或數千個範例。
在研究中,DeepMind的研究者探討了多次示範ICL對各種任務(包括數學問題解決、問答、結果獎勵建模、低資源語言翻譯、計劃與情感分析)性能的影響。一些提示包含了最多8,192個ICL範例,結果顯示,隨著範例數的增加,性能得以提升。在翻譯任務中,Gemini Pro的長示範ICL在庫爾德語和泰米爾語的表現創下佳績。在摘要任務中,多次示範ICL的表現達到了專門微調模型的水平,並僅在上下文範例增加至數十萬個tokens時才能達到最佳效果。
強化和無監督ICL
多次示範ICL的一個主要挑戰是需要大量高質量的人工範例,特別是在推理任務中。研究者提出兩種策略以減少對人工數據的依賴。
第一種技術是「強化ICL」,用模型生成的理論代替人工範例。LLM使用少數示範或零示範的推理提示針對給定問題生成多個理論。在通過確認正確答案的機制進行驗證後,這些響應形成一個由問題/理論對組成的ICL數據集。
第二種方法是「無監督ICL」,利用模型對問題的內在知識。這種方法涉及一個包含未解決問題的列表的提示,以及對目標問題的零示範或少數示範提示,從而不需要人工生成的答案。研究者假設,當LLM擁有解決任務所需的知識時,提供相關的上下文可以幫助其專注於問題解決所需的內部概念。
研究者確認,無論是模型生成的理論還是僅包括問題的提示,都能減少對人工範例的依賴。
調整模型行為
研究還顯示,多次示範ICL能克服預訓練偏見,並有效學習非自然語言預測任務,而少數示範ICL可能會遇到困難。例如,研究者更改了一個情感分析數據集的標籤,以與LLM在訓練過程中獲得的情感偏見相矛盾,實驗顯示,隨著更多ICL範例的增加,性能顯著提升,幾乎達到默認標籤的水平。
此外,多次示範ICL成功用於重新配置模型進行線性分類和序列奇偶性等任務,這些任務通常在沒有針對性訓練的情況下具有挑戰性。這突顯了多次示範學習在適應新任務和領域的潛力,這些任務和領域可能與LLM的訓練數據不完全匹配。
對企業的影響
隨著AI實驗室努力拓展LLMs的上下文窗口,有些專家認為微調及其他技術,如檢索增強生成(RAG),可能不再必要。企業可以簡單地設計含有相關信息、範例和任務指令的提示。
然而,目前多次示範ICL無法擴展。對於每天收到數千萬請求的LLM應用,將每個提示擴展幾百個範例可能會顯著影響速度和推理成本。
因此,多次示範ICL可以作為LLM應用在探索和原型階段的寶貴工具,使開發者能夠在不受上下文窗口限制的情況下實驗各種提示設計技術。盡管如此,產品的效率擴展仍需依賴於最小化token消耗以及使用更小、更快、成本更有效的模型。