【NLP 63、大模型應用 —— Agent】

人與人最大的差距就是勇氣和執行力,也是唯一的差距

????????????????????????????????????????????????????????????????????????????????—— 25.4.16

一、Agent 相關工作


二、Agent 特點

核心特征:

????????1.專有場景(針對某個垂直領域)

????????2.保留記憶(以一個特定順序做一些特定任務,記憶當前任務的前后信息)

????????3.任務規劃(根據任務,制定計劃,把大任務拆分為小任務,分為多步進行)

????????4.使用工具(查找本地知識庫、調用API、執行代碼、操作頁面)

聯網搜索的RAG也可以看作是一種Agent(由模型自己判斷是否使用RAG可以看作是一種簡單的規劃)?


三、Agent之間協作

????????多個Agent之間互相合作/討論,進行解決一個問題;可以有多個Agent,不同的Agent負責不同板塊的功能,Agent之間合作的方式可以是串行的,也可以是并行的執行任務;不同的Agent可以是同一個大語言模型,只是傳入他們的提示詞不同

? ? ? ? Agent還可以與人、環境進行交互?


四、Agent應用示例

1.Agents模仿人類社群

核心設計理念

? ? ? ? 用Agents模仿人類社群,設置一個虛擬場景,在場景中放置一些人物,以提示詞的方式給人物一些背景設定;將這些所謂的虛擬人物扔在我們設置的這個虛擬場景中,讓人物在這個虛擬場景內做一定的任務,不同的人物可以看作是不同的Agent,不同人物通過環境的改變,修改提示詞,然后由大語言模型執行對應的動作

????????項目旨在借助生成式智能體技術,創造能模擬可信人類行為的計算智能體,構建虛擬人類社群。通過賦予智能體記憶、反思和計劃能力,使其在虛擬環境中的互動和行為更接近真實人類,提升人工智能交互的真實感和沉浸感。

核心技術與方法

????????智能體模型整合了記憶流、反思機制和計劃生成功能。記憶流記錄智能體經歷,反思機制將短期記憶整理為長期記憶并形成見解,計劃生成功能依據記憶和目標制定行動。大語言模型(LLMs)是智能體的決策和對話基礎,通過特定提示工程,讓智能體基于自身知識和記憶回答問題、規劃行動。對智能體角色進行明確分工,不同角色專注特定領域任務,提升大模型輸出質量;

項目地址:https://github.com/joonspk-research/generative_agents


2.AutoGPT:幫你在線完成任務

工作原理

????????用戶輸入目標后,AutoGPT 將其分解為子任務,為每個子任務生成提示并執行。在執行過程中,不斷根據結果反饋調整策略,直至完成目標。期間會利用自身的短期和長期記憶(借助向量數據庫實現)來存儲和調用信息,還可通過插件訪問網絡和其他應用獲取實時數據 。

功能特性:

????????高度自主性:能根據設定目標自動規劃執行步驟,在任務執行中動態調整行為,無需外部干預。例如設定 “制定一個一周的健身計劃”,它可自主收集信息、規劃每天的鍛煉內容和時間安排。

????????任務分解與執行:將復雜任務拆解為多個子任務,逐個執行并根據反饋優化操作,以此處理多步驟復雜任務。如生成一份市場調研報告時,會依次完成確定調研主題、收集數據、分析數據、撰寫報告等子任務 。

????????自我反饋優化:執行任務時評估當前結果,據此調整后續行動,逐步提升任務處理表現,使任務執行更高效準確。

????????多任務處理能力:支持同時處理多個獨立任務,具備良好的上下文切換能力。比如同時進行文案創作和數據分析任務。

????????自然語言交互:支持自然語言輸入,用戶可用日常語言描述需求,它能理解并轉化為操作指令。

????????外部交互拓展:可通過 API 與外部系統交互,獲取數據、執行網絡查詢、調用其他應用等,拓展應用場景。例如訪問互聯網獲取實時信息,調用繪圖工具生成圖表 。

項目地址:https://github.com/Significant-Gravitas/AutoGPT


3.HuggingGPT:由agent根據任務決定去HuggingFace上使用哪個模型

工作原理:

????????利用大型語言模型(LLM)連接機器學習社區(如 HuggingFace)中各種 AI 模型,以解決復雜 AI 任務的系統。它以語言為通用接口,LLM 作為控制器,管理眾多專家模型協同工作。?

工作流程:

????????任務規劃:接收到用戶請求后,ChatGPT 等 LLM 解析請求,將其分解為多個子任務,并規劃任務順序和依賴關系。例如,若用戶請求 “分析一張圖片中不同物體,并生成一段描述”,ChatGPT 會將其分解為目標檢測、圖像描述等子任務,并確定目標檢測需先執行,因為圖像描述依賴檢測出的物體信息。

