Octopus v4:八爪魚來襲,整合各開源大模型一起玩耍,取長補短!
大語言模型在多種應用中展現出強大效力,但頂尖模型往往價格昂貴且能耗高,如GPT-4、Anthropic。開源社區則以Llama3為例,提供了節能且成本效益高的替代方案,并且定制化小型語言模型在特定領域如法律、醫療或金融中,已超越了大型專有模型,顯示出更高的效率和精準度。
Octopus v4新型語言模型框架,通過構建一個包含不同垂直領域語言模型的圖(graph)來使用各種開源語言模型。
從使用萬億參數模型的單一模型推理,轉變為由章魚模型協調的多節點協作。該框架通過根據用戶的查詢選擇最合適的專業化模型,優化推理過程,僅激活兩個每個模型少于100億參數的模型進行一步推理。只展示了一個小圖,但該框架可以支持一個大圖。請查看圖的演示(https://graph.nexa4ai.com/)。
Octopus v4模型利用功能標記(functional tokens)智能地將用戶查詢定向到最合適的垂直模型,并重新格式化查詢以實現最佳性能。該模型是Octopus v1、v2和v3模型的進化版,在選擇、參數理解和重新格式化方面表現出色。
Octopus v4的核心是使用功能性標記(functional tokens)來激活特定的模型功能,簡化了語言模型的功能設計,使其只需要單一輸入和輸出。通過構建一個有向的異構圖,其中包含主節點和工作節點,可以有效地處理用戶查詢并生成響應。主節點負責協調查詢并將其導向合適的工作節點,而工作節點則執行任務并使用Octopus模型進行進一步協調 。
章魚模型被用來確定最優的鄰近節點并生成適當的信息以供傳輸。設想一個場景,章魚模型的鄰居包括MathGPT、LawGPT、HealthCareGPT、CodeGPT和RoomGPT。章魚模型能夠識別出最相關的GPT,并將初始查詢轉換為最適合所選GPT的格式。
規劃多步驟任務架構由兩個抽象層組成。第一層使用功能標記來表示Octopus v2模型可以執行的操作。這一層包括三個不同的Octopus v2模型,每個模型都由不同的功能標記標識,有效地將它們區分為獨立的AI代理。第二層抽象涉及Octopus v4模型,其中內部的功能標記映射到各種v2模型。為了簡單起見,只包括了三個v2模型,但在實際使用案例中,可以映射到多個v2模型。
語言模型圖系統設計:其中主節點部署在中心設備上,工作節點分布在各種設備上。采用Kubernetes(k8s)對每個單獨的工作語言模型進行無服務器部署。為了高效的數據共享,利用了由Redis支持的分布式緩存機制。對于每個工作節點,都附加了一個小的章魚v4 Lora,以指導多代理用例中的下一個鄰居節點。
在10B參數規模的模型中,Octopus v4實現了74.8的SOTA MMLU得分。
Octopus v4與其他模型在MMLU得分上的比較。在Octopus v4與的推理過程中,僅激活了兩個小型語言模型,每個模型的參數少于100億。Octopus v4與在MMLU得分上取得了顯著提升,由于利用了功能標記,僅需要少量的標記犧牲。
??https://arxiv.org/pdf/2404.19296 ??
Octopus v4: Graph of language models
??https://github.com/NexaAI/octopus-v4 ??
??https://hf-mirror.com/NexaAIDev/Octopus-v4??
本文轉載自 ??PaperAgent??,作者: PaperAgent
