99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Rust重寫AI Agent運(yùn)行時(shí):32MB單體二進(jìn)制與并發(fā)設(shè)計(jì)

Rust重寫AI Agent運(yùn)行時(shí):32MB單體二進(jìn)制與并發(fā)設(shè)計(jì) 32MB的單個(gè)可執(zhí)行文件放到Linux服務(wù)器上就能跑一個(gè)完整的AI Agent運(yùn)行時(shí)這個(gè)項(xiàng)目叫OpenFang。我最初只是想驗(yàn)證一件事用Rust把AI Agent底層邏輯重寫一遍能不能換來比Python版本更可靠的并發(fā)、更小的分發(fā)體積、更可控的系統(tǒng)邊界?,F(xiàn)在這個(gè)實(shí)驗(yàn)已經(jīng)跑通我把過程中的設(shè)計(jì)取舍、32MB是怎么來的、哪些坑差點(diǎn)讓我放棄都整理在下面。如果你是做Agent開發(fā)或者正準(zhǔn)備把Agent搬進(jìn)邊緣設(shè)備建議把這篇看完。1. 解開OpenFang的出發(fā)點(diǎn)AI Agent底層到底卡在哪1.1 Python原型的好與痛過去兩年AI Agent框架基本都長(zhǎng)在Python生態(tài)里。好處不用懷疑模型SDK最全Jupyter里改兩行就能跑通一個(gè)能調(diào)用工具的AgentLangChain、LangGraph這類庫(kù)把多輪記憶、工具調(diào)用、ReAct循環(huán)都封裝好了做demo效率極高。我自己最早的原型也是Python一個(gè)晚上就能接好LLM和三個(gè)工具。但把Agent從demo推向生產(chǎn)時(shí)幾堵墻就會(huì)冒出來。第一是并發(fā)模型。Agent循環(huán)里大量時(shí)間都在等外部IO等模型返回、等工具響應(yīng)、等網(wǎng)絡(luò)請(qǐng)求。Python有asyncio但一旦某個(gè)第三方SDK是同步阻塞的實(shí)現(xiàn)整個(gè)事件循環(huán)都會(huì)被拖住。而真正要跑多Agent實(shí)例時(shí)全局解釋器鎖又讓多核CPU利用率頂不上來。你可以開多個(gè)進(jìn)程但進(jìn)程間通信、狀態(tài)同步又變成新的噩夢(mèng)。第二是分發(fā)體積。一個(gè)Python服務(wù)光依賴加起來動(dòng)輒幾百M(fèi)B到1GB。部署到容器里還勉強(qiáng)能忍放到邊緣網(wǎng)關(guān)、ARM開發(fā)板、工業(yè)控制器上就很痛苦裝環(huán)境都費(fèi)勁。更別說冷啟動(dòng)要import幾十個(gè)包3秒起步是常態(tài)。第三是運(yùn)行時(shí)邊界。Python項(xiàng)目里Agent可以調(diào)用任意函數(shù)工具列表往往就是一個(gè)閉包集合。線上Agent跑起來之后你很難回答“這個(gè)Agent到底能訪問什么、不能訪問什么”。沒有白名單、沒有權(quán)限標(biāo)記、沒有審計(jì)日志。這不像生產(chǎn)系統(tǒng)更像一個(gè)實(shí)驗(yàn)室玩具。Rust重寫OpenFang不是為了“干掉Python”而是想給Agent造一個(gè)穩(wěn)定內(nèi)核。外圍的模型SDK、工具插件仍然可以保持生態(tài)多樣性但核心循環(huán)、調(diào)度、通信必須由一種能控制內(nèi)存和并發(fā)邊界的語言來扛。Python適合快速試錯(cuò)Rust適合做長(zhǎng)期運(yùn)行的底層設(shè)施。1.2 Agent OS不是營(yíng)銷詞是內(nèi)核級(jí)需求“Agent OS”這個(gè)詞很容易被當(dāng)成營(yíng)銷噱頭但在OpenFang里它是實(shí)際的架構(gòu)目標(biāo)。我的理解是這樣的把LLM看成CPU每次推理是一道指令工具看成外圍設(shè)備文件系統(tǒng)、數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)端口都通過驅(qū)動(dòng)暴露記憶是內(nèi)存Agent是進(jìn)程。Agent OS就是那個(gè)能統(tǒng)一調(diào)度這些東西的內(nèi)核。這個(gè)類比不是文字游戲。它意味著幾個(gè)硬性要求多Agent并發(fā)時(shí)上下文不能串工具調(diào)用要有權(quán)限邊界任務(wù)要能暫停、恢復(fù)、超時(shí)取消模型API不穩(wěn)定時(shí)系統(tǒng)要能降級(jí)而不是整體崩潰。這些東西普通的Web應(yīng)用架構(gòu)很少考慮。你寫一個(gè)FastAPI接口每個(gè)請(qǐng)求進(jìn)來調(diào)一次LLM返回結(jié)果就完事了每個(gè)請(qǐng)求之間沒有狀態(tài)糾纏。但Agent不一樣一個(gè)Agent實(shí)例是一個(gè)有記憶、有目標(biāo)、會(huì)調(diào)用外部系統(tǒng)的長(zhǎng)期運(yùn)行實(shí)體它需要一個(gè)操作系統(tǒng)級(jí)別的東西來管理生命周期。所以O(shè)penFang最核心的驗(yàn)證點(diǎn)并不是“能不能跑通一次Agent調(diào)用”而是“同時(shí)管理幾百個(gè)Agent實(shí)例讓它們不互相踩踏還能在某個(gè)Agent卡死時(shí)把資源及時(shí)收回來”。這個(gè)目標(biāo)直接決定了語言選型。Rust沒有GC暫停不會(huì)被某個(gè)Agent的異常拖住整條進(jìn)程所有權(quán)模型能保證數(shù)據(jù)在Agent之間傳遞時(shí)不發(fā)生隱式共享異步運(yùn)行時(shí)tokio天生適合處理大量網(wǎng)絡(luò)等待。1.3 32MB單體二進(jìn)制的逆襲32MB這個(gè)數(shù)字是怎么來的不是刻意壓出來的而是Rust靜態(tài)鏈接所有依賴后的自然結(jié)果。OpenFang發(fā)布的是一個(gè)單體可執(zhí)行文件不需要解釋器不需要pip install不需要虛擬環(huán)境只要底層是Linux x86_64或者ARM64拷過去就能跑。這個(gè)特性對(duì)Agent分發(fā)意義極大。我對(duì)比過一個(gè)非常常見的Python Agent服務(wù)FastAPI LangChain HTTPX 模型SDK部署到Docker里鏡像大小輕松超過600MB。而OpenFang 32MB同樣包含HTP客戶端、TLS、序列化、異步運(yùn)行時(shí)、Agent循環(huán)、工具注冊(cè)表。體積小帶來的連鎖好處是啟動(dòng)速度快。實(shí)測(cè)啟動(dòng)到接收第一個(gè)任務(wù)OpenFang大概0.3秒Python項(xiàng)目冷啟動(dòng)普遍2到3秒。邊緣設(shè)備上、容器頻繁伸縮的場(chǎng)景里這個(gè)差距非常明顯。32MB單體二進(jìn)制還有一個(gè)容易被忽略的價(jià)值依賴審計(jì)。攻擊面變得極其清晰一個(gè)文件里有什么、符號(hào)表里能看出哪些庫(kù)用工具一分析就完事。Python那個(gè)幾百M(fèi)B的環(huán)境第三方依賴層層嵌套出了安全問題你都未必排查得清楚。所以單體二進(jìn)制不是Geek趣味是運(yùn)營(yíng)和安全上的實(shí)打?qū)嵤找妗?. OpenFang核心設(shè)計(jì)拆解Agent循環(huán)、工具調(diào)用與并發(fā)模型2.1 狀態(tài)機(jī)驅(qū)動(dòng)的Agent執(zhí)行循環(huán)Agent的執(zhí)行過程天然是一個(gè)狀態(tài)機(jī)剛開始空閑等到用戶消息進(jìn)入進(jìn)入等待模型輸出的狀態(tài)模型返回工具調(diào)用后進(jìn)入執(zhí)行工具的狀態(tài)工具結(jié)果回到模型模型再產(chǎn)出最終回復(fù)。這個(gè)循環(huán)如果用while true加布爾標(biāo)志位去寫短期能跑但只要加入暫停、恢復(fù)、手動(dòng)注入消息、定時(shí)任務(wù)代碼就會(huì)迅速變成意大利面條。OpenFang的設(shè)計(jì)是把Agent狀態(tài)定義成顯式的枚舉enum AgentState { Idle, WaitingModel { request: ModelRequest }, RunningTool { call: ToolCall }, Yielded { output: AgentOutput }, }主循環(huán)通過tokio::select!同時(shí)監(jiān)聽?zhēng)最愂录脩舻妮斎胂?、工具?zhí)行結(jié)果、超時(shí)信號(hào)、系統(tǒng)控制指令。每次收到事件就把狀態(tài)轉(zhuǎn)移到一個(gè)確定值。這樣做的好處是每個(gè)狀態(tài)之間的轉(zhuǎn)換路徑都是明確的不會(huì)出現(xiàn)“變量在某個(gè)分支沒更新”這種隱藏Bug。一個(gè)關(guān)鍵紀(jì)律是任何可能阻塞的地方都必須用await。工具調(diào)用如果是同步阻塞的就丟到spawn_blocking里模型請(qǐng)求本身就是異步的用timeout包住外部事件通過channel進(jìn)入不能直接共享狀態(tài)。這樣Agent循環(huán)即使在非常高的并發(fā)下也不會(huì)因?yàn)槟硞€(gè)工具調(diào)用的意外等待而停滯。實(shí)際上我在壓測(cè)里看到這個(gè)模型下每個(gè)Agent任務(wù)都可以被安全地取消超時(shí)后不會(huì)留下懸掛狀態(tài)。2.2 把工具調(diào)用做成系統(tǒng)調(diào)用很多人寫Agent時(shí)工具就是一個(gè)可以直接執(zhí)行的函數(shù)閉包模型給出參數(shù)JSON框架幫著調(diào)用。這種模式方便但沒有任何邊界。一個(gè)被提示注入攻擊誘導(dǎo)的Agent可能去訪問它本不該碰的文件或接口。OpenFang采用了類似操作系統(tǒng)的系統(tǒng)調(diào)用設(shè)計(jì)Agent進(jìn)程不直接訪問外部資源而是向內(nèi)核發(fā)起請(qǐng)求由內(nèi)核校驗(yàn)后執(zhí)行。實(shí)現(xiàn)上每個(gè)工具都要實(shí)現(xiàn)一個(gè)Trait#[async_trait] pub trait Tool: Send Sync { fn name(self) - str; async fn run(self, args: serde_json::Value) - Resultserde_json::Value, ToolError; }所有工具實(shí)例注冊(cè)到一個(gè)Registry里。Agent只能看到白名單之內(nèi)的工具參數(shù)必須通過serde_json反序列化并做合法性校驗(yàn)校驗(yàn)失敗會(huì)返回ToolError給模型而不是直接崩潰。每個(gè)工具可以帶權(quán)限標(biāo)記比如只讀、只允許訪問某個(gè)域名、只允許讀取某個(gè)目錄。工具之間不能互相訪問內(nèi)部對(duì)象只能通過返回值傳遞數(shù)據(jù)。這就在模型、Agent和宿主資源之間劃出了一條清晰邊界。這個(gè)設(shè)計(jì)在實(shí)戰(zhàn)中救了我很多次。有一次模型因?yàn)樯舷挛谋蛔⑷肓艘欢螑阂庵噶钤噲D讓Agent去調(diào)用一個(gè)內(nèi)部文件刪除工具。工具白名單里根本沒有這個(gè)工具所以請(qǐng)求被Registry直接拒絕。這件事讓我確信Agent OS里工具邊界和安全模型必須一開始就進(jìn)架構(gòu)不能等事故再補(bǔ)。2.3 用Actor模型管理Agent并發(fā)與內(nèi)存安全并發(fā)控制是Rust里最容易被新手寫砸的部分。我最初的嘗試是把Agent狀態(tài)包在ArcMutex 里共享然后讓每個(gè)請(qǐng)求鎖住再改狀態(tài)。并發(fā)一高就能看到問題鎖競(jìng)爭(zhēng)嚴(yán)重而且在async代碼里不小心持鎖跨await整個(gè)tokio工作線程都可能被阻塞。OpenFang最終采用的是Actor模型。每個(gè)Agent實(shí)例獨(dú)占一個(gè)tokio task它自己擁有完整的內(nèi)部狀態(tài)外部世界通過mpsc channel給它發(fā)消息消息就三種用戶消息、工具結(jié)果、系統(tǒng)控制。Agent內(nèi)部所有數(shù)據(jù)都不需要加鎖因?yàn)樗菃嗡袡?quán)跨task傳遞時(shí)就轉(zhuǎn)移所有權(quán)??鏏gent共享的記憶或配置不直接共享內(nèi)存而是通過獨(dú)立的存儲(chǔ)服務(wù)用channel或RPC訪問。這個(gè)模型帶來的直接好處是內(nèi)存安全由Rust所有權(quán)和類型系統(tǒng)保證而不是靠開發(fā)者的鎖紀(jì)律。每個(gè)Agent結(jié)束后它的所有狀態(tài)、通道、緩沖區(qū)會(huì)隨著task退出被立即回收。沒有GC停頓意味著你可以在同一臺(tái)低配機(jī)器上開幾百個(gè)輕量Agent。我實(shí)測(cè)過在一臺(tái)1GB內(nèi)存的ARM盒子上同時(shí)跑約200個(gè)只做輕量決策的Agent實(shí)例內(nèi)存沒有爆發(fā)瓶頸反而在外部LLM服務(wù)的響應(yīng)速度上。為了控制消息積壓所有Agent的收件箱都用有界mpsc channel滿了之后send方會(huì)等待或者超時(shí)這就是背壓。如果使用無界channel某個(gè)Agent處理慢一點(diǎn)消息就會(huì)無限堆積最終把內(nèi)存打爆。這個(gè)細(xì)節(jié)是壓測(cè)時(shí)發(fā)現(xiàn)的后面在踩坑部分還會(huì)展開。3. 從零到32MB的實(shí)操記錄3.1 最小Agent核心的實(shí)現(xiàn)步驟如果你想在自己的項(xiàng)目里復(fù)刻這套邏輯不需要復(fù)制OpenFang全部代碼先按下面步驟搭一個(gè)最小內(nèi)核跑通后再擴(kuò)展。第一步創(chuàng)建項(xiàng)目cargo new openfang --bin依賴方面加上tokio、serde_json、tracing、reqwest或者一個(gè)更輕量的HTTP客戶端后面體積優(yōu)化會(huì)說到。第二步定義核心類型。AgentConfig包含模型配置、上下文窗口上限、工具白名單AgentMessage包含普通的用戶消息、工具結(jié)果消息和控制消息。這些類型都通過serde做序列化方便后續(xù)做快照和恢復(fù)。第三步實(shí)現(xiàn)Agent主循環(huán)。每個(gè)Agent從inbox channel里收消息根據(jù)當(dāng)前狀態(tài)處理pub async fn run(mut self) - Result(), AgentError { while let Some(msg) self.inbox.recv().await { match msg { AgentMessage::User(text) { let reply self.process(text).await?; self.outbox.send(reply).await?; } AgentMessage::ToolResult { call_id, result } { self.feed_tool_result(call_id, result).await?; } AgentMessage::Control(cmd) { if self.handle_control(cmd).await? { break; } } } } Ok(()) }注意這里的錯(cuò)誤全部用Result上拋禁止unwrap。生產(chǎn)環(huán)境一旦unwrap一個(gè)空值就能讓整個(gè)Agent進(jìn)程消失。第四步實(shí)現(xiàn)一個(gè)最簡(jiǎn)單的工具比如獲取當(dāng)前時(shí)間或白名單URL的HTTP GET。這步的目的是驗(yàn)證工具注冊(cè)、參數(shù)校驗(yàn)、結(jié)果回傳這條鏈路是否完整。第五步把LLM調(diào)用封裝在trait后面接一個(gè)mock模型或者真實(shí)模型接口跑通第一輪“用戶提問—模型返回工具調(diào)用—工具執(zhí)行—模型匯總”的過程。此時(shí)整個(gè)骨架就是OpenFang最小可運(yùn)行版本。3.2 二進(jìn)制體積控制的四板斧32MB不是天上掉的是Cargo profile配置和依賴管理組合出來的。第一板斧是release profile優(yōu)化[profile.release] opt-level z lto fat codegen-units 1 panic abort strip symbolsopt-level設(shè)為z表示尺寸優(yōu)先lto開fat全程序鏈接能消除大量重復(fù)代碼codegen-units1讓編譯器做更激進(jìn)的跨crate優(yōu)化strip直接去掉符號(hào)表。這幾項(xiàng)合起來能把二進(jìn)制從幾百M(fèi)B壓到幾十MB級(jí)別。優(yōu)化前OpenFang大約203MB優(yōu)化完成后32MB。第二板斧是依賴瘦身。默認(rèn)的reqwest如果開啟native-tls會(huì)把openssl拖進(jìn)來體積和編譯時(shí)間都很難受。改成rustls-tls后依賴顯著變小。如果HTTP請(qǐng)求不頻繁可以干脆用一個(gè)更輕量的客戶端或者自己封裝一個(gè)基于tokio::net的簡(jiǎn)單HTTP客戶端。凡是能用標(biāo)準(zhǔn)庫(kù)或輕量crate替代的重依賴一律替換。第三板斧是關(guān)閉不需要的features。很多crate默認(rèn)打開了一堆你用不到的功能比如serde的derive、tokio的full套件。按需開啟features能減少編譯產(chǎn)物。我的Cargo.toml里tokio只開啟rt-multi-thread、macros、sync、time這幾個(gè)。第四板斧是用工具分析二進(jìn)制。cargo bloat能列出哪些函數(shù)占體積llvm-lines能看到每個(gè)crate展開后有多大。有一次我發(fā)現(xiàn)一個(gè)日志庫(kù)占了6MB換掉之后直接瘦身19%。不要把壓縮體積當(dāng)成一次性動(dòng)作每加一個(gè)新依賴都要看一眼它對(duì)最終文件大小的影響。有一點(diǎn)要提醒panic abort會(huì)讓panic直接終止進(jìn)程如果你依賴catch_unwind去做任務(wù)級(jí)容錯(cuò)這時(shí)候就會(huì)失效。OpenFang的選擇是嚴(yán)禁在業(yè)務(wù)代碼里使用panic所有錯(cuò)誤通過Result傳導(dǎo)。這個(gè)選擇的代價(jià)是開發(fā)紀(jì)律要求高但換來的是更小的二進(jìn)制和更穩(wěn)定的運(yùn)行行為。3.3 模型接口抽象避免鎖死在某個(gè)LLM上Agent OS不能綁定在某一個(gè)模型廠商身上。OpenFang里所有模型接入都走同一個(gè)trait#[async_trait] pub trait ChatModel: Send Sync { async fn chat(self, req: ModelRequest) - ResultModelResponse, ModelError; }適配OpenAI風(fēng)格接口、Claude風(fēng)格接口、本地Ollama接口都只是各自實(shí)現(xiàn)一個(gè)struct。Agent核心不會(huì)直接引用任何SDK只認(rèn)這個(gè)trait。好處是后續(xù)換模型、做模型路由、做A/B測(cè)試都很輕松。適配層里必須處理幾件臟活。第一是超時(shí)模型請(qǐng)求用tokio::time::timeout包住超時(shí)后返回一個(gè)可重試的錯(cuò)誤不能讓Agent循環(huán)無限等待。第二是重試指數(shù)退避加抖動(dòng)避免模型服務(wù)雪崩時(shí)所有Agent同時(shí)重試。第三是上下文管理請(qǐng)求進(jìn)入模型前需要估算token數(shù)超出窗口時(shí)把舊消息壓縮成summary再丟給模型。第四是結(jié)構(gòu)容錯(cuò)模型可能返回非法的工具調(diào)用JSON解析失敗時(shí)要做重試或者讓模型重新生成而不是把異常直接拋出去。這些工作放在適配層而不是Agent核心層是為了讓核心邏輯保持穩(wěn)定。不管模型API怎么變Agent狀態(tài)機(jī)、工具調(diào)度、并發(fā)控制都無須改動(dòng)。這就有點(diǎn)像操作系統(tǒng)對(duì)硬件驅(qū)動(dòng)程序的抽象驅(qū)動(dòng)可以換內(nèi)核不動(dòng)。4. 性能實(shí)測(cè)與踩坑實(shí)錄4.1 同一批任務(wù)下Python與Rust Agent的并發(fā)差距我做了一個(gè)對(duì)照壓測(cè)同一個(gè)Agent任務(wù)流用戶輸入后先調(diào)用一個(gè)工具獲取信息再調(diào)用一次LLM生成總結(jié)總共兩輪工具加一次模型請(qǐng)求。使用mock模型服務(wù)避免外部網(wǎng)絡(luò)波動(dòng)。壓力是5000條用戶消息同時(shí)保持200個(gè)Agent實(shí)例并發(fā)。Python對(duì)照版本用FastAPI加異步Agent框架Rust版本就是OpenFang。結(jié)果差異很大但原因并不神秘。下面是我本地環(huán)境里的數(shù)據(jù)指標(biāo)Python原型OpenFang吞吐量約1200條/分鐘約3100條/分鐘峰值內(nèi)存2.6GB100個(gè)Agent850MB200個(gè)AgentP99時(shí)延1.8秒0.6秒冷啟動(dòng)時(shí)間3.1秒0.3秒Rust沒有全局解釋器鎖tokio可以真正利用多核并行處理Agent任務(wù)。另一個(gè)關(guān)鍵點(diǎn)是工具調(diào)用是否阻塞。Python版本里有個(gè)工具用了同步的HTTP客戶端在高并發(fā)下直接把事件循環(huán)卡出尖峰。OpenFang這邊所有工具都走異步或spawn_blocking工具等待不會(huì)阻塞其他Agent的狀態(tài)推進(jìn)。也要說點(diǎn)中肯的如果Agent的任務(wù)本身是大量CPU密集計(jì)算Rust的優(yōu)勢(shì)反而沒那么突出因?yàn)镻ython可以調(diào)C擴(kuò)展瓶頸還是在調(diào)度模型。但Agent場(chǎng)景絕大多數(shù)時(shí)間都在等待網(wǎng)絡(luò)IORust異步模型可以說剛好擊中了這個(gè)痛點(diǎn)。4.2 最容易翻車的5個(gè)運(yùn)行時(shí)問題這五個(gè)問題不是從文檔里看來的是我在OpenFang的壓測(cè)和試運(yùn)行里一個(gè)個(gè)踩出來的。第一個(gè)是async里用了std::sync::Mutex。Rust新手很容易想在共享狀態(tài)上加Mutex但如果在異步函數(shù)里持鎖跨await可能整個(gè)tokio工作線程被鎖住其他Agent全部卡死。解決方案是改用tokio::sync::Mutex或者更徹底地消除共享鎖改成actor模型。OpenFang最終選了后者因?yàn)殒i越少并發(fā)越穩(wěn)。第二個(gè)是工具調(diào)用沒有超時(shí)。某個(gè)第三方API掛起不返回Agent循環(huán)就一直等時(shí)間一長(zhǎng)積壓的任務(wù)把內(nèi)存拖垮。處理辦法是給每個(gè)工具調(diào)用包一個(gè)timeout超時(shí)后返回ToolError給模型讓它換個(gè)工具或直接給用戶反饋。第三個(gè)是panic abort下的unwrap隱患。release配置開了panicabort一旦某個(gè)unwrap遇到空值整個(gè)進(jìn)程瞬間消失沒有恢復(fù)機(jī)會(huì)。經(jīng)歷過一次之后我給所有Agent內(nèi)部代碼上了嚴(yán)格規(guī)則錯(cuò)誤必須用Result傳遞任何可能失敗的操作都不能unwrap。代碼審查時(shí)看到unwrap基本直接打回。第四個(gè)是上下文無邊界增長(zhǎng)。對(duì)話歷史不裁剪模型窗口遲早爆掉。初期實(shí)現(xiàn)里這個(gè)問題會(huì)直接導(dǎo)致API報(bào)錯(cuò)后來加了滑動(dòng)窗口超閾值時(shí)把舊消息合成一段summary只保留最近N輪。這個(gè)邏輯目前表現(xiàn)穩(wěn)定但summary本身會(huì)增加token消耗需要根據(jù)業(yè)務(wù)場(chǎng)景調(diào)閾值。第五個(gè)是無界channel導(dǎo)致的背壓失效。最開始Agent收件箱用tokio::mpsc::unbounded_channel某個(gè)Agent處理速度慢消息堆積內(nèi)存快速上漲。改回有界channel之后生產(chǎn)方會(huì)在channel滿的時(shí)候阻塞或超時(shí)讓上游主動(dòng)降速整個(gè)系統(tǒng)的內(nèi)存曲線一下子平穩(wěn)了。4.3 后續(xù)路線把Agent OS內(nèi)核繼續(xù)打磨OpenFang目前還只是Agent OS的一個(gè)雛形它有了內(nèi)核的骨架但距離完整的操作系統(tǒng)還有明顯距離。下一步計(jì)劃里優(yōu)先級(jí)最高的是調(diào)度器。目前每個(gè)Agent是一個(gè)獨(dú)立task系統(tǒng)公平輪轉(zhuǎn)但還沒有優(yōu)先級(jí)搶占。我想讓緊急任務(wù)能插隊(duì)低優(yōu)先級(jí)Agent在資源緊張時(shí)被讓出。實(shí)現(xiàn)思路是用一個(gè)調(diào)度隊(duì)列把Agent按優(yōu)先級(jí)分組每次從高到低選取可運(yùn)行任務(wù)。然后是工具權(quán)限的細(xì)粒度化。現(xiàn)在每個(gè)工具身上只有簡(jiǎn)單的只讀或白名單標(biāo)記下一步想做成Capability列表按角色分配類似Linux的權(quán)限模型。Agent運(yùn)行在不同沙箱里通過IPC請(qǐng)求調(diào)用工具所有調(diào)用記錄審計(jì)日志。還有一個(gè)方向是Agent快照和恢復(fù)。既然Agent的狀態(tài)是顯式的理論上可以把它序列化成文件然后遷移到另一臺(tái)機(jī)器繼續(xù)跑。我已經(jīng)在做狀態(tài)序列化的基礎(chǔ)工作數(shù)據(jù)結(jié)構(gòu)用serde都能處理難點(diǎn)在于那些網(wǎng)絡(luò)連接和外部會(huì)話狀態(tài)要怎么重建。這個(gè)問題解決之后Agent才能真正像進(jìn)程一樣被調(diào)度、掛起、遷移。這些都是實(shí)打?qū)嵉墓こ虇栴}不需要畫大餅。先把內(nèi)核打好Agent生態(tài)才能在它上面放心生長(zhǎng)。5. 如果你想復(fù)用這套方案團(tuán)隊(duì)與工具鏈上的建議5.1 先判斷你的Agent是否真的需要Rust重寫不是所有Agent項(xiàng)目都該用Rust。如果你的Agent只是內(nèi)部工具每天調(diào)用量幾百次Python完全夠用重寫反而增加維護(hù)成本。但如果出現(xiàn)下面幾個(gè)信號(hào)就該認(rèn)真考慮Rust或至少把核心調(diào)度模塊用Rust重寫并發(fā)Agent實(shí)例超過幾十個(gè)部署目標(biāo)包含邊緣設(shè)備需要長(zhǎng)時(shí)間無人值守運(yùn)行對(duì)安全邊界有合規(guī)要求發(fā)布物希望做到可審計(jì)的單文件分發(fā)。OpenFang把范圍控制得很小只重寫運(yùn)行時(shí)內(nèi)核不重寫業(yè)務(wù)流程。業(yè)務(wù)流程仍然是配置驅(qū)動(dòng)的你可以在Agent里定義自己的工具和提示詞但是調(diào)度、內(nèi)存、通信這些底座由內(nèi)核提供。這個(gè)劃分讓團(tuán)隊(duì)能漸進(jìn)遷移不需要一夜之間把所有代碼改成Rust。5.2 我推薦的工具鏈與開發(fā)習(xí)慣做這類Rust項(xiàng)目工具鏈其實(shí)很樸素。tokio是異步運(yùn)行時(shí)基礎(chǔ)tracing做日志埋點(diǎn)serde做序列化reqwest配rustls做HTTP客戶端。如果你需要更輕量的HTTP可以用ureq加spawn_blocking或者直接基于tokio::net封裝但后者要自己處理TLS復(fù)雜度會(huì)上來。對(duì)大多數(shù)項(xiàng)目reqwest配rustls是性價(jià)比最高的選擇。開發(fā)習(xí)慣上第一條是絕不在異步代碼里使用阻塞調(diào)用。如果需要同步庫(kù)就放進(jìn)spawn_blocking。第二條是錯(cuò)誤處理要系統(tǒng)化。定義一個(gè)統(tǒng)一的AgentError枚舉所有工具錯(cuò)誤、模型錯(cuò)誤、通道錯(cuò)誤都匯聚到這里上層只處理一個(gè)錯(cuò)誤類型代碼會(huì)清爽很多。第三條是上線前跑一次并發(fā)壓測(cè)至少模擬兩倍預(yù)期負(fù)載重點(diǎn)關(guān)注P99時(shí)延和內(nèi)存曲線。Agent這種長(zhǎng)期運(yùn)行的服務(wù)內(nèi)存泄漏和背壓?jiǎn)栴}往往要壓測(cè)才現(xiàn)形。我在這個(gè)項(xiàng)目里最深的一個(gè)體會(huì)是Rust不會(huì)替你解決架構(gòu)問題但它會(huì)把糟糕的架構(gòu)暴露得更早。如果你用Python寫可能整個(gè)項(xiàng)目跑得像一鍋粥也能上線只是大家默契地不去看并發(fā)。換成Rust后所有權(quán)和類型系統(tǒng)逼著你把Agent狀態(tài)、消息類型、錯(cuò)誤邊界都定義清楚。這個(gè)過程很痛苦但結(jié)果很值。OpenFang的32MB單體二進(jìn)制只是一個(gè)副產(chǎn)品真正值錢的是那套清晰的邊界。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99情色五月天| 影音先锋按摩| a网站免费观看| 色婷婷五月天小说| 久久久久久草黄色片AV在线观看| 五月激情婷婷国产精品久久久久久| 综合网亚洲| 婷婷夜夜夜夜| Av性爱网| 天天操天天日天天爱| 丁香影院五月综合| 日韩精品视频中文字幕| 婷婷97| 亚洲视色| 五月天成人在线播放丁香| 99在线热| 丁香五月婷婷偷拍| 超碰激情五月| 99精品丰满| 啪啪91| 五月综合久久| 成人视频婷婷| 99性感视频| 大香蕉综合| 中文字幕成人日韩| 久9精品视频在线| 超碰人人艹| 色综合日日| 他改变了拜占庭| se.久久视频在线观看| 97五月天| www色色com| 91成人看片| 五月天六月婷婷电影| 亚洲天堂热| 婷婷五月丁香成人| 天天干天天干天天干天天干天天干天天 | 丁香五月天婷婷久久| 久99精品视频| 夜色综合网| 婷婷五月天VI| 综合久久狠狠| 大鸡巴伊人网| 婷婷综合性爱网| 亚洲综合激情五月久久| 99热| 婷婷五月色播天| 国产日比| 热九九精品| 久久综合丁香激情五月| 激情五月开心五月在线视频| 婷婷香香五月| 亚洲激情电影五月天色婷婷丁香一起草 | 伊人在线另类| 人人操人| 99狠狠色| 五月大香蕉| 色噜噜夜夜夜综合网| 正宗黄色毛片| 久久久久久激情| 婷婷娌伦网| 色色丁香五月天社区| 九九热狼人| 久久精品国产精品| 免费无码毛片一区二区A片| 九九热99热| 色综合久久综合中文综合网| 99热这里是精品| 五月色网| av免费在线观看0| 182无码| 在线综合啪| 91av视频| 五月激情综合网| 丁香五月天网站| 激情综合网五月婷婷| 婷婷日在线观看| 五月情四婷婷| 五月激情在线| 丁香五月成人| 五月天婷综合| 人人玩人人橾| 婷婷五月天激情丁香| 天天五月情| 五月丁香婷婷综合网| 精a品a| 色五月丁香在线| 九九久热| 久久激情五月| 色444综合网| 久久婷五月综合| 99热最新| 婷婷十月丁香| 久久精品99| 99操视频| 性按摩玩人妻HD中文字幕| 欧美A片在线视频免费观看| 综合色在线| 亚州第一A片| 日韩中文欧美| 天天做天天爱综合| 五月婷婷性爱| 在线中文亚洲| 99国产性感视频| 亚洲AV中文在线| 中文字幕无码人妻少妇免费视频| www色五月| 成人国产网| 色综合中文| 色播五月丁香婷婷| 五月丁香激情啪啪| 激情五月丁香色色去久久| 5月色亭亭视频| 五月婷婷草| 国产精品VIDEOSSEX久久发布| 97人人操com| 天天日天天添| 色婷婷免费观看| 狠狠婷婷色| 亚洲精品国产setv| 99久久五月婷婷| 国产精产国品一二三在观看| av九九| 亚洲成人人人操| 五月丁香六月婷婷在线小说视频| 婷婷射丁香| 五月丁香六月片| 人妻人人操| 人人草人人爱手机视频看看 | 五月情丁香色| 99热这里只有精品中文字幕| 久草 天堂| 天天激情站| 国产精品人人做人人爽人人添| 狠狠99| 国语精品探花| 岛国在线观看91| 丁香五月网站| 九九热只有精品| 人妻在线网站| 天天狠狠干| 91精品91久久久中77777| 狠狠第四色| 亚洲情a| 风流少妇A片一区二区蜜桃| 婷婷五月丁香花综合| 五月激情丁香| 精品九九九久| 可以免费看AV网站| 国产亚洲99久久精品熟| 人妻精品久久久久久| 激情六月天| 激情五月天色色网| 亚洲色视频| 天天综合 99久久婷婷| 五月激情网站| 五月丁香A片| 人人操超碰| 色色色视频| 五夜婷婷| 包操45分钟网站| 91操网| 五月丁香久久呀| 五月婷婷六月开心| 丁香五月婷婷激情完整版| 1995年关宝慧版蜘蛛女| 丁香影院五月综合| 五月天婷婷在线播放| 九九色video| 99这里只有精品在线观看| 国产这里只有精品| www,五月丁,com| 亚洲亚洲人成综合网络| 色操b| 九九无码AV| 日本五月丁香| txt五月激情四射网综合俺也来了| 五月丁香AV在线| 67194中文在线| 开心五月深爱婷婷| 97热在线精品| 亚洲久久激情| 六月色色婷婷| 婷婷爱五月| 色五月激情网| 久思思久视频| 人人摸人人干| 伊人婷婷大香蕉| 成人 视频免费观看网站| 色吧五月| 婷婷五月天论坛| 91久女| 天天狠狠夜夜狠狠2023| 婷婷五月天成人| 涩涩五月天| 五月丁香激情综合网官网| 五月久久丁香| 色吧婷婷| 亚洲无码成人性爰网| 我淫我色婷婷五月天激情四射| 伊人色综在线| 在线婷婷| 91在线资源| 欧美日韩成人在线网站| 热久久99视频| 色九九综合热99| www.久热| 丁香五月在线观看| 婷婷五月天视| 日韩av网站在线观看| 九九热九九| 婷婷五六日| 91fuliwang| 婷婷亚洲综合| 5月丁香啪啪啪| 五月丁香婷婷久久| 婷婷五月综合免费在线| 二色av| 五月天色婷婷伊人网| 欧洲亚洲免费视频9| 极品人妻XXXXOOOO| 大香蕉久| 天天爽夜爽| 伊人99热| 久久久五月天婷婷成人网| 日本一道久久| 六月婷婷国产| 五月丁香A片| 激情小说色五月| 五月婷婷啪啪综合网| 亚洲精品乱码久久久久久按摩观| 亚洲韩国日产综合AV| 欧美丁香五月| 激情婷婷另类| www.婷婷五月天.com| 99精品无码| 色亚洲激情| 深夜男女福利刺激影院一区| 美女伊人久久| 一本色道久久88加勒比| 久久婷婷亚洲| 五月天婷婷激情小说电影| 大香蕉九九| 97色碰碰公开视频| 天天干天天干天天| av色婷婷| 丁香五月六月综合激情| 五月丁香婷中文字幕| 色色影院黄大片| 色999五月色| 午夜丁香六月婷| 九久9精品| 五月天另类小说| 9九热视频| 大香蕉人人网| 亚州成人综合在线| 激情AV综合| 九九色热| 五月丁香无码| 狠狠干五月天| 99热99热在线| 狠狠狠狠操| 青青草a在线| 激情九月天天天天婷婷| 激情婷婷黄色五月| www.婷婷久久五月天| 99热这里只有精品免费| 91精品婷婷国产综合久久| 色婷婷视频| 亚洲激情网| 久久婷婷亚洲无码一起| 一区二区传媒视频| 9久9久9久女女女九九九一九| 久色网| 伊人久久婷| 99综合网| 99精品视频在线观看| 激情五月丁香激情综合网 | 亚洲第一精品网站| 六月丁香婷婷尤物| 丁香五月婷在线| 看婷婷五月天网| 五月婷激情影院| 色婷婷啪啪| 丁香五月-激情综合| 色欲久久综合| 国产成人精品一区二三区熟女在线| 91丨九色丨东北熟女| 99爱视频| 色综合久久中文| 91婷婷五月天嫩女| 另类激情五月在线视频欧美| 99热这里只有精品1025| 色香蕉影院| 久99久热| 大香网伊人久久综合| 久久综合影院| 国产精品久久..4399| 婷婷综合精品| 婷婷99狠狠| 任你草| 99re思思热久久| 天天狠狠夜夜狠狠2023| 中文精品在| 97碰碰视频| 色99综合色88| 久婷视频| 五月天丁香网站| 婷婷激情视频| 99在线精品视频观看免费下载| 综合在线网| 久久这里面只有精品视频| 久久只有精| 五月婷婷丁香深深爱| 五月六月播婷婷| 婷婷丁香射射| 婷婷六月激情丁香| 狠狠操性爱av| 天天色播| 亚洲六月色| 色色丁香婷婷五月天| 182.t午在线观看| 狠狠久久婷| 色啪综合| 欧美综合在线五月天色婷婷| 五月天啪啪啪| 99热综合| 五月丁香婷婷钟和色图| 久久久9久| WWW.婷婷五月天.COM| 婷婷香蕉| 欧美婷婷五月天综合| 天天天天天天噜| 五月六月丁香激情| 色婷婷免费视频| 色婷五月| 色五月综合网站| 大香蕉娱乐| 92久久| 安息电影在线观看完整版| 99re思思精品在线观看| 久久玖玖综合| 日本欧美成人片AAAA| 五月激情综合网婷婷| 五月婷免费视频| 色九网| 色五月婷婷久久大| 亚洲九区| 丁香婷婷五月激情四射网| 另类在线观看视频| yw.av| www色婷婷com| 深爱激情四射| 99色色| 大战熟女丰满人妻AV| 色综合色色色色色色综合| 五月婷在线影院| 婷婷六月天精品| 色天五月天在线观看视频| 色综合天天综合成人网| 中文字幕无码成人电影| 激情合网婷婷| 大香蕉精品视频| 操B无码视频国语| 天天综合五月| 99re这里只有精品在线观看| 综合色播| 国产综合婷婷| 这里只有精品久| AV在线中文| 色婷婷8| a九九热www| 九九久久99| 色色色婷| 99视频久久久| 五月久久丁香| 99精品国产乱码久久久人妻| 97久久视频| 综合久久五月天| 欧美午夜乱妇午夜福利| 丁香五月六月久久综合| 五月婷婷狠狠干| 婷婷色综合中心站| 五月丁香AV、伊人业余、性色熟妇| www.五月婷婷| 啪啪夜久久| 色久综合天天做视频| 99这里只有精| 久9视频| 五月激情婷婷播播网| 这里只有精品1| 久xxxx| 婷婷丁香五月欧美人| 99热6精品| 日本操片| 久久五月激情| 九热免费视频| 成人网在线视频| 婷婷色网址| 婷婷五月天激情综合| 狠狠干天天内射| 日韩成人免费电影| 久久久www| 五月天国产| 五月丁香亚洲综合网| 五月天色区| 天天干天天拍| 丁香五月-激情综合| 激情五月无码| 成人无码髙潮喷水A片| 色停停香蕉视频| 五月丁香啪啪啪| www.9色色色| 五月婷婷激情综合视频| 超91热| 开心婷婷五月天电影院| 青草青草视频2免费观看| 最新热中文字幕| 激情五月综合网最新| 99ri久久| 狠狠色婷婷| 亚洲小电影在线观看黄999| 激情综合网五月婷婷| 日韩久久日| 天天模,夜夜模夜夜爽| 99re热视频这里只精品| 草婷婷在线| 国产69精品久久久久999小说| 丁香六月色情| 婷婷丁香六月天| 六月丁香婷婷色69| 99情色五月天| 天天操天天插| 九九Av| 99色性爰网络| 久久婷婷亚洲五月天| 久久中文网| 婷婷亚洲在线| 久久日九九| 伊人五月天婷婷| 国产婷婷五月| 91久久久久久| 玖玖婷婷色欲| 五月婷激情| 2017人人操| 激情五月天色色| 丁香六月婷婷综合激情欧美| 日韩av手机在线观看| 国产色五月婷婷| 超碰人人插| 五月亚洲| 丁香六月综合激情| 尤物一区二区| 99资源在线视频| 亚洲丁香五月综合| 色婷婷在线视频观看| 五日激情综合| 丁香蜜臀黄色婷婷五月天| 欧美交换配乱吟粗大25P| 欧美激情xxxXX| 婷婷六月香| 超碰国产在线观看| 久久与婷婷| 久久99久久99www| 亚洲操逼网| 日本美女天天日天天爽| 超碰色人妾| 亚洲色综合| 狠狠狠人妻| 日比网免费国产| 9有码中文| 中文字幕丰满乱孑伦无码专区| 欧美A级成人婬片免费看理论| 五月天网站免费欧美| 色五月色五天色情网| 婷婷丁香无码专区| 久久草大香蕉| 婷婷十月激情综合网| 久久网日本| 最新高清无码专区| 婷婷5月天激情综合| 操逼五月婷婷| 99热精品中文字幕| 99爱在线免费视频| 99热综合在线| 日本在线wwww| 国产暴力强伦轩1区二区小说| 久久婷婷六月综合| 五月丁香直播| 色噜噜狠狠色综| 操草草草| 蜜臀AV在线观看| 欧美 日韩 成人| 丁香花五月天| 亚洲成人网无码| 欧美婷婷综合网| www.色99| 丁香激情久久| 色色色色色色色色色999| 色99在线| 五月天综合久久丁香91| 99碰碰。| 精品亚洲国产成AV人片传媒| 五月丁香| 激情综合五月婷婷丁香| 草做免费在线观看| 日日干日日s| 五月丁香婷婷福利| 色婷网| 美腿丝袜AV天堂网| 五月婷婷久久爱| 婷色五月| 日本人妻伦在线中文字幕 | 色婷婷久久综| 五月婷婷六月丁香首页| 123日本不卡在线| 国产激情久久久| 99热主页日本| 欧美色色色色色色| 蜜桃人妻无码AV天堂三区| 夜夜撸日日骑| 色婷婷狠狠久久综合五月| 五月综合激情久久| 热99精品视频观看| 婷婷欧美激情综合| 五月天无码| 五月丁香另类图片| 性爱网五月天| 伊人激情| 99热九九这里只有精品| 久久久网站| 婷婷爱爱蜜臀天天操| 干一干xxxx| 精品动漫 无码av| 东北熟女高潮99综合99| 操逼视频网址| 超碰中文字幕在线| 五月丁香综合成人社区| 日本天堂免费99| WWW.久久99| 99在线看视频| 99热最新精品| 大香蕉五月婷婷| 九九热免费视频| 六月婷婷激情| 色偷偷综合| 丁香六月婷| 久色视频| 丁香婷婷色色| 欧美性爱一区| 成人午夜无码视频| 农村熟妇高潮精品A片| 国精产品一区一区三区免费视频| 亚洲乱码日产精品BD| 99国产精品久久久久久久久久久| 人妻丰满精品一区二区A片| 免费无码毛片一区二区A片| AA片在线观看视频在线播放 | 欧美精品999| 大香网伊人久久综合| 色色五月天激情| 91丨九色丨国产打屁股| 色五月激情五月| 激情五月婷婷视频| 色欧美日| 久热九九| 亚洲性色XXXXX| 久久人妻www| 丁香婷婷激情五月天无毒不卡蜜桃| 六月丁香激情| 五月天精品| 婷婷婷狠狠| 五月色亭丁香| 日本3级片偷拍网站| 中文字幕丰满人妻无码专区| 亚洲成人高清在线| 婷婷性爱| 色天天综合| 99热这里只有精| 国产精品五月天婷婷| 91无码高清| 六月婷婷综合| 人妻久久久久久久| 亚洲乱码在线观看| 亚洲深喉aV| 99丝袜精品视频网站| 十区AV| 国产日产成人亚洲欧美国产VA| 婷婷丁香激情五月| 在线天堂9| 操碰97| 日韩三级视频一区二区| 欧美激情五月天婷婷| 五月天婷婷高清无码| 亚洲综合另类| 国产乱人偷精品人妻A片| 9久9久| 日日日,com| 深爱激情网五月天| 亚洲五月天婷婷| 色播色丁香五月| 婷婷五月色| 亚洲婷婷成人五月天| 激情综合色图| 百度一下国产精品A| 99这里只有精品视频免费| 国产资源91在线| 久久久网站| 五月丁香网站| 亚洲精品视频在线播放| 噜噜噜噜噜色| 色综合色色| 天堂在线9| 久久这里99| 丁香婷婷大香蕉| 国模狼狼| 黄色aaaaa| 五月丁香六月婷婷激情视频在线观看免费 | 久热黄色| 播四月婷婷六月丁香| 欧美这里只有精品| 91人人操| 丁香五月婷婷手机| 中文字幕有多少字| 天天做天天爱天天爽夜夜揉| 亚洲成人无码网站| 在线超碰免费| 久久99热这里只有精品| 蜘蛛女侠2003满天星免费观看| 99精品视频在线6| 久久五月天色婷婷| 天天摸天天舔| 九九无毛| 操操操操操电影网| 极品少妇XXXX精品少妇偷拍| 九九热这里只有精品556| 99热这里只有精品8| www免费在线视频| 激情色中文| 91久久婷婷| 玖玖色资源| 久久精品亚洲一级牲爱综合 | 五月丁查人人| 久久久久久久久月丁| 激情宗合哪里能看| 婷婷五月婷婷| 六月婷婷天天操夜夜爽视频| 亚洲中文av| 一本大道嫩草AV无码专区| 9九热视频| 五月天婷婷久久| www.五月天婷婷| 青青草婷婷综合五月| A片试看120分钟做受图片| 热无码A∨| www.天天干| 亚洲精品视频在线播放| 91ncom.色| 天天综合五月| 爱久综合| 久久机热这里只有精品免费视频| 五月婷婷六月丁香| a在线观看| 亚洲AV人人操| 五月天啪啪| 五月天另类小说| 欧美精品999| 思思热视频在线| 亚洲综合激情五月久久| 五月激情天| 激情五月天激情网| 国外亚洲成AV人片在线观看| 米奇影视资源婷婷狠狠色激情欧美五月丁香| 色噜噜婷婷| 91超碰人人操| 中字幕视频在线永久在线观看免费| 五月婷婷播| 精品香蕉99久久久久网站| 色人妻五月| 墨西哥毛片内射精| 九九干视频| 丁香五月日韩| 色五月首页| 亚洲色五月天是什么| 三人荫蒂添的好舒服A片| 思思99热在线| 丁香久久在线| 五月亭亭狠狠| 啪啪啪大香蕉| 精品一二三区久久AAA片| 婷婷五月天美女视频| 五月丁香在线观看99| 人人97碰| 综合网激情五月天| 97婷婷久久丁香| 六月婷婷激情| 日本ww亚洲| yw.av| 日本啪啪天堂| 五月天婷婷丁香花| 日韩欧美性爱| 婷婷成人五月天成人文学| AV中文在线| 国产成人精品123区免费视频| 五月激情综合深爱| 97碰碰视频在线观看| 99热这里只有精| 涩五月色婷婷| 婷婷开心深爱五月天| 大香蕉在九| 日本美女五月天| 9九热视频| 在线91日韩| 久久99精品久久只有精品| 亚洲色小说在线综合| 久久久噜噜噜www成人| 婷婷伊人网| 五月天婷婷色小说| 丁香九月综合激情| 婷婷激情久久| 丁香六月激情综合| 激情99在线视频| 丁香无月在线观看| 日韩操啪| 五月婷婷深深爱| 五月综合亚洲婷婷| 五月婷婷深深爱| 国产乱码久久| 色情婷婷。| 中字幕视频在线永久在线观看免费| 久久美女五月天| 欧美婷婷五月无砖| 综合激情在线视频| 老师高潮流白浆喷水的A片| 日本高清久| 色吧五月婷婷| 亚洲色婷婷99一9|| 五月丁香啪综合| 操逼视频网址| 五月天久久久| 日本视频99| 五月天另类小说| 欧美亚洲999| 日韩色五月| 人与禽A片啪啪| 97热这里精品在线视频| 久久A区B区| 国产日批视频| 九九热这里只有精品5| 精品一区二区三区三区| 丁香五月激动深爱欧美| 五月天综合| 日本一级一片免费视频| 久久亚洲激情五码| 日日操,天天操| 婷婷五月激情热播| 久婷| 亚洲视频二区| 97五月婷婷| 99操网站| 五月天婷婷基地| 思思re99视频在线观看| 五月天天综合| 亚洲综合激情五月久久| 婷婷亚洲欧美丁香五月| 米奇影视资源婷婷狠狠色激情欧美五月丁香| 亚洲另类在线观看| 日本欧美在线| 国产成人综合在线| 另类国产区| 狠狠草网| 综合网色综合| 91欧美日韩| 久草 tingting| 婷婷欠久少妇| 亚洲精品白浆高清久久久久久| 欧美性生交XXXXX无码小说| 丁香五月五月婷婷| a在线观看| 婷婷大香蕉| 五月丁香综合啪啪| 激情综合婷婷| 国产精品电影| 四色99久久| 五月天婷五月天综合网在线观| 深爱五月激情综合| 婷婷综合激情五月中文字幕| 秋霞三级色戒| 天天狠狠插| www.夜夜夜| 99在线观看免费精品视频| 五月婷婷这里都是精品| 天天干天天日日| 亚洲综合丁香婷婷六月天| 日日操日日干| 久久久久人妻中文| 深爱激情丁香五月| 亚洲精品99| 久久性刺激| 丁香婷婷激情五月天无毒不卡蜜桃| 五月丁香六月综合激情无码软件亮点 | 综合激情sV| 丁香密臀AV激情网| 久久久久久欧美精品se一二三四| 久久婷婷伊人| 五月婷婷另类| 天天艹天天色| 色婷婷色五月天| 五月丁香六月婷婷姐| www.色9| 深爱激情综合网| 亚洲激情在线| 国产午夜成人免费看片无遮挡| 成人五月丁香花| 色99婷婷五月天| www五月天com| 丁香五月性爱| 岛国资源网| 婷婷五月天狠狠| 丁香九月久久| 丁香婷婷综合激情五月色| 国产视频色色色色色色色| 视频在线免费观看欧洲乱码| av国产精品偷| 成人羞羞啪啪 全 视频| 天天插插天天| WWW.99热| 少妇被下春药玩弄A片| 婷婷亚州综合| 亚洲欧美婷婷五月色综合| 中文无码婷婷| 五月综合六月婷婷| 91成人看片| 色综合色综合网| 欧美综合激情五月天| 色五月在线观看| 婷婷五月天开心网| 婷婷伊人五月天| 丁香五月综合久久综合| 夜夜涩涩涩| 五月情色天| 热九九精品| 国内精品免费一区二区2009| 久久激情五月天| 色丁香综合影院| 激情亚洲婷婷| 精品国产AV色一区二区深夜久久 | 99热99热| 五月天婷婷色| 天堂二区| 操操操www.com| 噜噜精品| 99性爱| 伊人久久大香蕉网| www,婷婷五月天777me,com| 性生活视频98791| 久久九九免费视频| 99久久婷婷五月| 婷婷大美在线| 黄色片区子| 8050一级网| 五月婷婷丁香啪啪| 日日天天干| 人妻丰满精品一区二区A片| 久久婷婷综合基地| 天天五月情| 久久精品4| 丁香五月婷婷综合激情啪啪啪啪啪啪啪 | 天天草天天爽| 91VIP在线观看| 99热这里只有精品21| 丁香五月天婷婷激情| 夜夜嗨一区二区三区直播内容| 久久久久亚洲AV成人无码电影| 人人干Av| 无码少妇高潮喷水A片免费| 婷婷久久影院| www.六月丁香看AV| 中文字幕人妻熟女在线| 婷婷的久久网站| 五月丁香成人网| 九九爱激情| 五月婷六月综合在线观看| 久久五月网| 九九精品少妇| 五月四色婷婷| 香蕉AV777XXX色综合一区| 色五月婷婷基地| 五月丁香亭亭| 丁香五月激情啪啪啪啪| 婷婷六月丁香色| 日韩成人精品中文字幕| 91色综合| 99热中国| 丁香婷婷五月综合欧美另类| 色五月丁香激情视频| 26uuu欧美| 天天综合网91| 99热免费| 9精品视频在线观看| 无码人妻一区| 伊人丁香五月婷婷潮吹| 美国天天日天天操| 亚洲无AV在线中文字幕| 五月丁香六月日逼| 五月色丁香| 色99婷婷五月天| 丁香五月六月综合欧美| 婷婷狠狠香蕉综合| 日日夜夜爽| 色色婷婷综合| 99热这里只有精品69| 国产偷人爽久久久久久老妇APP| 夜夜操夜夜爽| 亚洲精品字幕在线观看| 成人天天爽| 日韩色色视频| site:esunnet.com| 26uuu国产| 久9久9热久热| 97干在线| 久久激情综合| 久久9视频| 欧美激情 日韩无码 婷婷 五月天| 黄色三级日本| 9久久精品| 99热99色| www.99热最新视频8| 东京热免费视频| 天天 日综合| 色五月丁香91| 五月丁香六月情亚洲| 97色综合视频| 91无码视频| 欧美在线干| 激情五月天婷婷久久久久久久久久久| 五月色综合| 99精品7| 天堂二区| 人人干av| 日韩成人电影AV| 色综合色综合网| 天堂婷婷丁香六月网| 色www99| 丁婷婷五月天在线播放| 91无码视频| 五月开心久久| 色99综合视频| 色都都狠狠色都都色综合色| 99热这里只有精品55| 久久婷婷综合基地| 日韩色色视频| 五月婷婷狠狠干| 色婷婷综合在线| 殴美激情综合网| 激情99。| 激情综合五月丁香六月婷婷| 99碰网站| 日韩三级片一区二区| 五月天丁香啪啪网| 成人丁香| 激情网第九色| 五月天丁香久久综合| 欧美婷婷五月天| 五月婷婷色| 欧美槡BBBB槡BBB少妇| 男人的天堂五月丁香| 99在线精品视频| 狠狠色丁香| 色99在线视频| 五月天丁香六月综合| 五月激情六月丁香| 五月色天情| 五月丁香激情综合| 无毒黄色网址| 婷婷五月激情综合| 丁香五月精品| 婷婷亚洲综合| 色爱综合网| 激情www| 五月婷在线| 影音先锋91视频| 欧美人妻一区二区| 色五XX| 婷婷五月天综合激情| 好叼操在线观看| 欧美久热| www.五月天社区| 久久九九视频网站| 91人人爽人人操| 另类小说五月天| 99热6精品| 丁香五月婷婷婷婷欧美综合| 五月丁香婷婷啪啪综合| 男妓跪趴把舌头伸进我的嘴巴| 天天插天天爽| 色宗合,宗合网| A在线观看| 牛牛澡牛牛爽| 婷婷五月天影院| 色XX综合网| 99视频精品视频| AV在线观看网站| av免费在线观看0| 99日韩| 少妇搡BBBB搡BBB搡毛茸茸 | 99性感视频| 日本久久99| 久久婷婷青青| 欧美内射AAAAAAXXXXX| 原琪琪色影院| 五月天狠狠| 中文aV网| Av性爱网站| 久久久久久97| 色婷亚洲| 色就色94欧美setu| 日本一级黄色电影| 五月久久婷婷天堂视频| 亚洲婷婷乱乱丁香| 亚洲激情高潮| www.99在线| 色色网站在线| 久久精品视频在这里有| 色青五月天| 丁香五月天偷拍| 久久九九热re6这里有精品| 北京熟妇搡BBBB搡BBBB| 日本啪啪天堂| 97在线/亚洲| 婷婷色正月| 99青青草| 日日射天天射| 我爱宗和色| 五月久久五月激情| 激情五月天婷婷| 婷婷在线综合| 人人操人人妻| 玖久久网站| 亚洲视频在线观看| 成人无码髙潮喷水A片| 九九热精品| 久久只有18视频| 日日噜狠狠| 人人妻人人澡| 久久视频婷婷视频| 天天日夜夜| 成人网在线视频| 国产精品美女| 婷婷色啪| 欧美久久网| 欧美婷婷丁香五月社区| 色玖玖导航| 久久婷婷激情| 超碰久热| 婷婷久久综合| 99久热| 日日操夜夜爽| 婷婷网五月天| 亚洲国产精品VA在线看黑人| 色播播五月天| 91狠狠综合久久| 伊人综合网站| 国产精品久久久久久喷浆| 久久婷婷五月丁香蜜桃网| 综合AV网| 中文字幕久久婷九女同| 伊人激情网| 91疯狂操操操操| 五月丁香婷婷激情影院欧美| 色五月天堂| wwwss在线观看| 天天摸天天舔天天爽| 日日干夜夜撸夜夜骑| 久久九九大香蕉电院| 99爱在线视频观看| 五月天激情小说| 色哟哟精品| 婷婷俺去也| 538在线精品| 九九九干精品| 久久色吧| 亚洲精品成人片在线播| 色碰干| 色综久久久| 伦99热| 99热思思| 开心五月婷婷激情| 无码激情AAAAA片-区区| 色五月丁香91| 亚洲人成网站999综合| 久久99久久久| 任你日热视频| 国产99美少妇| 99爱视频精品在线观看| 亚洲五月天婷婷综合| 五月丁香六月婷婷综合伊人| 丁香五月天啪啪| 成人短视频在线免费观看| 五月丁香六月激情在线| 日本人妻伦在线中文字幕| 曰韩五月丁香色婷婷无码| 婷婷丁香五月亚洲| 91se视频| www.色婷婷.com| 99热这里全是精品| 久久综合久色欧美综合狠狠| 九九色天堂| 九九热这里只有精品5| m色激情网| 色99在线| 秋霞免费视频| 教师性爱毛片| 六月婷婷综合| 国产裸舞福利资源在线视频| 色婷婷综合网站| 无码任你操| 国产操B| 大香蕉久操| 五月婷婷开心六月激情小说| 伊人久久大香线蕉av最新| 国外亚洲成AV人片在线观看| 99免费在线视频| 激情无码五月天| 五月天成人综合| 超碰在线国产| 亚洲蜜乳AV| 综合亚洲色色| 噜噜国产| 狠狠干综合| 婷婷久久性爱| 韩国婷婷丁香五月| 97久久久| 影音先锋男人av资源站| 五六月婷婷| 五月天综合在线观看| 五月天激情网图片| 99在线视频播放| www.热99热| 天天日天天爽| 婷婷中文网站| 六月丁香综合网| 五月天色图| 99久免费视频| 五月丁六月香av| 日本99久久| 国产精品 的国产| www.夜夜夜| 在线视频另类| 综合色视频| 婷婷放心五日爱| 色天堂A| 99色在线视频观看| 狠狠另类视频| 久色网| www久久久久| 国产精品久久7777777精品无码| 色五月天在线观看| 99视频在线播放大全| 五月天停停基地| 免费视频WWW在线观看网站| 狠狠爱婷婷爱| 激情五月综合婷婷| 丁香婷婷五月天成人| 婷婷激情另类| 深爱五月激情五月| 欧美精品99久久久| 色婷婷国产精品综合在线观看| 99热精这里只有精品| 99色视频| 狠狠色综合网| 五月色婷婷中文字幕| 夜夜操加勒比| 五月情四婷婷| 色丁香五月婷婷| 日本综合色色| 青青草tp| 六月婷婷九月丁香| 丁香五月天色婷婷| 亚洲无码影片| 天天色官网| 五月天sesese| 五月天婷婷激情干干| 99免费视频| 伊人网欧美在线男人天堂五月丁香 | 欧洲亚洲精品| 国产毛片操B| 怡红院精品视频久久久久久久久| 综合激情五月天| 伍月婷丁香婷| 色欧洲| 综合亚洲色色| 亚洲激情另类| 色五月婷婷激情综合网| 99热只有| 人妻爽爽爽久久久久久久久| 狠狠干,狠狠操| 亚洲中文字幕AV| 激情欧美五月丁香| 久久久久久xxxxx| 亚洲精品视频在线| 五月总合激情网| 亚洲久久激情| 亚洲综合激| 国产这里只有精品| 黄涩毛片| 亚洲欧洲美女在线观| 五月天狠狠干| 六月丁香开心婷婷欧美| 精品人妻久久久久| 婷婷六月综合基地| 五月丁香六月天| 9热在线观看| 91九色视频| 国产亚洲色婷婷久久99精品91| 99热精品中文字幕| 丁香午月AV中文字幕| 免费看欧美成人A片无码| 怡红院精品视频久久久久久久久| 99干日日干| 激情婷婷色五月| 久操人| 国产激情久久久| 开心四月婷婷在线色播播| 国产国产乱老熟女视频网站97| 可以直接看的AV网站| 99久热这里只有精品| 激情五月婷婷六月丁香| 啪啪丁香五月| 日韩成人网址| 99久久99视频只有精品| 婷婷色情 | 国产精品婷婷午夜在线观看| 丁香激情五月少妇| 欧洲一区二区| 综合五月草| 综合网色| 六月婷婷七月丁香| 欧美激情 日韩无码 婷婷 五月天| 婷婷激情综合| 国产 码在线成人网站| 99ri在线| 婷婷丁香五月天色区| 亚洲免费电影2| 婷婷99狠狠躁天天| 狠狠干2007| 婷婷五月天天| 97人人做| 亚洲人人干| 婷婷久久色| 色色性爱视频| 五月婷婷手机在线| 色九九九九| 99国产精品久久久久久久久久久| 婷婷五月天亚洲综合网| 久久加勒比| 国产精品久久..4399| 婷婷人人操| 日本一级一级一级一级| 五月天狠狠草| 国产99热| 亚洲丁香五冃97色| 99久在线观看| 久色五月| 婷综合| 亚洲一二三网|