????????模型選擇:針對每個子任務,ChatGPT 根據 HuggingFace 中模型的功能描述,選擇合適的專家模型。例如,在目標檢測任務中,可能選擇在該領域表現出色的 YOLO 系列模型。

????????任務執行:被選定的專家模型在推理端點上執行分配到的任務,完成后將執行信息和推理結果記錄回 LLM。比如圖像描述模型完成對圖片的描述后,將結果反饋給 ChatGPT。

????????響應生成:ChatGPT 匯總執行過程日志和推理結果,整合成完整答案返回給用戶。例如,將目標檢測出的物體信息和圖像描述結合,形成符合用戶需求的回復。

項目地址:https://github.com/microsoft/JARVIS


4.MetaGPT:多agent協作代碼開發

核心技術與工作原理:

????????基于大語言模型(LLM)構建,模擬虛擬軟件團隊協作。框架包含產品經理、架構師、項目經理、工程師、質量工程師等多種角色智能體,每個智能體有各自的 LLM、觀察、思考、行動和記憶能力。借助標準作業程序(SOP),智能體明確分工與協作流程,保障系統有序高效運作。例如,接到軟件開發需求,產品經理智能體分析需求、撰寫產品需求文檔,架構師據此設計系統架構,工程師依架構編寫代碼 。

功能特點:

????????自然語言編程:允許用戶用自然語言描述任務,降低編程門檻,非專業人員也能實現軟件開發或數據處理。比如輸入 “開發一個簡單的待辦事項管理小程序”,MetaGPT 能理解并生成相應代碼。

????????多智能體協作:各智能體協同工作,依據 SOP 高效溝通,共同完成復雜任務,提高工作效率和準確性。在大型項目開發中,不同角色智能體各司其職,緊密配合。

????????數據解釋器:可自動解析自然語言指令,生成代碼或執行數據分析任務。用戶輸入 “分析銷售數據并生成趨勢圖”,它能快速處理 。

項目地址:https://github.com/geekan/MetaGPT/tree/main


5.Voyager:用agent學習玩Minecraft游戲

核心技術與運行機制自動課程生成

????????設定 “盡可能發現更多不同事物” 為總體目標,由 GPT-4 于游戲進程和智能體狀態生成自動課程。課程難度循序漸進,引導 Voyager 探索游戲世界。比如在游戲前期,會生成像 “收集木材”“建造簡單房屋” 這類基礎任務;隨著游戲進展,任務會逐漸變為 “開采鉆石”“建造紅石機關” 等更具挑戰性的內容。

技能庫構建與檢索

????????Voyager 使用流行的 Javascript Minecraft 操作庫(Mineflayer),讓 GPT-4 根據任務需求生成游戲操作代碼,如 “combatZombie”(對抗僵尸)。每次 GPT-4 生成并驗證新技能代碼后,先用 GPT-3.5 為代碼生成詳細注釋,再將注釋做 Embedding 保存到向量數據庫 Chroma 中,形成不斷增長的技能庫。當接到新任務時,先由 GPT-3.5 根據游戲環境給出任務操作說明,再將其做 Embedding 去技能庫檢索前 5 個最匹配的操作代碼,最后由 GPT-4 決定是調用已有代碼還是編寫新代碼,以盡可能重用已有技能。

迭代提示機制

????????執行生成的程序后,從游戲模擬中獲取觀察結果(如玩家的生命值、饑餓值、物品庫存、周圍環境信息等)和代碼執行錯誤信息;將這些反饋合并到 GPT-4 的提示中,進行新一輪代碼優化;不斷重復該過程,直到自我驗證模塊確認任務完成,此時將程序提交到技能庫。比如在嘗試制作鉆石鎬時,若代碼執行提示 “缺少鉆石材料”,則反饋給 GPT-4,讓其調整代碼,先去獲取鉆石。

項目地址:https://github.com/MineDojo/Voyager/tree/main


6.Character-LLM agent做角色扮演

可訓練角色扮演 Agent:區別于普通提示驅動的代理,Character-LLM 通過訓練學習特定角色的經歷、特征和情感,能以特定人物(如貝多芬、凱撒等)的身份進行對話,無需額外提示或參考文檔。

經驗重建數據生成:提出經驗重建(Experience Reconstruction)方法,生成詳細多樣的角色經驗數據用于訓練,涵蓋角色生活場景、對話等內容,讓模型學習角色的行為模式和知識體系。

項目地址:https://github.com/choosewhatulike/trainable-agents/


7.ChatDB Agent與數據庫交互

項目地址:https://github.com/huchenxucs/ChatDB

