如何制造一個AI Agent:從“人工智障”到“人工智能”的奇幻漂流

開篇:什么是AI Agent?它和我的“人工智障”音箱有啥區別?🎤

朋友們,先想象一下:

  • 你的智能音箱?🗣? -> 🤖 -> ?:“Hey Siri,幫我訂一份披薩,不要芝士。”

  • Siri?🗣? -> 🤖 -> 🍕:“好的,已為您搜索‘不要芝士的披薩’的圖片,共有5,430,000張結果。”

我:?😤 (怒摔手機)

這就是傳統的AI,一個命令式的傻瓜——你問,它答,答非所問是常態。

而現在我們要造的?AI Agent,是這樣的:

  • ?🗣? -> 🤖 -> 🧠:“Hey Agent,我餓了,想吃點健康的,預算50塊,搞定它。”

  • Agent?🧠 -> 🤔 -> 🕵? -> 📱 -> ?:“已調用‘健康食品API’搜索附近餐廳,用‘比價插件’篩選出評分最高且優惠的‘輕食沙拉’,并通過‘支付接口’完成下單。訂單號666,預計20分鐘后送達。記得給好評哦親!”

我:?🥗 -> 😋 -> 😎 (優雅地刷起了B站,等待外賣)

看出區別了嗎?Agent有大腦、會思考、能調用工具、可以自主完成一連串任務!它不再是單純的“應答機”,而是一個能自主行動的智能體!


一、🧱 打造一個Agent需要哪些“零件”?

把一個Agent拆開,里面大概長這樣:

  1. 🧠 大腦 (Brain): 通常是一個大語言模型 (LLM),比如GPT-4。負責思考、做決策、規劃步驟。它是團隊的CEO

  2. 🛠? 工具 (Tools): 是Agent的“瑞士軍刀”。比如:計算器、搜索引擎、API接口、數據庫等等。CEO手下干活的工具人

  3. 📝 記憶 (Memory): 分為短期記憶(記住當前對話的上下文)和長期記憶(從過去的交互中學習)。防止它變成“金魚腦”,只有7秒記憶。🐠

  4. 🧩 規劃器 (Planner): 把大任務拆解成一步步可執行的小任務。項目的項目經理


二、🚀 手把手教你造一個“摸魚”Agent

項目目標:打造一個“職場摸魚小助手”Agent。它能在你工作時自動監控股票市場,一旦你買的股票漲跌超過5%,就立刻發郵件提醒你!📈📉(老板看了想打人)

第1步:準備“大腦”和“工具”🔧

我們將使用強大的?LangChain?框架,它把造Agent的復雜度從“造火箭”降到了“拼樂高”。

安裝“樂高零件”

pip install langchain-openai langchain-agents python-dotenv requests

第2步:編寫代碼,注入靈魂💻

創建一個Python文件,比如?moyu_agent.py

