LLM 是什麼?
LLM(大語言模型)是一種計算機化語言模型,由一個具有大量參數(通常為數十億)的人工神經網絡組成。這些模型在大量未標記的文本上進行訓練。
2018年前後,LLM 的誕生徹底改變了自然語言處理的研究。與以往需要為特定任務訓練特定監督模型的方法不同,LLM 作為一個通用模型,在各種任務上都表現出色。其能力和應用包括:
- 理解和總結文本: LLM 可以理解和總結大量的人類語言和文本數據。它們可以提取關鍵信息並生成簡潔的摘要。
- 生成新內容: LLM 具有生成基於文本內容的能力。通過向模型提供prompt,它可以回答問題、新生成的文本、摘要或情感分析。
- 翻譯: LLM 可用於在不同語言之間進行翻譯。它們利用深度學習算法和神經網絡來理解詞彙之間的上下文和關係。
- 預測和生成文本: LLM 可以基於上下文背景預測並生成文本,與人類生成的內容類似,包括歌曲、詩歌、故事、營銷材料等。
- 在各個領域的應用: 大型語言模型在自然語言處理任務中具有廣泛的適用性。它們被用於對話式人工智能、聊天機器人、醫療保健、軟件開發、搜索引擎、輔導、寫作工具等眾多領域。
LLM 的優勢包括其對大量數據的理解能力、執行多種語言相關任務的能力,以及根據用戶需求定制化結果的潛力。
下圖概述了LLM應用在回應用戶查詢時的流程:首先,相關的數據源被轉換為嵌入向量並存儲在向量數據庫中。LLM 適配器使用用戶查詢和相似性搜索從向量數據庫中找到相關的上下文。相關的上下文被放入Prompt 中並發送給LLM 。LLM 將執行這些Prompt,並使用工俱生成回答。有時,LLM 會在特定數據集上進行調優,以提高準確性並降低成本。
LLM 應用的工作流程可以大致分為三個主要階段:
- 數據準備和嵌入:該階段涉及將機密信息(例如項目備忘錄)保留以供將來訪問。通常,文件會被分割,並通過嵌入模型進行處理,保存在一種特殊類型的數據庫中,稱為向量數據庫。
- Prompt 的構建(Formulation)和提取(Extraction):當用戶提交搜索請求(在本例中,搜索項目信息)時,軟件會創建一系列Prompt,輸入到語言模型中。最終的Prompt 通常包含由軟件開發人員硬編碼的提示模板,作為few-shot 示例的有效輸出示例,以及從外部API 獲取的任何所需數以及向量數據庫中提取的相關文件。
- Prompt 的執行和推理:完成Prompt 後,將它們提供給預先存在的語言模型進行推理,這可能包括專有模型API 、開源或經過個別微調的模型。在此階段,一些開發人員可能還會將操作系統(如日誌記錄、緩存和驗證)整合到系統中。