Character-LLM 是一個利用大語言模型(LLM)實現人類行為模擬的角色扮演項目,其核心在于讓 AI 模型基于人的記憶、反思和行動來扮演角色,在研究和應用領域有獨特價值。

項目核心思想與目標

????????受到斯坦福小鎮的啟發,該項目旨在解決簡單的 LLM API 提示詞無法滿足涉及人類深層次思考和體驗的問題。它通過構建一套架構,讓 AI 模型模擬人類體驗時間、感受情感并記住與他人的互動,以此訓練角色代理(agent),進而實現更真實、深入的角色扮演。

項目實現流程

????????profile 收集:主要從維基百科等渠道收集人物資料,梳理出人物在特定時間段內發生的事件,為后續的角色塑造提供基礎信息。例如收集貝多芬的生平事跡,包括他師從哪些老師、何時發表第一部作品等。

????????場景提取:從給定的經驗描述中抽取多樣化、高質量的場景,涵蓋聊天、辯論、討論、演講等類型。場景描述簡潔且注重背景,像描述貝多芬與老師學習音樂的場景,會突出時間、地點和人物關系,略去細節 。

????????對話抽取:結合人物背景信息和提取的場景,借助大模型模擬編劇的角色,生成豐富的對話內容。在生成對話時,要求模型忠實于人物的愿望和要求,充分考慮角色的情感和思維能力,想象角色在特定場景下的言行。比如模擬貝多芬在獲得資助時與資助者的對話。

????????保護性經驗生成:為減少角色的幻覺現象,當遇到超出角色能力范圍的問題時,模型學會表示缺乏相關知識。通過這種方式,讓角色在面對特定問題時的表現更符合設定,避免出現不符合角色設定的回答。

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

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

相關文章

RAGFlow本地部署教程 :多模態檢索+動態生成,用AI重構企業知識生產力

RAGFlow是一款基于檢索增強生成(RAG)技術的智能工作流平臺,通過整合多源數據檢索與生成式AI模型,優化企業知識管理、智能問答及自動化報告生成,核心功能包括: 多源數據融合:支持數據庫、文檔庫、…

【C/C++】深入理解指針(二)

文章目錄 深入理解指針(二)1.const修飾指針1.1 const修飾變量1.2 const修飾指針變量 2.野指針2.1 野指針成因1.指針未初始化2. 指針越界訪問3.指針指向的空間釋放 2.2 如何規避野指針2.2.1 指針初始化2.2.2 小心指針越界2.2.3 指針變量不再使?時,及時置NULL&#x…

【verilog】在同一個 always 塊中寫了多個“看起來獨立”的 if / if-else,到底誰先誰后,怎么執行?會不會沖突?

🔍 問題本質 在一個 always (posedge clk) 塊中,所有的代碼都是順序執行的。但這不意味著它就像軟件一樣“一條一條執行”,因為最終是電路!電路是并行存在的! Verilog 是硬件描述語言(HDL)&am…

【React】什么是 Hook

useStateuseEffectuseRef 什么是hook?16.8版本出現的新特性。可以在不編寫class組件的情況下使用state以及其它的React特性 為什么有hook?class組件很難提取公共的重用的代碼,然后反復使用;不編寫類組件也可以使用類組件的狀態st…

如何查看自己抖音的IP屬地?詳細教程及如何修改

在當今互聯網時代,IP屬地信息已成為各大社交平臺(如抖音、微博、快手等)展示用戶真實網絡位置的重要功能。以下是關于如何查看抖音IP屬地的詳細教程及常見問題解答,幫助您快速了解相關信息: 一、如何查看抖音賬號的IP屬…

深度學習算力革新:AI服務器在運維工作中的智能化實踐

【導語】作為IT基礎設施服務領域的從業者,我們在日常工作中發現,AI服務器的智能化運維能力正在重塑傳統IDC的管理模式。本文將以DeepSeek系列服務器為例,分享智能算力設備在真實運維場景中的創新應用。 一、傳統服務器集群的運維痛點 在數據…

安裝部署RabbitMQ

一、RabbitMQ安裝部署 1、下載epel源 2、安裝RabbitMQ 3、啟動RabbitMQ web管理界面 啟用插件 rabbitmq數據目錄 創建rabbitmq用戶 設置為管理員角色 給用戶賦予權限 4、訪問rabbitmq

中間件--ClickHouse-4--向量化執行(什么是向量?為什么向量化執行的更快?)