import os
from langchain.agents import AgentType, initialize_agent, load_tools
from langchain_openai import OpenAI
from langchain.agents import Tool
from langchain import SerpAPIWrapper
from dotenv import load_dotenv
import smtplib
from email.mime.text import MIMEText# 加載環境變量(把你的API Key都放進去)
load_dotenv()# -------------------- 工具1: 股票查詢工具 (模擬一個) --------------------
def stock_checker(stock_code):"""一個模擬的股票查詢工具,現實中請接入真正的API!"""# 假裝我們查到了股價mock_price = {"AAPL": 180 + (ord(stock_code[-1]) % 10) - 5, # 用一個偽隨機數模擬股價波動"TSLA": 250 + (ord(stock_code[-1]) % 10) - 5,"00700": 350 + (ord(stock_code[-1]) % 10) - 5, # 騰訊港股}price = mock_price.get(stock_code, 100)change = (price - 100) / 100 * 100  # 模擬漲跌幅return f"{stock_code} 當前價格: ${price}; 漲跌幅: {change:.2f}%"# 把函數包裝成LangChain可用的Tool
stock_tool = Tool(name="Stock Checker",func=stock_checker,description="用于查詢指定股票代碼的當前價格和漲跌幅。輸入應為股票代碼,如'AAPL'。"
)# -------------------- 工具2: 郵件發送工具 --------------------
def email_sender(input_text):"""一個模擬的發送郵件的工具"""# 這里應該是你的郵件邏輯,為了演示我們簡化了print(f"🤖 [Agent日志] 正在嘗試發送郵件...")print(f"📧 郵件內容: {input_text}")# 模擬成功發送return "郵件發送成功!老板絕對發現不了!"email_tool = Tool(name="Email Sender",func=email_sender,description="輸入郵件正文內容,即可發送郵件。"
)# -------------------- 組裝Agent! --------------------
# 1. 初始化大腦LLM
llm = OpenAI(model_name="gpt-3.5-turbo-instruct", temperature=0) # 用個便宜點的模型# 2. 加載工具列表
tools = [stock_tool, email_tool]# 3. 初始化Agent!
# ZERO_SHOT_REACT_DESCRIPTION 是一種簡單的Agent類型,適合單一任務
agent = initialize_agent(tools,llm,agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,verbose=True,  # 開啟廢話模式,方便看Agent是怎么思考的handle_parsing_errors=True # 防止它偶爾解析錯擺爛
)# -------------------- 釋放Agent! --------------------
# 給它一個任務!
prompt = """
幫我監控一下股票AAPL(蘋果),如果它的漲跌幅超過了5%,就立刻發郵件提醒我!
郵件內容要說:“您的股票波動劇烈,快去看看!別被老板抓到了!!”
"""if __name__ == "__main__":print("🚀 摸魚Agent啟動啦!")result = agent.run(prompt)print(f"最終結果: {result}")

第3步:運行它,看結果!🎬

在終端運行:

python moyu_agent.py

你會看到類似這樣的大型思考現場verbose=True?的功勞):

🚀 摸魚Agent啟動啦!> Entering new AgentExecutor chain...I need to check the stock price of AAPL and see if the change is more than 5%. Then, if it is, I need to send an email.
Action: Stock Checker
Action Input: AAPL
Observation: AAPL 當前價格: $177; 漲跌幅: 77.00%
Thought: The change is 77%, which is definitely more than 5%. I need to send an email now.
Action: Email Sender
Action Input: 您的股票波動劇烈,快去看看!別被老板抓到了!!
Observation: 郵件發送成功!老板絕對發現不了!
Thought: I have successfully sent the email as requested.> Finished chain.
最終結果: 郵件發送成功!老板絕對發現不了!

解讀一下Agent的內心戲

  1. Thought: “我得先查查AAPL的股價...” 🤔

  2. Action: 它選擇了?Stock Checker?這個工具。

  3. Observation: 工具返回結果 “漲跌幅:?77%” (這股價坐火箭了?🚀)

  4. Thought: “臥槽77%!這還不沖?!” 😲

  5. Action: 它立刻選擇了?Email Sender?工具。

  6. Observation: 郵件發送成功!

  7. 任務完成!?🎉

三、🌗 總結與展望:未來是Agent的天下!

恭喜你!你已經成功制造了一個初級“摸魚”Agent!雖然它現在還有點簡陋(比如用了模擬數據),但你已經掌握了核心科技!

階段特點emoji
過去單輪問答,像個復讀機🤖 ?? ?
現在多輪思考,會用工具,自主完成任務🤖 ?? 🧠 ?? 🛠? ?? ?
未來多個Agent協作!比如一個Agent負責調研,一個負責寫代碼,一個負責測試,它們自己就能開公司了!👨💻👩💻🤖🧠🤖🧠 🤝

所以,未來的工作模式可能是:

“Agent小隊,去給我開發一個下一代元宇宙App,預算5個比特幣。”
Agent們“收到,CEO!”?(然后它們自己就開始分工協作了...)

:😎 (躺在沙灘上,喝著椰汁)


互動環節:💬

Q1: 我的Agent只會報錯怎么辦?
A1: 正常!99%的時間都在調bug!檢查API Key、網絡、庫版本。記住,程序員的核心技能是谷歌復制粘貼。 Stack Overflow is your God! 🙏

