AI Agent開發與安全

AI Agent的核心演進
  1. Level 1:LLM Agent(聊天機器人)

    • 特點:靠提示詞工程賦予人設(如星座占卜、角色扮演),但存在幻覺問題,輸出不可控。
    • 局限:娛樂性強,難勝任嚴肅任務。
  2. Level 2:AI Agent(實用工具)

    • 升級點:新增 規劃(拆解任務步驟)、記憶(存儲上下文)、工具使用(調用API/數據庫)。
    • 代表:OpenManus、OWL等,能處理復雜任務(如自動化辦公)。
  3. Level 3:Multi-Agent(多智能體協作)

    • 為什么需要? 單Agent難精通所有領域(如同時懂編程+畫圖)。
    • 方案:多個專業Agent分工協作(如產品經理Agent分析需求 + 程序員Agent寫代碼)。
    • 關鍵優勢
      • 任務拆解更高效
      • 可獨立優化單個Agent
      • 支持人機協同(Human in the Loop)
兩大核心協議:MCP 與 A2A
1. MCP(面向工具調用)
  • 目標:讓AI統一調用外部工具(如天氣API、數據庫)。
  • 架構
    • 主機(如IDE插件)→ 客戶端(連接器)→ 服務器(工具實現)。
  • 價值:工具一次開發,多模型通用(類似USB-C接口)。
2. A2A(面向Agent協作)
  • 目標:讓多個Agent互相發現、分工協作(如旅行規劃Agent + 酒店預訂Agent)。
  • 核心功能
    • 發布能力(Agent Card)
    • 任務分發與狀態同步
    • 結果流式返回
  • 優勢:打破廠商壁壘,構建開放生態。
3. MCP vs A2A 關系
  • 互補:MCP管工具調用,A2A管Agent協作。
  • 競爭可能:高級工具 ≈ 弱Agent,未來協議可能融合。
Agent的思考框架
  1. 思維鏈(CoT)

    • 讓模型分步驟推理(如先分析問題再生成答案),提升邏輯性。
  2. ReAct(推理+行動)

    • 循環流程:思考 → 行動(調用工具)→ 觀察結果 → 再思考。
    • 適用:需動態調整的任務(如實時搜索+分析)。
  3. Plan-and-Execute(先規劃后執行)

    • 步驟
      1. 生成完整計劃(如“1. 搜索資料 → 2. 總結 → 3. 生成報告”)。
      2. 嚴格按步驟執行,避免中途被干擾。
    • 優勢:適合長鏈條任務,穩定性強。
Golang開發框架:Eino
1. 核心設計
  • 強類型:用Go泛型確保節點輸入輸出類型安全。
  • 組件化:預置ChatModel、工具調用等模塊,開箱即用。
  • 編排能力:用有向圖連接組件,可視化構建流程(類似流程圖)。
2. 關鍵功能
  • Callback機制:嵌入日志、監控等非業務邏輯(如追蹤工具調用耗時)。
  • Checkpoint:支持人機協同(如任務中途暫停讓用戶確認)。
  • 示例代碼:10行實現天氣查詢Agent(結合MCP調用高德地圖API)。
多Agent系統落地實踐
  1. 架構設計(Supervisor模式)

    • 意圖識別Agent(客戶經理) → 分發任務給領域Agent(如旅行規劃、深度搜索)。
    • 所有Agent通過A2A協議互聯。
  2. 連接生態

    • Cherry Studio:通過OpenAI兼容接口快速接入Agent。
    • QQ機器人:用A2A協議將Agent能力植入QQ生態。
  3. 可觀測性

    • 集成 Langfuse:實時查看任務鏈路、性能指標、錯誤日志。
    • 10行代碼接入,無侵入式監控。