1、向量(Vector)的概念 (1)、向量的定義 向量:在計算機科學中,向量是一組同類型數據的有序集合,例如一個包含多個數值的數組。在數據庫中,向量通常指批量數據(如一列數…

Python PDF 轉 Markdown 工具庫對比與推薦

根據最新評測及開源社區實踐,以下為綜合性能與適用場景的推薦方案: 1. ?Marker? ?特點?: 轉換速度快,支持表格、公式(轉為 LaTeX)、圖片提取,適配復雜排版文檔?。依賴 PyTorch&#xff0c…

Vue 和 Spring boot 和 Bean 不同生命周期

一、Vue 組件生命周期 父子組件生命周期順序: 創建時: 父 beforeCreate → 父 created → 父 beforeMount → 子組件生命周期 → 父 mounted 更新時: 父 beforeUpdate → 子組件更新 → 父 updated。 銷毀時: 父 beforeDestroy…

Microsoft Azure 基礎知識簡介

Microsoft Azure 基礎知識簡介 已完成100 XP 2 分鐘 Microsoft Azure 是一個云計算平臺,提供一系列不斷擴展的服務,可幫助你構建解決方案來滿足業務目標。 Azure 服務支持從簡單到復雜的一切內容。 Azure 具有簡單的 Web 服務,用于在云中托…

C語言鏈接數據庫

目錄 使用 yum 配置 mysqld 環境 查看 mysqld 服務的版本 創建 mysql 句柄 鏈接數據庫 使用數據庫 增加數據 修改數據 查詢數據 獲取查詢結果的行數 獲取查詢結果的列數 獲取查詢結果的列名 獲取查詢結果所有數據 斷開鏈接 C語言訪問mysql數據庫整體源碼 通過…

【Maven】手動安裝依賴到本地倉庫

【Maven】手動安裝依賴到本地倉庫 【一】下載依賴【二】安裝 JAR 文件到本地倉庫【三】驗證安裝【四】在項目中使用該依賴【1】注意事項【2】額外提示 【一】下載依賴 登錄到中央倉庫下載依賴,中央倉庫地址:https://mvnrepository.com/ 搜搜你的依賴的a…

騰訊云golang一面

go垃圾回收機制 參考自:https://zhuanlan.zhihu.com/p/334999060 go 1.3 標記清除法 缺點 go 1.5 三色標記法 屏障機制 插入屏障 但是如果棧不添加,當全部三色標記掃描之后,棧上有可能依然存在白色對象被引用的情況(如上圖的對象9). 所以要對棧重新進行三色標記掃…

跨平臺嵌入式音視頻開發指南:EasyRTC音視頻通話的多場景適配與AI擴展能力

在數字化通信技術飛速發展的今天,實時音視頻通信已成為眾多智能設備和應用的核心功能。從智能家居到遠程辦公,從在線教育到智能安防,音視頻通信技術的應用場景不斷拓展,對低延遲、高穩定性和跨平臺兼容性的需求也在持續增長。在這…

Android 11 去掉性能受到影響通知

源碼位置: frameworks/base/services/core/java/com/android/server/am/ActivityManagerService.java final void finishBooting() {TimingsTraceAndSlog t = new TimingsTraceAndSlog(TAG + "Timing",Trace.TRACE_TAG_ACTIVITY_MANAGER);t.traceBegin("Finis…

Mac idea WordExcel等文件git modify 一直提示修改狀態

CRLF LF CR 換行符自動轉換問題 查看狀態:git config --global --list Mac需要開啟,window下需要關閉 關閉命令:git config --global core.autocrlf false 命令解釋: autocrlf true 表示要求git在提交時將crlf轉換為lf&a…

Apache Commons CLI 入門教程:輕松解析命令行參數

文章目錄 Apache Commons CLI 入門教程:輕松解析命令行參數一、什么是 Commons CLI?二、為什么選擇 Commons CLI?三、快速開始1. 添加依賴2. 基礎示例3. 運行示例1. 在Idea中運行2. 命令行中運行3. 使用 Maven/Gradle 運行(推薦&a…

VS2022調試嵌入式linux C# 程序 高效的開發方案

1.目標板子配置好ssh,確保PC可以連上 2.目標板子上傳VSDBG程序,詳見我的上一個文章 3.PC安裝winfsp, sshfs,SSHFS-Win Manager.傻瓜式安裝,將目標板子映射到PC的某個盤 4.VS2022中,你的工程的exe生成目錄到上面盤中某個路徑 5…

Python中如何加密/解密敏感信息(如用戶密碼、token)

敏感信息,如用戶密碼、API密鑰、訪問令牌(token)、信用卡號以及其他個人身份信息(PII),構成了現代應用程序和系統中最為關鍵的部分。這些信息一旦被未經授權的第三方獲取,可能引發災難性的后果,從個人隱私泄露到企業經濟損失,甚至是大規模的社會安全問題。保護這些敏感…