Q2: 有什么現成的Agent平臺可以用嗎?
A2: 有!AutoGPT,?LangChain,?LlamaIndex,?Microsoft AutoGen?都是非常火的框架和平臺,讓你“拼樂高”式造Agent。

Q3: 我真的會因為造出Agent而失業嗎?
A3: 兄弟,想開點。是你用Agent讓別人失業啊!(手動狗頭) 🐶


代碼和人生一樣,總有bug,但不要慌,慢慢調。
祝大家都能造出讓自己準時下班的Agent!我們下期再見! 👋

(本篇博客由人類撰寫,但未來可能由Agent代筆)

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

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

相關文章

別錯過!一杯奶茶錢開啟企業微信 Power BI 之旅

隨著微軟的Power BI在數據分析和商業智能領域的廣泛應用,人們對于Power BI使用的便捷性和高效性提出了更高的要求。 為了滿足這些需求,PBI Plus應運而生,它巧妙地將即時通訊軟件的強大功能與Power BI的分析能力相結合。接下來,我們…

MotionSound-簡單易用的文本轉語音工具

本文轉載自:MotionSound-簡單易用的文本轉語音工具 - Hello123工具導航 ** 一、🎯 MotionSound:一鍵讓文字 “開口說話” 的 AI 配音神器 做視頻沒時間配音?PPT 演示想加逼真語音?試試MotionSound吧!它是…

Zynq設備與電腦相連方式