AI Agent開發心法
  1. 協議是基石:MCP統一工具調用,A2A實現多Agent協作。
  2. 框架提效率:Eino解決Go生態工程化問題。
  3. 設計模式是關鍵
    • 簡單任務 → ReAct(邊想邊做)
    • 復雜任務 → Plan-and-Execute(先規劃后執行)
  4. 生態擴展:通過Connector快速接入QQ、Cherry Studio等平臺。

結論
AI Agent正從“玩具”走向“工具”,多Agent協作+標準化協議+工程化框架是高效開發的核心。選擇適合場景的協議(MCP/A2A)和思考框架,結合Eino等工具,即可優雅構建復雜Agent系統。

技術選型對比表

場景推薦方案
單任務+工具調用MCP + ReAct
多Agent協作A2A + Plan-and-Execute
工程化開發(Golang)Eino框架 + tRPC-A2A
快速原型驗證可視化編排(Dify/Coze)

抓住協議框架設計模式三條主線,就能理解復雜Agent系統的全貌。

架構核心組件詳解

1. LLM(大語言模型)
  • 核心作用:自然語言理解與任務規劃
  • 關鍵技術
    • 思維鏈(CoT):將用戶指令分解為可執行步驟
      # 示例:LLM任務分解
      prompt = f"""
      用戶請求:{user_query}
      可用工具:{tool_list}
      輸出JSON格式:{"steps": [{"tool": "tool_name", "params": {...}}]}
      """
      
    • 約束生成:限定輸出格式防止幻覺
2. Agent(智能代理)
  • 核心引擎:任務調度與決策
  • 狀態機實現
    class Agent:def __init__(self, tools):self.state = "IDLE"self.working_memory = []  # 存儲中間結果def execute_step(self, step):# 工具選擇算法(基于余弦相似度)tool = max(self.tools, key=lambda t: cosine_sim(step["desc"], t.desc))result = tool.execute(step["params"])self.working_memory.append(result)# 狀態轉移if "需要進一步處理" in result:self.state = "NEED_FOLLOWUP"else:self.state = "AWAITING_NEXT"
    
3. MCP(模型上下文協議)
  • 協議本質:統一工具調用規范
  • 協議結構
    {"version": "1.0","action": "EXECUTE","payload": {"tool_id": "crm_sales_query","parameters": {"time_range": "last_quarter"},"auth_context": {"user_id": "U123", "token": "xyz"}}
    }
    
  • 安全設計
    • 參數白名單:限制可傳遞的敏感字段
    • 執行沙箱:危險操作隔離運行
      def safe_execute(tool, params):with Sandbox() as sandbox:return sandbox.run(tool.executable, params)
      

全鏈路工作流程(14步詳解)

階段1:請求解析(1-3步)
  1. 用戶輸入:自然語言請求(例:“統計Q3華北區銷售額”)
  2. LLM解析
    • 生成結構化指令:
      {"steps": [{"tool": "region_filter", "params": {"region": "華北"}},{"tool": "sales_aggregator", "params": {"period": "2023Q3"}}]
      }
      
  3. 權限預檢:驗證用戶是否有權調用指定工具
階段2:安全攔截(4-5步)
  1. 操作確認:向用戶展示即將執行的操作
    [系統提示] 將執行: 
    1. 在CRM系統篩選"華北"區域數據 
    2. 匯總2023年第三季度銷售額
    確認執行?(Y/N)
    
  2. 用戶授權:獲得明確授權后才繼續
階段3:協議執行(6-11步)
  1. 協議封裝:Agent生成MCP請求
    mcp_request = {"tool_id": "crm_api","parameters": {"action": "get_sales", "filters": {...}}
    }
    
  2. 服務路由:MCP Client通過服務發現定位目標系統
  3. 協議轉換:將MCP請求轉換為目標API格式
    # 轉換示例(CRM系統適配器)
    def adapt_to_crm(mcp_req):return {"endpoint": "/v1/sales/query","body": {"filter": mcp_req["parameters"]["filters"]}}
    
  4. 執行監控:記錄請求耗時、成功率等指標
  5. 異常處理
    • 重試機制:對超時請求自動重試2次
    • 熔斷保護:失敗率超閾值時暫停調用