一、Zynq設備通過串口與電腦直接相連 “Zynq設備通過串口與電腦直接相連”是開發和調試Zynq系列SOC(如Zynq-7000或Zynq UltraScale+ MPSoC)時最基礎、最重要的步驟。這個串口連接主要用于: 系統啟動信息輸出:查看Uboot、Linux內核的啟動過程。 系統調試:輸出調試信息(p…

python 邏輯運算練習題

圖書館入館條件檢查題目描述 編寫程序判斷一個人是否能進入圖書館。圖書館有以下入館規則:年齡大于等于 18 歲,或者有家長陪同(無論年齡)輸入示例圖書館入館檢查 請輸入你的年齡:18 是否有家長陪同?(是/否)…

《Java Stream 流從入門到精通:一行代碼搞定集合操作,效率提升 10 倍》

封面圖上流動的「Stream」字樣,正是 Java 8 以來最革命性的特性之一!你是否還在寫冗長的 for 循環遍歷集合?是否為過濾、排序、聚合數據寫一堆重復代碼?Stream 流的出現,以聲明式編程風格將復雜的集合操作濃縮為一行代…

前端筆記2025

前端 與后端交互 下載后端接口的文件時,若是二進制,需要在請求中添加responseType: ‘blob’ 例如 axios.get(‘http://127.0.0.1:8612/api/daily/report/tdjzxz?selectedMonth2022-06’, { headers: { ‘Accesstoken’: ‘f033b94655f84386a0c112b41…

【LeetCode每日一題】226. 翻轉二叉樹 101. 對稱二叉樹

每日一題226. 翻轉二叉樹題目總體思路代碼101. 對稱二叉樹題目總體思路代碼知識點2025.9.5226. 翻轉二叉樹 題目 給你一棵二叉樹的根節點 root ,翻轉這棵二叉樹,并返回其根節點。 示例 1: 輸入:root [4,2,7,1,3,6,9] 輸出&am…

【RNN-LSTM-GRU】第三篇 LSTM門控機制詳解:告別梯度消失,讓神經網絡擁有長期記憶

深入剖析LSTM的三大門控機制:遺忘門、輸入門、輸出門,通過直觀比喻、數學原理和代碼實現,徹底理解如何解決長期依賴問題。1. 引言:為什么需要LSTM?在上一篇講解RNN的文章中,我們了解到??循環神經網絡&…

殘差去噪擴散模型

論文題目:Residual Denoising Diffusion Models(殘差去噪擴散模型) 會議:CVPR2024 摘要:殘差去噪擴散模型(RDDM)是一種新的雙重擴散過程,它將傳統的單一去噪擴散過程解耦為殘差擴散和噪聲擴散。這種雙重擴散框架通過引入殘差,將基于去噪的擴散模型擴展為一種統一的、可…

MySQL與ES索引區別

MySQL與ES索引區別 MySQL索引像字典目錄,ES索引更像整個圖書館的書籍分類系統。 關鍵限制:MySQL單表索引大小影響寫性能,ES的分片數創建后不能改。 比如MySQL的“行”對應ES的“文檔”,MySQL的“表”類似ES的“索引”概念。 MySQL…

vue3圖標終極方案【npm包推薦】vue3-icon-sui(含源碼詳解)

簡介 為徹底實現 vue3 項目圖標自由,特開發此 npm包 vue3-icon-sui,全品類圖標,通通支持! iconify 圖標svg 圖標font-class 圖標 安裝 npm i vue3-icon-sui -S使用 按需導入 任意頁面中 import myIcon from "vue3-icon-su…

redis----持久化

Redis 提供了兩種主要的持久化機制,用于將內存中的數據保存到磁盤,以防止服務器重啟或故障導致數據丟失。這兩種機制分別是 RDB(Redis Database)和 AOF(Append Only File)。1. RDB 持久化RDB 是 Redis 默認…

Docker快速部署Mongodb主副本集實踐

系列文章目錄 第一章 Mongodb的主副本集 文章目錄系列文章目錄前言一、Mongodb基礎介紹數據庫(Database)集合(Collection)文檔(Document)BSON(Binary JSON)_id(主鍵&…

FC平臺安裝Windows Server2016并連接V6存儲

創建 windows server2016 上傳ISO創建虛擬機安裝OS 加載光盤掛載成功之后,重啟虛擬機重啟之后VNC登錄即可。在FC上安裝windows,安裝完成后,必須安裝tools工具,不然沒有虛擬網卡,無法配置ip地址。Windows主機安裝toolsW…

農業XR數字融合工作站,賦能農業專業實踐學習

隨著數字技術與農業的深度融合,農業專業XR數字融合工作站為農業專業學生提供了沉浸式、交互式的學習體驗。農業專業XR數字融合工作站作為集PC、VR、MR技術于一體的軟硬件集成平臺,通過虛擬仿真、數字孿生等技術手段,有效解決了傳統農業教育中…

積分球的使用——簡易版

這篇寫的比較雜。積分球的功能積分球——測量燈具等光源的總光通量、光效、色溫、顯色指數等參數。使用方法1.開啟積分球系統(探測器、光度計、光譜儀),充分預熱(15-30分鐘),使得電子設備穩定,減…

[光學原理與應用-435]:晶體光學 - 晶體的結構-基元/原胞/晶胞/點陣

晶體的結構可通過基元、原胞、晶胞和點陣四個核心概念進行系統描述,它們共同揭示了晶體中原子排列的周期性與對稱性規律,具體如下:1. 基元(Structure Motif)定義:基元是晶體中重復排列的最小結構單元&#…

電腦音頻錄制 | 系統麥克混錄 / 系統聲卡直錄 | 方法匯總 / 常見問題

注:本文為 “電腦音頻錄制 ” 相關合輯。 英文引文,機翻未校。 未整理去重,如有內容異常,請看原文。 How to Record Computer Audio in 6 Free Ways 如何用 6 種免費方式錄制電腦音頻 Sponsored by EaseUS Nov 28, 2023 4:34 a…

2025高教社國賽數學建模競賽B題完整參考論文(含模型和代碼)

2025國賽數學建模競賽B題完整參考論文 目錄 一、 問題重述 1.1 問題背景 1.2 問題回顧與分析 二、 模型假設 三、 符號說明 四、 問題求解與分析 4.1數據預處理 4.2 問題1求解與分析 4.2.1 問題1分析 4.2.2 問題1建模與求解 4.2.3 問題1結果與分析 4.3 問題2求解與分…

OpenSSL 1.0.1e 下載解壓和運行方法(小白適用 附安裝包)?

openssl-1.0.1e.zip? 是 OpenSSL 加密工具包的一個舊版本(發布于 2013 年左右)的 ?源代碼壓縮包,文件格式是 ZIP 壓縮格式。 一、下載與解壓 ?下載文件? 假如你已經有了 openssl-1.0.1e.zip 這個壓縮包,就跳過這步。 如果沒有…