階段4:結果生成(12-14步)
  1. 數據增強:LLM對原始數據加工
    # 示例:生成可視化建議
    if result["data_type"] == "sales_report":return llm_generate("將數據轉為折線圖代碼")
    
  2. 審計日志:記錄完整操作軌跡
    [審計日志] 用戶U123 執行CRM查詢 → 結果大小1024行 → 生成圖表
    
  3. 交付輸出:最終結果返回用戶界面

企業級關鍵技術實現

1. 混合知識引擎
  • 三路數據融合
    def query_knowledge(question):# 并行查詢vector_result = vector_db.semantic_search(question) graph_result = neo4j.query(f"MATCH (n)-[r]->(m) WHERE n.name CONTAINS '{question}' RETURN n,r,m")sql_result = db.execute(llm_to_sql(question))# 結果融合算法return FusionEngine.merge(sources=[vector_result, graph_result, sql_result],weights=[0.4, 0.3, 0.3]  # 可配置權重)
    
2. 動態Agent編排
  • 工作流引擎
    class WorkflowEngine:def __init__(self, dag):self.dag = dag  # 有向無環圖def run(self, inputs):for node in topological_sort(self.dag):if node.type == "TOOL":outputs = execute_tool(node.tool_id, inputs)elif node.type == "LLM":outputs = llm_process(node.prompt, inputs)inputs = outputs  # 傳遞中間結果return outputs
    
3. 安全控制體系
層級技術方案實現示例
認證JWT + OAuth2.0Authorization: Bearer <token>
授權ABAC(屬性訪問控制)規則引擎校驗用戶部門/數據權限
審計Blockchain日志操作記錄上鏈防止篡改
防護動態污點跟蹤標記敏感數據傳播路徑

生產環境部署建議

1. 性能優化
  • LLM緩存:對重復查詢緩存思維鏈結果
    @cache(ttl=300, key_fn=lambda q: hash(q))
    def get_llm_plan(query):return llm.generate(prompt_template.format(query))
    
  • 連接池:MCP Client維護數據庫/API連接池
2. 高可用設計
  • Agent集群:ZK選主實現故障轉移
  • 流量調度
    upstream agent_nodes {server 10.0.0.1:8000 weight=5; server 10.0.0.2:8000;check interval=3000 rise=2 fall=3;
    }
    
3. 演進機制
  • 持續訓練
    def online_learning(feedback):# 收集負樣本if feedback.rating < 3:save_training_data(feedback.query, feedback.expected)# 每周微調if time.now().weekday() == 0:retrain_model(training_data)
    

典型問題解決方案

問題:工具調用沖突
  • 解決方案:樂觀鎖+事務補償
    def execute_transaction(steps):try:with transaction():for step in steps:tool.lock(resource_id)result = tool.execute(step)tool.unlock(resource_id)except ConflictError:# 補償機制for step in reversed(completed_steps):tool.compensate(step)
    
問題:長流程中斷
  • 解決方案:狀態持久化
    class StateManager:def save_state(self, agent):redis.set(f"agent:{agent.id}", pickle.dumps(agent.working_memory))def recover_state(self, agent_id):return pickle.loads(redis.get(f"agent:{agent_id}"))
    

MCP+LLM+Agent架構本質是將自然語言編譯為系統API調用的技術棧,其核心價值在于:

  1. 統一協議層:通過MCP消除N×M集成復雜度
  2. 動態編排器:Agent實現跨系統工作流自動化
  3. 持續進化力:在線學習機制使系統越用越智能

企業落地建議:從客服工單處理、IT運維等標準化場景切入,逐步構建企業級AI Agent中臺。參考技術棧:LangChain(Agent框架)+ FastAPI(MCP服務)+ Weaviate(向量庫)。

核心問題:Prompt注入攻擊

  • 是什么? 攻擊者把惡意指令藏在看起來正常的輸入(如用戶提問、網頁內容、上傳文件)里,騙AI去執行不該做的事情(比如刪除文件、泄露數據、發垃圾郵件)。
  • 為什么頭疼? AI被訓練成“聽話”的助手,很難分辨哪些是用戶真需求,哪些是藏起來的壞指令。特別是當AI有權限操作外部工具(執行代碼、訪問網絡、管理設備)時,風險更大。
  • 目標: 讓AI做壞事,或者讓它“罷工”。

核心結論:沒有絕對安全,但可以大大加強防御!

想做一個對所有Prompt注入都免疫的AI幾乎不可能(因為它總要理解文字)。更實際的辦法是改變AI系統的設計架構,限制它的能力,即使被“忽悠”了,也干不成壞事或壞事影響有限。

六種“安全設計模式”詳解(就像給AI建安全屋):

  1. 行動選擇器模式:

    • 核心: 一次只做一件事,不看結果反饋。
    • 怎么防注入: AI收到指令(可能含惡意指令),決定下一步行動(比如“搜索天氣”)。系統執行這個行動(比如顯示搜索結果),但行動結果不給AI看! AI決定下一個行動時,只看最初指令和內部狀態,不看那些可能藏著壞指令的結果。
    • 比喻: 指揮官(AI)下命令“偵察A區”,偵察兵(系統)去了,回來報告。但指揮官不看報告內容,只根據最初任務決定下個命令是“進攻”還是“撤退”。報告里就算寫著“叛變吧!”,指揮官也看不見。
    • 適用: 簡單任務,不需要根據結果做復雜決策。
  2. 計劃-執行模式:

    • 核心: 先列計劃表,然后死板執行。
    • 怎么防注入: AI先根據任務,制定一個完整的、多步驟的計劃(比如:1. 搜索科技新聞;2. 閱讀結果;3. 寫總結)。計劃一旦定好,系統就嚴格按照計劃步驟執行。執行過程中產生的數據(如網頁內容)可能含壞指令,但不會送回AI去修改計劃
    • 比喻: 指揮官(AI)戰前制定好作戰計劃書(搜索->閱讀->總結)。士兵(系統)拿到計劃書就嚴格執行。打到一半發現敵人陣地上有標語“投降吧!”,但士兵只按計劃書行動,不會因此改變計劃去投降。
    • 適用: 多步驟任務,但任務流程相對固定,不需要中途靈活調整計劃。
  3. LLM Map-Reduce模式:

    • 核心: 分工協作,讓“危險”AI干安全的活兒。
    • 怎么防注入: 系統有兩個AI:
      • 協調者(主AI): 負責分解任務、分派工作、匯總結果。它不接觸原始危險輸入。
      • 工作者(子AI): 負責處理可能含壞指令的輸入(如用戶文件),但能力被嚴格限制,只能做特定安全操作(如按固定格式提取信息)。它們無法執行壞指令要求的危險操作。
    • 比喻: 老板(協調者)讓一群實習生(工作者)從一堆匿名信(危險輸入)里只抄寫信封上的地址(安全任務)。實習生只能抄地址,無法執行信里寫的“燒掉辦公室”這種指令。老板只收集整理實習生抄好的地址(安全結果)。
    • 適用: 處理大量不可信內容(如用戶上傳文件、評論)進行信息提取、分類等安全操作。
  4. 雙重LLM模式:

    • 核心: “翻譯官”+“執行官”,危險輸入不直接給“執行官”。
    • 怎么防注入: 系統有兩個AI:
      • 隔離LLM: 負責處理原始用戶輸入/外部內容(可能含壞指令)。它能力受限,不直接執行操作,只把輸入翻譯成安全符號(如 INTENT_開燈, LOCATION_客廳)。
      • 特權LLM: 只接收隔離LLM翻譯好的安全符號,并據此決定和執行操作(如開燈)。它從不接觸危險的原始輸入。
    • 比喻: 你對外交官(特權LLM)說:“客廳好暗,開燈吧”(可能被竊聽成“發射導彈”)。你的翻譯(隔離LLM)只告訴外交官:“用戶想開客廳燈”(安全符號)。外交官根據這個開燈。竊聽者喊的“發射導彈!”不會被翻譯成有效指令。
    • 適用: 需要理解用戶意圖并執行敏感操作(如智能家居、賬戶管理),尤其是語音、自然語言交互場景。
  5. 代碼生成-執行模式:

    • 核心: AI寫“安全劇本”,“演員”在“安全屋”表演。
    • 怎么防注入: 一個受保護的AI(主智能體)根據任務,編寫一段“安全代碼”(用特定、受限的語言寫成)。這段代碼定義了操作流程。代碼在一個隔離的沙箱環境中執行。主AI不執行用戶指令,只負責生成代碼和接收執行后的結構化結果
    • 比喻: 編劇(主AI)寫了個劇本(安全代碼),規定演員(沙箱)只能做“拿起A道具”、“念B臺詞”等安全動作。演員在封閉舞臺(沙箱)嚴格按劇本表演。用戶即使喊“把舞臺炸了!”,劇本里沒這動作,演員就不會做。
    • 適用: 自動化流程、數據處理等需要執行多個工具操作的任務,對安全性要求極高。
  6. 上下文最小化模式:

    • 核心: 給AI“喂飯”要少而精,別啥都給它看。
    • 怎么防注入: 在把信息(對話歷史、文檔、搜索結果)交給AI做決策參考前,先過濾、裁剪或總結,只留下當前任務絕對必需的信息,刪除無關或可能有害的部分。
    • 比喻: 不讓廚師(AI)直接進亂糟糟的倉庫(原始上下文),而是由助手先按訂單(當前任務)挑出需要的幾種食材(最小化上下文),洗干凈切好再交給廚師。倉庫里藏的“毒蘑菇”(惡意指令)很可能就被助手剔除了。
    • 適用: 通用策略,可與其他模式結合使用。尤其適用于基于長對話歷史或多文檔進行響應的場景。

如何選擇?

  • 沒有萬能藥: 每種模式各有優缺點和適用場景,需要根據你的AI具體做什么、安全要求多高來選擇。
  • 核心思想一致:
    • 隔離危險: 不讓AI直接接觸可能藏有惡意指令的原始文本。
    • 限制能力: 讓處理危險輸入的組件只能做安全的、受限的操作。
    • 結構化交互: 使用代碼、符號、固定格式等結構化方式傳遞意圖和結果,避免依賴自由文本解析。
    • 控制信息流: 精心設計哪些信息在哪個階段被哪個組件看到。
  • 組合使用: 常常需要組合使用多種模式來構建更健壯的系統(例如:上下文最小化 + 計劃-執行模式 + 代碼生成-執行模式)。

把這六種模式想象成給AI系統設計的安全流程和權限管理。核心就是:別讓AI什么都看、什么都信、什么都能做! 通過設計好的“流水線”、“防火墻”和“操作手冊”,讓即使部分環節被“忽悠”了,整個系統也不會出大亂子。選擇哪種“安全屋”設計,取決于你要讓AI干什么活兒。

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

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

相關文章

NumPy玩轉數據科學

本文在創作過程中借助 AI 工具輔助資料整理與內容優化。圖片來源網絡。 文章目錄 一、引言二、NumPy 概述2.1 NumPy 的定義與發展2.2 NumPy 的重要性 三、NumPy 的多維數組支持3.1 多維數組的概念3.2 多維數組的創建與操作3.2.1 數組的創建3.2.2 數組的索引和切片3.2.3 數組的運…

【uniapp小程序開發】圖表組件ucharts的使用(入門)

一、插件的安裝 安裝非常簡單&#xff0c;打開uniapp的插件市場&#xff0c;導入到項目中即可 下載地址&#xff1a;https://ext.dcloud.net.cn/plugin?id271 二、開始實踐 先看頁面的效果 頁面中實現了三個基本圖形的展示&#xff1a;折線圖、餅圖和柱狀圖。 上圖左一&a…

APISIX+etcd高可用集群部署方案詳解

#作者&#xff1a;任少近 文章目錄 一、背景二、部署etcd1、etcd的svc部署yaml2、Etcd 服務定義說明3、etcd的statefulset部署yaml4、Etcd 狀態集&#xff08;StatefulSet&#xff09;配置說明5、查看集群狀態 三、部署apisix的deployment部署1、apisix部署yaml文件2、APISIX …

Excel常用公式大全

資源寶整理分享&#xff1a;https://www.httple.net Excel常用公式大全可以幫助用戶提高工作效率&#xff0c;掌握常用的Excel公式&#xff0c;讓數據處理和計算工作更加便捷高效。了解公式學習方法、用途&#xff0c;不再死記硬背&#xff0c;拒絕漫無目的。 命令用途注釋說…

什么是Seata?

深入解析Seata&#xff1a;分布式事務的終極解決方案 什么是Seata&#xff1f; Seata&#xff08;Simple Extensible Autonomous Transaction Architecture&#xff09;是一款開源的分布式事務解決方案&#xff0c;由阿里巴巴中間件團隊于2019年1月發起并開源&#xff08;最初…

【系統規劃與管理師第二版】1.3 新一代信息技術及發展

一、物聯網 物聯網&#xff08;IoT&#xff09;是指通過信息傳感設備&#xff0c;按約定的協議將任何物品與互聯網相連接&#xff0c;進行信息交換和通信&#xff0c;以實現智能化識別、定位、跟蹤、監控和管理的網絡。物聯網主要解決物品與物品&#xff08;T2T&#xff09;、人…

在Spring Boot中自定義JSON返回日期格式的指南

在開發Spring Boot應用時&#xff0c;很多時候需要在返回的JSON數據中以特定格式顯示日期和時間。例如&#xff0c;使用LocalDateTime、Date等類型的字段時&#xff0c;默認的序列化格式可能不是你期望的路徑。本文將介紹如何在Spring Boot中實現控制返回JSON數據的日期格式&am…

【大數據高并發核心場景實戰】 - 數據持久化之冷熱分離

大數據高并發核心場景實戰 - 數據持久化之冷熱分離 當云計算平臺的業務后臺處理工單突然接入客服系統的請求洪流&#xff0c;每日新增10萬工單&#xff0c;3000萬主表1.5億明細表的數據庫開始呻吟——是時候請出「冷熱分離」這劑退燒藥了&#xff01; 一、業務場景&#xff1a;…

【AI Study】第四天,Pandas(6)- 性能優化

文章概要 本文詳細介紹 Pandas 的性能優化技術&#xff0c;包括&#xff1a; 內存優化計算優化大數據處理實際應用示例 內存優化 數據類型優化 # 查看數據類型 df.dtypes# 查看內存使用情況 df.memory_usage(deepTrue)# 優化數值類型 # 將 float64 轉換為 float32 df[floa…

c++系列之智能指針的使用

&#x1f497; &#x1f497; 博客:小怡同學 &#x1f497; &#x1f497; 個人簡介:編程小萌新 &#x1f497; &#x1f497; 如果博客對大家有用的話&#xff0c;請點贊關注再收藏 &#x1f31e; 智能指針的使用及原理 AII&#xff08;Resource Acquisition Is Initializatio…

知識蒸餾(Knowledge Distillation, KD)

知識蒸餾&#xff08;Knowledge Distillation, KD&#xff09;是一種模型壓縮與知識遷移技術&#xff0c;通過讓小型學生模型&#xff08;Student&#xff09;模仿大型教師模型&#xff08;Teacher&#xff09;的行為&#xff08;如輸出概率分布或中間特征表示&#xff09;&…

chatGPT 會擴大失業潮嗎?

擊上方關注 “終端研發部” 設為“星標”&#xff0c;和你一起掌握更多數據庫知識 對于部分人而言&#xff0c;失業是必然趨勢。 這不&#xff0c;身后的一測試大哥&#xff0c;自從公司解散之后&#xff0c;已經在家待業半年了。。。 自打OpenAI推出了chatGPT3.0之后&#xff…

FPGA基礎 -- Verilog行為級建模之時序控制

Verilog 行為級建模&#xff08;Behavioral Modeling&#xff09;中“時序控制”機制的系統化由淺入深培訓內容&#xff0c;適用于初學者到進階 FPGA 設計工程師的學習路徑。 &#x1f3af; 一、行為級建模的定位 行為級建模&#xff08;Behavioral Modeling&#xff09;是 Ve…

設計模式精講 Day 7:橋接模式(Bridge Pattern)

【設計模式精講 Day 7】橋接模式&#xff08;Bridge Pattern&#xff09; 文章簡述 在軟件系統中&#xff0c;類的繼承關系往往會導致類爆炸&#xff0c;尤其是在需要組合多種功能或行為時。橋接模式&#xff08;Bridge Pattern&#xff09;通過將抽象部分與其實現部分分離&am…

Apipost 簽約銳捷網絡:AI賦能,共推 ICT 領域 API 生態智能化升級

日前&#xff0c;北京北極狐信息科技有限公司&#xff08;簡稱 “北極狐科技”&#xff09;與銳捷網絡股份有限公司&#xff08;簡稱 “銳捷網絡”&#xff09;正式簽署合作協議&#xff0c;雙方將聚焦 ICT 基礎設施及解決方案領域&#xff0c;圍繞 API 全鏈路管理與智能化研發…

RK3568筆記八十三:RTMP推流H264和PCM

若該文為原創文章,轉載請注明原文出處。 前面有通過勇哥,實現了RTMP推流,但一直想加上音頻,所以經過測試,寫了一個demo, ffmpeg是使用ubuntu下安裝測試的。 安裝參考:Ubuntu20.4下x264、x265、fdk-aac和FFmpeg4.3源碼編譯安裝_ubuntu安裝libx264-CSDN博客 記錄:實現從…

產業園智慧化升級中 DDC 樓宇自控系統的集成應用優勢:多業態協同與能源可視化管控?

摘要? 在產業園智慧化升級浪潮中&#xff0c;直接數字控制&#xff08;DDC&#xff09;系統憑借強大的集成能力&#xff0c;成為實現多業態協同與能源可視化管控的核心技術。本文深入剖析 DDC 系統在整合園區多元業態、優化能源管理方面的獨特優勢&#xff0c;通過系統集成打…

Vue 3瀑布流組件實現詳解 - 圖片展示方案

引言&#xff1a;瀑布流布局的魅力與應用場景 在當今富媒體內容主導的網絡環境中&#xff0c;瀑布流布局已成為展示圖片商品等內容的流行方式。它通過動態布局算法在有限空間內最大化內容展示&#xff0c;提供視覺連續性和流暢瀏覽體驗。本文將深入探討如何使用Vue 3實現一個功…

如何確保郵件內容符合反垃圾郵件規范?

一、遵守相關法規 美國《CAN-SPAM法案》規定&#xff0c;郵件頭信息必須真實準確&#xff0c;要標明廣告性質、提供有效地址&#xff0c;并在 10 個工作日內響應退訂請求。 歐盟《通用數據保護條例》&#xff08;GDPR&#xff09;強調獲得用戶明確同意&#xff0c;數據使用要…