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

ARTICLE DETAIL

資訊詳情

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

AI 架構(gòu)圖生成實(shí)戰(zhàn):基于 XML 中間格式的可編輯系統(tǒng)設(shè)計(jì)

AI 架構(gòu)圖生成實(shí)戰(zhàn):基于 XML 中間格式的可編輯系統(tǒng)設(shè)計(jì) 1. 這個(gè)項(xiàng)目到底要解決什么問題項(xiàng)目代號叫 next-draw.io AI 架構(gòu)圖。當(dāng)時(shí)起這個(gè)名字沒有綁定任何具體商業(yè)產(chǎn)品就是 next下一代加 draw繪圖加 io輸入輸出三個(gè)詞的組合。真正做起來之后才發(fā)現(xiàn)這名字歪打正著點(diǎn)中了架構(gòu)圖工具最核心的三個(gè)痛點(diǎn)怎么把輸入變成輸出怎么降低畫圖門檻怎么讓圖能持續(xù)迭代維護(hù)。這個(gè)項(xiàng)目的目標(biāo)是讓 AI 根據(jù)一段需求描述甚至一段代碼直接生成一份結(jié)構(gòu)化、可繼續(xù)編輯的系統(tǒng)架構(gòu)圖而不是給一張只能看、不能改的靜態(tài)圖片。如果你和我一樣經(jīng)歷過“開會前兩小時(shí)還在手動補(bǔ)箭頭”“新同學(xué)入職讀架構(gòu)文檔讀到懷疑人生”“代碼改了三輪圖還是半年前那版”這些場景那你應(yīng)該知道這類工具缺得有多離譜。1.1 架構(gòu)圖為什么總是畫不出來先說最扎心的現(xiàn)實(shí)不是大家不會畫圖而是畫圖的成本收益嚴(yán)重失衡。手動拖拽一個(gè)框、填一個(gè)名字看起來只要十秒鐘但一張完整的系統(tǒng)架構(gòu)圖光節(jié)點(diǎn)就有二三十個(gè)連線幾十條還要分組、標(biāo)注、調(diào)色、對齊。等你終于把框擺好、線連完需求已經(jīng)變了于是你開始新一輪拖動、縮放、對齊。這種重復(fù)勞動極其消耗耐心所以大部分團(tuán)隊(duì)的架構(gòu)圖要么畫得很淺要么根本不更新。更深一層的問題是架構(gòu)圖應(yīng)該是“持久資產(chǎn)”但實(shí)際上它往往成為“一次性產(chǎn)物”。真正的系統(tǒng)在演進(jìn)接口在變化模塊在拆分合并而圖不會自己跟著變。于是技術(shù)文檔里的架構(gòu)圖經(jīng)常成為面試官最喜歡問的“哪張圖才是對的”的笑話。這個(gè)項(xiàng)目要解決的就是讓架構(gòu)圖可以像代碼一樣被生成、被版本管理、被自動化檢查和更新。換句話說把畫圖從“手工建?!弊兂伞鞍胱詣泳幾g”。1.2 next-draw.io 的核心目標(biāo)我在設(shè)計(jì)目標(biāo)時(shí)給自己列了四條硬性要求少一條都會讓項(xiàng)目失去價(jià)值首先輸入要低門檻。用戶可以直接寫一句人話比如“用戶端通過網(wǎng)關(guān)訪問后端服務(wù)后端服務(wù)依賴訂單庫和用戶庫”也可以粘貼一段代碼目錄甚至給一份接口清單。工具要做的是理解這些信息而不是要求用戶先學(xué)會某種復(fù)雜的建模語法。其次輸出必須可編輯。AI 畫完圖人還要改。所以生成結(jié)果不能是位圖不能是一張 PNG而應(yīng)該是帶有節(jié)點(diǎn)、連線、分組、樣式屬性的文本格式方便用戶在已有基礎(chǔ)上繼續(xù)調(diào)整。第三結(jié)果必須能入庫協(xié)作。架構(gòu)圖要放進(jìn) git 這類版本管理系統(tǒng)里每次改動都能清晰對比哪些模塊新增了哪些依賴被刪掉了。圖片格式做不了這件事只有文本化、結(jié)構(gòu)化格式能勝任。第四要支持迭代修復(fù)。AI 第一次生成的結(jié)果總是會有點(diǎn)偏差要么漏了一個(gè)模塊要么把邊連錯(cuò)了。工具需要有自檢和重試機(jī)制讓用戶說一句“再檢查一下網(wǎng)關(guān)和鑒權(quán)服務(wù)的關(guān)系”就能做局部修正而不是整張推倒重來。有了這四條后面所有技術(shù)選型都圍繞它們展開。你會發(fā)現(xiàn)大部分設(shè)計(jì)取舍其實(shí)都是被這些目標(biāo)倒逼出來的。2. 整體設(shè)計(jì)思路先選對路線再談實(shí)現(xiàn)2.1 三條技術(shù)路線我為什么選 XML 中間格式做 AI 生成架構(gòu)圖輸出格式是第一個(gè)要拍板的決策。我認(rèn)真對比過三條路線各有各的坑。第一條路線是讓 AI 直接生成圖片。這個(gè)最直觀模型用一張 PNG 或者 SVG 把圖畫出來。但問題非常明顯坐標(biāo)、文字準(zhǔn)確度不可控節(jié)點(diǎn)邊界經(jīng)常糊成一團(tuán)而且生成結(jié)果完全不可編程、不可 diff用戶想改一個(gè)字都得重新生成。這就違背了“可編輯”和“可入庫”兩條核心目標(biāo)。第二條路線是生成文本描述類的 DSL 圖表。這類語法適合簡單流程圖寫起來也很快但對企業(yè)級系統(tǒng)架構(gòu)圖來說表達(dá)能力偏弱。泳道、分組、跨層依賴、復(fù)雜樣式都要靠各種技巧去湊。而且 DSL 本身是一個(gè)大生態(tài)將來想擴(kuò)展自定義組件成本會越來越高。第三條路線是生成結(jié)構(gòu)化的繪圖 XML 中間格式。XML 聽起來老氣但它有不可替代的好處本質(zhì)上描述的是一張數(shù)據(jù)表節(jié)點(diǎn)是行邊是關(guān)系樣式是屬性。解析容易校驗(yàn)容易擴(kuò)展也容易。我把 AI 直接生成最終繪圖格式作為遠(yuǎn)期目標(biāo)但在當(dāng)下階段項(xiàng)目內(nèi)部先定義一套精簡的 XML 中間結(jié)構(gòu)讓模型把“實(shí)體”“關(guān)系”“分組”“樣式”語義化地表達(dá)出來后續(xù)再加一層薄薄的轉(zhuǎn)換器把它映射成真正能導(dǎo)入第三方工具做可視化的文件。三條路線的對比我實(shí)測下來是這樣輸出形態(tài)成本可編輯性入庫存檔復(fù)雜圖支持位圖/矢量圖低差基本重畫差二進(jìn)制無法 diff差文字經(jīng)常錯(cuò)文本 DSL中中文本可改中diff 但語義弱中分組交叉很費(fèi)勁XML 中間結(jié)構(gòu)高強(qiáng)節(jié)點(diǎn)屬性全保留強(qiáng)結(jié)構(gòu)化 diff 清晰高能帶分組和自定義屬性如果你見過網(wǎng)頁 HTML 和最終渲染結(jié)果之間的關(guān)系就很容易理解我的選擇。HTML 不是給你直接看的最終畫面它是一種中間結(jié)構(gòu)瀏覽器拿到之后做布局、樣式、繪制。XML 架構(gòu)圖也是這樣AI 只負(fù)責(zé)把“網(wǎng)頁語義”寫好布局和繪制交給后面的引擎兩者解耦之后每一邊都能做好自己擅長的事。2.2 核心工作流拆解整個(gè)項(xiàng)目流程被我拆成五個(gè)步驟順序是固定的缺一步都會多米諾骨牌式崩塌。第一步輸入處理。把用戶輸入的需求文本、代碼結(jié)構(gòu)、接口清單統(tǒng)一拼接成一條結(jié)構(gòu)化 prompt。這一步看起來簡單但實(shí)際上大部分生成質(zhì)量都取決于 prompt 里有沒有把“什么是節(jié)點(diǎn)、什么是邊、什么是分組”定義清楚。第二步結(jié)構(gòu)生成。把 prompt 發(fā)給大模型要求它返回 XML 中間結(jié)構(gòu)。注意不是讓它返回示意圖而是返回一張有節(jié)點(diǎn)、有邊、有分組的結(jié)構(gòu)化數(shù)據(jù)。模型的角色被限定為“信息抽取器”而不是“畫家”。第三步解析清洗。大模型輸出不可能次次完美可能帶 markdown 包裹可能在 XML 里混入解釋文字可能節(jié)點(diǎn) id 不唯一。這一步要用腳本把原始輸出提取出來解析成內(nèi)存對象并且對不合法內(nèi)容做修正或丟棄。第四步布局計(jì)算。拿到節(jié)點(diǎn)和邊的信息之后我并不直接用模型建議的坐標(biāo)而是把實(shí)體關(guān)系交給一個(gè)獨(dú)立的分層布局引擎重新計(jì)算每個(gè)節(jié)點(diǎn)的位置。這一步能避免大量“節(jié)點(diǎn)疊在一起”“連線橫穿所有模塊”的慘案。第五步渲染回寫。把布局之后的節(jié)點(diǎn)坐標(biāo)、寬高、樣式、分組信息寫回到與第三方工具兼容的繪圖 XML 文件。用戶在畫圖界面打開就能看到一張完整圖拖一拖就能繼續(xù)調(diào)整。這個(gè)流程相當(dāng)于把 AI 的能力限制在“理解關(guān)系和生成結(jié)構(gòu)”上而把需要確定性的活交給算法。實(shí)踐證明這樣分工的成功率遠(yuǎn)高于“一步到位”的做法。2.3 模塊劃分與數(shù)據(jù)流項(xiàng)目代碼按職責(zé)劃分成六個(gè)模塊各自只做一件事提示詞管理模塊負(fù)責(zé)拼 prompt內(nèi)部維護(hù)幾個(gè)版本的模板可以針對文本輸入、代碼輸入、多輪修正輸入分別調(diào)用不同的模板片段。解析模塊負(fù)責(zé)把模型返回的字符串變成 Python 對象里面有容錯(cuò)邏輯比如自動補(bǔ)全缺失的結(jié)束標(biāo)簽、剔除多余的解釋文本。實(shí)體標(biāo)準(zhǔn)化模塊負(fù)責(zé)統(tǒng)一命名和 id。模型有時(shí)候會把“User Service”和“用戶服務(wù)”當(dāng)成兩個(gè)不同實(shí)體這個(gè)模塊負(fù)責(zé)做大小寫歸一、同義詞合并確保同一個(gè)真實(shí)系統(tǒng)只有一個(gè)節(jié)點(diǎn)。布局引擎模塊接收標(biāo)準(zhǔn)化后的實(shí)體關(guān)系輸出坐標(biāo)和尺寸。它的算法不需要多豪華但必須穩(wěn)定不能因?yàn)檩斎腠樞蜃兓妥寛D整體亂跳。渲染寫回模塊負(fù)責(zé)把內(nèi)存模型映射成最終 XML 文本包括節(jié)點(diǎn)坐標(biāo)、樣式顏色、分組層級。最后是自檢回讀模塊生成完畢之后重新解析一遍 XML統(tǒng)計(jì)節(jié)點(diǎn)數(shù)、邊數(shù)、孤立節(jié)點(diǎn)數(shù)量低于閾值就自動重新生成一次。這一層守衛(wèi)非常管用它能攔截大量“看似生成了實(shí)際結(jié)構(gòu)是壞的”情況。數(shù)據(jù)流是單向的文本進(jìn)中間結(jié)構(gòu)生成清洗標(biāo)準(zhǔn)化布局渲染最后落盤。每一步的輸出都是下一步的輸入所有中間格式都必須嚴(yán)格校驗(yàn)這能避免錯(cuò)誤在后端被放大。3. 核心實(shí)現(xiàn)細(xì)節(jié)從提示詞到可編輯圖3.1 一個(gè)穩(wěn)定的提示詞模板先說結(jié)論提示詞不要寫太多花哨的廢話重點(diǎn)是把“信息格式”講清楚。我踩過一個(gè)大坑最初讓模型“發(fā)揮創(chuàng)意”結(jié)果十個(gè)結(jié)果十個(gè)結(jié)構(gòu)都不帶重樣的。后來我把提示詞收斂成固定模板效果立刻穩(wěn)定。我現(xiàn)在用的是類似下面這種結(jié)構(gòu)你是一名系統(tǒng)架構(gòu)信息抽取器。 請把用戶輸入轉(zhuǎn)換為可編輯架構(gòu)圖的中間描述。 中間描述格式要求 diagram group idg1 label接入層/ node idn1 label用戶端 groupg1 typeclient/ node idn2 label網(wǎng)關(guān)服務(wù) groupg1 typeservice/ storage idn3 label用戶數(shù)據(jù)庫 typedatabase/ edge fromn1 ton2 labelHTTPS/ edge fromn2 ton3 labelJDBC/ /diagram 約束 1. node、storage、group 的 id 必須全局唯一。 2. edge 只能引用已經(jīng)存在的 id。 3. type 只能取 client、service、storage、message、external 五種。 4. 不要輸出任何解釋文字只輸出 XML。這個(gè)模板把“游戲規(guī)則”先定死讓模型只做填鴨式抽取。看起來沒什么技術(shù)含量但非常有效。type 限定為五種是有意為之因?yàn)楹蠖说念伾托螤罹褪前催@五種類型去映射的類型越少系統(tǒng)越好維護(hù)。關(guān)于輸入部分我會在模板后面動態(tài)追加用戶原始描述同時(shí)提醒模型“不要給用戶描述里沒提到的東西編造依賴關(guān)系”。這個(gè)提醒很關(guān)鍵沒有它模型就會腦補(bǔ)出一堆現(xiàn)實(shí)中并不存在的中間件圖一多簡直沒法看。3.2 解析和清洗模型輸出不是金標(biāo)準(zhǔn)模型返回的文本再干凈也必須經(jīng)過一道容錯(cuò)清洗。最常見的狀況是它把 XML 放在 markdown 代碼塊里有些還帶 xml 標(biāo)簽有些則直接裸輸出。我的第一步是用正則把代碼塊里的內(nèi)容抽出來。import re def extract_xml(raw: str) - str: # 先嘗試匹配帶 標(biāo)記的代碼塊 pattern r(?:xml|XML)?\s*(.*?) match re.search(pattern, raw, re.S) if match: return match.group(1).strip() # 沒有代碼塊時(shí)嘗試直接找 diagram 開頭的內(nèi)容 match re.search(rdiagram[\s\S]*/diagram, raw, re.S) if match: return match.group(0) return raw拿到 XML 字符串之后再用標(biāo)準(zhǔn)庫的 ElementTree 解析成內(nèi)存樹。解析這一步經(jīng)常掛掉原因也確實(shí)有意思模型會輸出類似diagram標(biāo)簽沒閉合、屬性值沒加引號、邊引用了不存在的 id。所以解析后必須立刻做一輪結(jié)構(gòu)校驗(yàn)。我通常在解析后打一份“結(jié)構(gòu)摘要”比如打印出總共有幾個(gè)節(jié)點(diǎn)、幾條邊、哪些邊引用了未知 id。這些信息能明確告訴我這次生成的圖是否具備繼續(xù)處理的基礎(chǔ)。如果發(fā)現(xiàn)未知 id就直接把這條邊丟棄因?yàn)椴季忠鏇]法處理懸空引用。清洗還有一個(gè)容易被忽略的點(diǎn)必須對節(jié)點(diǎn) label 做 XML 轉(zhuǎn)義。如果用戶輸入文本里包含或直接拼進(jìn) XML 會導(dǎo)致解析失敗。用 Python 的xml.sax.saxutils.escape把特殊字符轉(zhuǎn)掉哪怕生成結(jié)果里看不到區(qū)別文件本身是穩(wěn)定的。3.3 布局方案別依賴大模型給的坐標(biāo)最初我覺得大模型既然能把關(guān)系和層級抽出來那么順帶給它幾個(gè)絕對坐標(biāo)也是順手的事。實(shí)驗(yàn)做下來我發(fā)現(xiàn)模型對坐標(biāo)的直覺極差經(jīng)常輸出“節(jié)點(diǎn)A在 x80節(jié)點(diǎn)B在 x820但它們還有同一層編號”這種自相矛盾的數(shù)據(jù)。而且即使坐標(biāo)基本合理只要用戶加一個(gè)節(jié)點(diǎn)整體布局就徹底亂掉。所以我做了個(gè)重要決定模型輸出里關(guān)于坐標(biāo)的信息全部忽略只保留節(jié)點(diǎn)、邊、分組、類型、label。真正的位置計(jì)算完全交給代碼里的分層布局引擎。實(shí)現(xiàn)的思路不復(fù)雜根據(jù)邊關(guān)系建立一個(gè)“依賴層級”。沒有入邊的節(jié)點(diǎn)歸為第 0 層下游節(jié)點(diǎn)按層級 max(所有上游節(jié)點(diǎn)層級) 1計(jì)算。每一層的節(jié)點(diǎn)按順序排列同一層內(nèi)橫向均勻分布??v向間距固定比如 80px。橫向間距按 label 長度估算每個(gè)節(jié)點(diǎn)寬度至少 120px防止文字?jǐn)D壓。連線的路由交給繪圖工具自帶的自動路由布局引擎只需要保證節(jié)點(diǎn)不互相重疊。寫出來的核心函數(shù)大致是這樣def assign_level(edges, node_ids): depth {nid: 0 for nid in node_ids} indeg {nid: 0 for nid in node_ids} graph {nid: [] for nid in node_ids} for src, dst in edges: graph[src].append(dst) indeg[dst] 1 queue [nid for nid in node_ids if indeg[nid] 0] for nid in queue: for child in graph[nid]: depth[child] max(depth[child], depth[nid] 1) indeg[child] - 1 if indeg[child] 0: queue.append(child) return depth這就是一次拓?fù)渑判虻淖凅w。遇到環(huán)狀依賴時(shí)拓?fù)渑判驎粝挛刺幚砉?jié)點(diǎn)我的處理方式是給這類節(jié)點(diǎn)統(tǒng)一分配一個(gè)“循環(huán)依賴層”避免腳本死循環(huán)。對于架構(gòu)圖來說環(huán)不應(yīng)該出現(xiàn)在業(yè)務(wù)依賴?yán)锶绻霈F(xiàn)了圖反而會幫你暴露問題。布局算法穩(wěn)定之后用戶體驗(yàn)就非??深A(yù)期。無論跑多少次同樣的輸入永遠(yuǎn)不會產(chǎn)生結(jié)構(gòu)漂移不同的圖這對后續(xù)做 diff 和版本對比非常重要。3.4 樣式注入與實(shí)體標(biāo)準(zhǔn)化大模型生成節(jié)點(diǎn)樣式屬性時(shí)非常隨性今天給“用戶端”填紅色明天給“用戶端”填藍(lán)色后天可能直接不填。樣式不穩(wěn)定會讓人對工具產(chǎn)生極強(qiáng)的不信任感。我的方案是把樣式屬性從模型輸出里剝離完全交給代碼決定。項(xiàng)目里維護(hù)一個(gè)簡單的類型到樣式的映射表TYPE_STYLE { client: rounded1;whiteSpacewrap;fillColor#E3F2FD;strokeColor#1976D2;, service: rounded0;whiteSpacewrap;fillColor#E8F5E9;strokeColor#2E7D32;, database: shapecylinder3;whiteSpacewrap;fillColor#FFF8E1;strokeColor#F57F17;, message: shapemessage;whiteSpacewrap;fillColor#F3E5F5;strokeColor#7B1FA2;, external: shapecloud;whiteSpacewrap;fillColor#ECEFF1;strokeColor#455A64;, }這樣用戶看到同一類型節(jié)點(diǎn)永遠(yuǎn)是同一套視覺表達(dá)圖面色彩整潔也便于團(tuán)隊(duì)在評審時(shí)快速過濾信息。實(shí)體標(biāo)準(zhǔn)化模塊則是解決“同一個(gè)東西被當(dāng)成三個(gè)節(jié)點(diǎn)”的問題。常見情況包括英文字母大小寫差異比如users-db和UsersDB中英文混寫比如“訂單服務(wù)”和“Order Service”還有縮寫差異。我的處理策略先統(tǒng)一成小寫去掉特殊符號再把等價(jià)詞映射列表交給固定函數(shù)遇到匹配就合并同一個(gè) id。這個(gè)模塊不能做太激進(jìn)否則容易把兩個(gè)本來獨(dú)立的服務(wù)合并掉。所以我的原則是只對“完全一致但寫法不同”做合并對“看起來像但不一定相同”保留為獨(dú)立節(jié)點(diǎn)把選擇權(quán)留給用戶。用戶可以在圖上看到結(jié)果發(fā)現(xiàn)不對勁再手動合并比工具自作聰明要安全得多。4. 實(shí)操過程搭一個(gè)能跑通的最小版本4.1 環(huán)境準(zhǔn)備與文件結(jié)構(gòu)整套最小版本不需要前端頁面也沒必要引入復(fù)雜框架。我強(qiáng)烈建議第一步先做成命令行工具跑通核心鏈路之后再考慮 Web 界面和交互。準(zhǔn)備一個(gè)普通 Python 環(huán)境版本 3.10 以上就行不需要額外依賴重型庫。大模型 API 調(diào)用我用標(biāo)準(zhǔn)庫里的 urllib 實(shí)現(xiàn)避免引入一堆依賴。文件結(jié)構(gòu)安排如下next-draw-project/ ├─ prompts/ │ └─ diagram_prompt.txt ├─ src/ │ ├─ llm_client.py │ ├─ parser.py │ ├─ layout.py │ ├─ writer.py │ └─ cli.py └─ examples/ └─ demo_input.txt如果你的機(jī)器聯(lián)網(wǎng)不方便也可以用本地模型只要保持輸入輸出格式不變后端是誰其實(shí)不關(guān)鍵。架構(gòu)上把 llm_client 做薄就保留了隨時(shí)切換后端的能力。4.2 核心代碼骨架先看調(diào)用大模型的部分。假設(shè)你有一個(gè)兼容通用消息格式的接口代碼大概這樣import json from urllib.request import Request, urlopen def call_llm(prompt: str, endpoint: str, token: str) - str: payload json.dumps({ messages: [{role: user, content: prompt}], temperature: 0.2, max_tokens: 4000, }).encode(utf-8) req Request(endpoint, datapayload, headers{ Content-Type: application/json, Authorization: fBearer {token}, }) with urlopen(req, timeout120) as resp: data json.loads(resp.read().decode(utf-8)) return data[choices][0][message][content]接著是 pompt 讀取和主流程def build_prompt(user_input: str) - str: template open(prompts/diagram_prompt.txt, encodingutf-8).read() return template \n\n用戶輸入\n user_input def main(): user_input open(examples/demo_input.txt, encodingutf-8).read() prompt build_prompt(user_input) raw call_llm(prompt, ENDPOINT, TOKEN) xml_text extract_xml(raw) model parse_middle_xml(xml_text) model normalize_entities(model) xmlish write_editable_diagram(model) with open(output.xml, w, encodingutf-8) as f: f.write(xmlish) summary validate_diagram(xmlish) print(summary)用這樣一個(gè)簡單的 90 分腳本已經(jīng)能走完“文本進(jìn)XML 出”的完整鏈路。我建議第一次跑的時(shí)候盡量使用短小、邊界清晰的輸入比如“A 服務(wù)調(diào)用 B 服務(wù)B 服務(wù)連接數(shù)據(jù)庫”先驗(yàn)證鏈路通順再逐步增加復(fù)雜度。4.3 接入文檔和版本庫命令行版本跑通之后下一步一定是把它接進(jìn)團(tuán)隊(duì)文檔流程。因?yàn)檩敵龅氖羌兾谋?XML所以可以直接扔進(jìn) git。每次有人調(diào)整架構(gòu)描述并重新生成 diff 里能清楚看到哪個(gè)節(jié)點(diǎn)變了、哪條邊斷了。這個(gè)體驗(yàn)是位圖完全給不了的。在此基礎(chǔ)上我在自己的項(xiàng)目里加了一個(gè)小腳本讀取 XML 后輸出一行摘要nodes12, edges15, groups3, unlinked_nodes0這個(gè)摘要可以作為 CI 檢查的一部分比如節(jié)點(diǎn)數(shù)不小于閾值、不存在孤立節(jié)點(diǎn)。一旦有人手工刪改 XML 導(dǎo)致依賴斷裂檢查立刻報(bào)警。架構(gòu)圖和代碼庫慢慢形成互相約束的關(guān)系圖不再是擺設(shè)??梢暬蜷_的問題可以先由第三方工具的無損導(dǎo)入解決。中間結(jié)構(gòu) XML 經(jīng)過一層映射之后寫入繪圖工具兼容格式工具內(nèi)部有自動布局能力打開時(shí)再執(zhí)行一次“整理布局”就能得到非常干凈的圖。我的經(jīng)驗(yàn)是不要讓項(xiàng)目試圖覆蓋所有畫布交互那個(gè)工程量不適合個(gè)人項(xiàng)目第一階段去做。5. 常見問題與排查手冊5.1 XML 解析失敗這是我在接入各種大模型后遇到概率最高的錯(cuò)誤。典型表現(xiàn)是腳本報(bào)錯(cuò)syntax error: line 3, column 0看一眼原始輸出發(fā)現(xiàn)模型把解釋文字加在 XML 前面或者少了個(gè)閉合標(biāo)簽。處理優(yōu)先級按下面這個(gè)表來現(xiàn)象常見原因處理方式一直解析失敗模型輸出被 markdown 包裹先用正則剝離代碼塊標(biāo)簽缺閉合上下文過長導(dǎo)致模型截?cái)嘟档?max_tokens 或拆分輸入屬性沒加引號模型語法能力波動手動用正則修正讓屬性值統(tǒng)一被引號包裹被當(dāng)標(biāo)簽解釋輸入文本包含特殊字符對 label 做 XML 轉(zhuǎn)義根節(jié)點(diǎn)多了一個(gè)模板要求只輸出一個(gè) diagram截取第一個(gè)完整diagram塊碰到解析失敗不要急著改模板先打印一份原始返回內(nèi)容的前 500 個(gè)字符看看結(jié)構(gòu)。很多時(shí)候問題出在輸入文本帶了很多代碼片段導(dǎo)致模型輸出被截?cái)喽皇翘崾驹~寫得不夠好。5.2 節(jié)點(diǎn)重疊和布局偏移所有第一次接出來的圖都會出現(xiàn)“節(jié)點(diǎn)全部疊在左上角”或者“邊穿過五六個(gè)節(jié)點(diǎn)”這種狀況。原因很直接你用了模型返回的坐標(biāo)而模型根本不理解布局空間。解決辦法只有一個(gè)不要續(xù)用模型坐標(biāo)改成重啟布局引擎。我每次換輸入都強(qiáng)制刷新坐標(biāo)甚至故意在 prompt 里不提供坐標(biāo)信息就是防止模型“順手”填出幾個(gè)坐標(biāo)把我誤導(dǎo)了。如果布局引擎跑完依然重疊檢查分隔距離是否太小。我在實(shí)現(xiàn)里把橫向間距設(shè)為 40px縱向間距設(shè)為 80px節(jié)點(diǎn)高度固定 40px覆蓋大多數(shù)情況。遇到圖特別大間距可以調(diào)成按節(jié)點(diǎn)數(shù)量比例縮放。5.3 實(shí)體重復(fù)和關(guān)系丟失“用戶服務(wù)USER-SERVICE后端用戶中心”這三個(gè)名字同時(shí)出現(xiàn)在生成的圖里是最讓人崩潰的場景。我第一次碰到以為是模型抽風(fēng)后來才知道是沒做標(biāo)準(zhǔn)化。標(biāo)準(zhǔn)化模塊上線之后重復(fù)率下降得很明顯。我試過最極端的情況輸入一段包含 500 行日志描述的資料模型把同一個(gè)數(shù)據(jù)庫重復(fù)建了四個(gè)節(jié)點(diǎn)。歸一化處理配合邊引用清理最后保留一個(gè)節(jié)點(diǎn)所有邊都指向那一個(gè) id。關(guān)系丟失的問題更多出現(xiàn)在邊長過長的時(shí)候。模型在生成最后幾條邊時(shí)突然忘記了前面定義的節(jié)點(diǎn) id于是引用了一個(gè)不存在的 id。這種邊會被校驗(yàn)?zāi)K直接丟棄從結(jié)果上看就是“少了一條線”。我的處理方法是讓提示詞在結(jié)尾重復(fù)提醒“所有 id 必須是前面出現(xiàn)過的 id”同時(shí)關(guān)閉自回歸模型無關(guān)緊要的想象力效果立竿見影。5.4 生成慢和結(jié)果不穩(wěn)定調(diào)用大模型生成 20 個(gè)節(jié)點(diǎn)的圖一次可能要二十秒以上用戶體驗(yàn)很差。我的優(yōu)化思路不是改模型參數(shù)而是控制輸出范圍。在提示詞模板里加一條“節(jié)點(diǎn)數(shù)量不超過 25 個(gè)”讓模型在信息抽取階段做取舍。超過規(guī)模的輸入先讓模型做分層摘要再分塊生成局部圖最后再用布局引擎把幾塊圖合并到一起。這個(gè)方法犧牲了一定的“全自動”但穩(wěn)定性和可讀性都回來了。不穩(wěn)定問題還有一個(gè)隱藏推手模型內(nèi)置的隨機(jī)性。雖然我用 temperature0.2但不同時(shí)間運(yùn)行同一輸入仍然可能得到細(xì)微差別。后來我在注意力機(jī)制之外顯式要求模型“按輸入順序輸出節(jié)點(diǎn)”把單體節(jié)點(diǎn)與它們的邊綁定在相鄰位置。實(shí)測下結(jié)果幾乎不再跳變。6. 一些實(shí)測體會和后續(xù)擴(kuò)展方向6.1 我反復(fù)測試后的幾個(gè)結(jié)論做了這個(gè)項(xiàng)目之后我對“AI 生成架構(gòu)圖”這件事有兩個(gè)很明確的判斷。第一大模型擅長提取關(guān)系不擅長做空間設(shè)計(jì)。讓它羅列系統(tǒng)有哪些模塊、模塊之間怎么調(diào)用它能做得又快又好但讓它協(xié)調(diào)幾十個(gè)節(jié)點(diǎn)的坐標(biāo)它瞬間退化成隨機(jī)數(shù)生成器。因此架構(gòu)上必須把“關(guān)系提取”和“空間布局”徹底分離誰擅長什么就干什么。第二后處理永遠(yuǎn)比調(diào) prompt 更可靠。你可以把提示詞寫到完美但模型是非確定性的下一次輸出可能就任性而解析、校驗(yàn)、標(biāo)準(zhǔn)化這些代碼是確定性的一旦寫好就穩(wěn)定。我的成功率從最開始三成不到到現(xiàn)在基本九成以上真正的轉(zhuǎn)折點(diǎn)是寫了一個(gè)嚴(yán)格的后處理校驗(yàn)鏈而不是花了更多時(shí)間打磨 prompt。多輪迭代也很值得做。第一版生成的結(jié)構(gòu)即使有遺漏第二步讓模型“檢測當(dāng)前圖和輸入的一致性”大概率能把缺掉的邊補(bǔ)回來。該環(huán)節(jié)我建議最多做兩輪再多會給模型引入幻覺讓它生成不存在的依賴。6.2 接下來可以做的新功能當(dāng)前版本只是個(gè)骨架我下一步想優(yōu)先做幾個(gè)方向。第一個(gè)方向是把代碼倉庫直接喂進(jìn)去。解析源碼里的類、函數(shù)、服務(wù)注冊信息自動生成服務(wù)依賴圖這比讓用戶寫自然語言描述要精確得多。關(guān)鍵難點(diǎn)從文本抽取變成了語法解析但底層工作流完全不用改。第二個(gè)方向是局部編輯的對話式體驗(yàn)?,F(xiàn)在生成完只能手動改 XML不夠友好。如果用戶說“把訂單服務(wù)的顏色改掉”“把緩存節(jié)點(diǎn)放到數(shù)據(jù)庫旁邊”模型能在保留大部分結(jié)構(gòu)不變的前提下做局部 patch這個(gè)工具就真的很像團(tuán)隊(duì)里的架構(gòu)師助理了。第三個(gè)方向是架構(gòu)演進(jìn)對比。既然圖是文本、能入庫、能 diff那就能自動對比前后兩版架構(gòu)圖標(biāo)出新增模塊、失效依賴、不穩(wěn)定節(jié)點(diǎn)。這事對大型系統(tǒng)評審太有用了我后續(xù)會優(yōu)先投入。最后再分享一個(gè)我在實(shí)際使用中發(fā)現(xiàn)的小技巧永遠(yuǎn)在生成結(jié)果里保留一個(gè)“未知依賴”虛擬節(jié)點(diǎn)。當(dāng)模型拿到一條沒有來源的邊時(shí)不要直接丟棄而是掛到一個(gè)虛擬節(jié)點(diǎn)上提醒用戶這里可能漏了系統(tǒng)。這樣你不會在批量生成時(shí)因?yàn)閬G邊而悄悄損失語義架構(gòu)評審時(shí)還能“被迫”解釋清楚。這個(gè)小改動值得任何做 AI 繪圖工具的同學(xué)抄走。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91人人爽狠狠狠| 久热视频A.| 婷婷丁香五月色偷偷| 久久久久久久五月| 一区二区乱码视频| 99色在线| 五月婷婷香蕉| 天天射色五月天| 玖玖资源站蜜臀| 婷婷精品性性性性性性性| 色五月综合网| 天天操天天曰| 五月婷网| 五月天激情影院| 搡BBBB搡BBB搡18| 中文字幕丰满孑伦无码专区 | 99啪| 综合97五月| 天天爽天天爽天天爽天天爽天天爽| 久er免费视频| 天天操夜夜夜拍拍拍| site:esunnet.com| 天天爽夜夜爽天天爽夜夜爽| 婷婷五月天视频免费在线观看| 丁香五月先锋| 五月天婷婷久久视频| 亚洲精品色| 欧美日韩成人在线| 久9精品视频在线| Caoporn公开| 久操97| 97操在线视频| 九九久久玖玖爱| 涩五月丝袜婷婷| 七七色色综合| 狠狠五月激情在线| 五月天俺去也| www.99婷婷| 丁香五月手机在线| 婷婷五月丁香99| 九九激情| 综合网色| 日本成人小说婷婷六月| 五月丁香激| 99热这里只有精品首页| 嫩草AV久久伊人妇女超级A| 国产精品99久久久久久久女警| ..真实国产乱子伦毛片| 任你操精品免费| 激情五月天久久丁香| 丁香六月激情综合网| 婷婷激情五月综合丁| 激情5月婷婷| 开心五月综合激情网| 久久99精品久久只有精品| www.狠狠操| 五月天另类小说久久小说网| 外国碰视频网站97| 丁香婷婷六月激情综合| 91成人品| 97碰碰草| 99re99在线看| 天天做天天摸| 99热这里只有精品5| 蜜桃婷婷丁香综合久久开心亚洲| 人人干99| 婷婷五月天a| 婷婷深爱五月| 激情第四色| 久久日本wwww色| 五月丁香免费视频| 五月天婷婷AV| 五月激情网五月综合网| 丁香六月婷婷色播| 99久久国产宗和精品1上映| 欧美日本97| 五月丁香婷婷色| 99视频这里只有久久精品| 66色在线日韩| 成人αV视频免费观看| 另类视屏| 丁香欧美| 这里有精品| 9久9久9久女女女九九九一九| 另类激情综合| 一本久道综合色婷婷五月| 啪啪一区| 亚洲第二AV| 婷婷五月天中文字幕.| 五月激情网站| 久草五月天| 狠狠色综合久久久久| 狠狠操狠狠爱| 久久久久人妻精品| 黄色三级毛片中字| 国产一级片| 激情性五月天免费小说视频| 婷婷亚洲综合| 五月婷婷久久久| 战争与艾拉电影免费观看| 大香蕉人妻| 一区操| 噜一噜免费视频| 99A片| 久久久婷婷婷| 五月丁香精品| 深爱五月激情| 香蕉久操| 精品无码色| XX久久| 日日夜夜天天| 高清a片基地| 激情网站五月| 538任你爽| 伊综合蕉| 天天做天天干天天综合网| 99热新网址| 99精品偷自拍| 激情五月天啪啪视频| 久9久成人精品视频| 青青久久五月天丁香婷婷| 五月丁香亚洲校园欧美| 国产精品国产| www.91AV.COM| 丁香六月婷婷姐网| 女人被躁到高潮嗷嗷叫小| 成人av在线电影| 色狠狠综合入口| 风流少妇A片一区二区蜜桃| 久久久久网站| 婷婷俺去也| 日韩AC在线免费观看| 日日日,com| 中文字幕成人影视| 久久婷婷的综合色丁香五月| 26uuu亚洲精品国产| 国产人妻人伦精品一区二区| 五月激情丁香五月| 婷婷五月天AV| 中文字幕在线免费| 日本色图综合| 色综合久久88色综合天天看| 天天人人人人人人人人人人人| 亚洲狠9| 亚州激情网站无码| 久热伊人| 色五月婷婷久久爱| 五月天激情小说网| 成人噜噜网| 综合一区二区三区| 亚洲AV无码一区二| 精品国产va久久久久| 丁香五月婷婷亚洲色图| 五月间天堂综合| 精品无码视频| 婷婷五月激情基地| 我爱va亚洲va52| 91婷婷| 97精品综合| 成人网站免费在线播放| 日本高清久| 久久激情网| 丁香婷婷五月天成人| 丁香五月综合福利视频导航| .精品久久久麻豆国产精品| 91九九| 丁香五月影视| 久操人妻| 高清无码视频网址| 五月网激情| 日韩一级片| 五月婷婷偷拍| 91超碰在线观看| enecarbon-materials.comWu染请涟系Bao护@wip1688 | 婷婷丁香熟女| 丁香5月婷婷| 亚洲愉拍99热成人精品| 久久99这里只有精品视频| 国产毛片欧美毛片久久久| 欧美成人无码一区二区三区| 中文字幕欧美日韩VA免费视频| 无码一区二区日韩| 狠狠精品干练久久久无码中文字幕 | yellow视频在线观看91| 在线视频另类| 99久视频| 99极品视频| 激情五月丁香五月| 婷婷五月激情的图片| 亚洲无码色色| 青青草a在线| 99re久久| 内射激情在线| 日本在线观看aaa 99| 天天爽综合网| 久热re在线视频| 欧洲亚洲精品| 4399亚洲视频| 婷婷久久五月| 色五月开心开心五月激情五月| 精品国产乱码久久久久久免费| 综合激情网| 国产精品第一国产精品| 亚洲AV色婷婷人禽五月天| 97碰碰人人视频| 美女五月狠狠| 国产成人AV在线播放| 丁香五月播播| 翔田千里 50岁 无码| 亚洲视频五区| 激情无码五月天| 五月天激情视频| 婷婷六月综合在线| 五月 婷 久| 人人操五月天| 婷婷五月丁香基地在线视频官网| 日本乱子人伦在线视频| 成人 在线 日韩| 亚洲激情视频在线观看| 国产99精品免费视频| 欧美成人一区二区三区在线视频| 五月天玖玖狠狠色色| 亚洲AV无码电影| 婷婷六月激情| 天天综合网、天天综合色| 激情综合婷婷| 五月天色网站| 色婷婷69| 粉嫩AV久久一区二区三区 | 国产伦亲子伦亲子视频观看| 天天舔天天操| 亚洲国产精品成人午夜| 日韩无码专区| 色哟哟精品| 人人操9| 日本久久综合| 五月香六月婷| 开心五月婷| 91精品久久久久| 五月天大香蕉视频| 激情综合九| 欧美三级欧美一级| 97人妻碰碰碰久久香蕉| 人妻久久久| 开心日韩丁香婷婷五月| 亚洲精品乱码久久久久久综合| 欧美激情伊人| 激情五月综合久久| 九九性爱网| 天天肏视奸| 少妇高潮呻吟A片免费看软件| 综合久久综合| www.9797国产| 国产97色在线| 殴美激情综合网| 五月天激情电影| 婷婷中文字幕版| 久鲁鲁色网 | 五月天激情视频网站| 色五月婷婷五月丁香五月激情五月视频 | 日本啪啪天堂| 五月天婷婷综合久久| -91九色大屁股| 天天综合色丁香| 亚州婷婷五月激情综合| 久久精品综合色| 五月婷九九草| 色爽九九| 婷婷五月天美女| 丁香五月婷婷激情小说| 天天草婷婷五月| 婷婷五月天另类视频| 天天插天天狠| 激情婷婷丁香色情五月天| 丁香婷婷人妻综合网| 思思99精品视频在线观看| 婷婷五月成人色综合| 欧美极品999| 婷婷放心五日爱| 伊人婷婷青青cao| 久久精品爱爱| 99re这里只有精品在线观看| 99五月香婷婷丁香在线视频| jizzdr| 俺去也五月天| 亚洲色激情| 色,激情五月天| 色综合色综合色综合| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 99热免费精品| 激情综合网五月| 婷婷6月综合网| seuuu婷婷| 99在线精品观看99| 丁香五月在线播放| 色婷婷五月天综合网| 婷婷视频网| 色婷婷影视99| 亚洲乱码日产精品BD| 色九九九九| 9这里只有精品| 激情五月天视频| 超碰无码老师| 欧美成人AAA片一区国产精品| 色婷婷五月在线| 五月天婷婷高清无码| 99久久精彩视频。| 任我鲁这里有精品视频| 97碰91| 天天日天天色| 都市激情五月婷婷综合| 久激情网| 成人视频在线免费播放| 日本97人人| 丁香六月婷婷久久综合| 国产成人+综合亚洲+天堂| 开心婷婷五月天激情网| 丁香五月婷婷乱| 色五月激情视频在线综合| 色婷婷亚洲在线观看| 日本强伦片中文字幕免费看| 六月丁香五月婷婷| 无码啪啪| 五月天婷综合| 五月婷婷六月丁香在线| 久久人妻在线| www.五月天婷婷姐姐| 午夜婷婷丁香| 高清视频一区| 亚洲无码成人网| 一本到不卡高清DVD| 99色天堂| 丁香五月伊人| 久久久99免费视频| 99综合| 操熟女成人网| 少妇人妻凹凸视频| 五月丁香六月婷婷不卡免费无码| 久久欧洲久久| 九九色婷婷| 久久婷婷东京热| 婷婷丁香五月综合久久| 六月婷综合| 欧美S码亚洲码精品M码| 国产精品色色| 91丨九色丨大屁股| 欧美交换配乱吟粗大25P| 亭亭玉月丁香| 大香蕉520| 亚洲视频99| 伊人国产婷婷五月天 | 婷婷欧美| 久久九九爽| 五月丁香婷婷视频| 日本天天操| 五月激情婷婷丁香天堂| 六月丁香五月天| 激情丁香网| 天天五月香欧美| 亚洲色情久久| 五月开心婷婷网| 综合久久9| 久久WW| 月色色综合婷婷网| www.久久久久久| 激情五月婷婷啪啪| 99玖玖在线视频| 99热在线只有精品| 日本啪啪网| 99亚洲色色| 婷婷五月激情片| 六月婷婷色综合| 丁香五月综合久久| 狠狠狠狠狠狠草| 99热在线看| 99久久婷婷国产综合亚洲| 亚洲国产精品综合色区| 五月天丁香婷婷社区| 蜜臀av粉嫩av懂色av| 碰碰女| 婷婷开心激情| 深爱激情av| 久久色吧| 夜夜爽天天干| www狠狠| 激情婷婷99| 五月婷婷中文字幕AV| 激情综合九月| 久久婷婷五月天丁香| 丁香六月婷婷综合欧美| 婷婷成人网五月天| 国产一级黄色影片,| 色五月人妻| 99自拍网| 影音先锋男人AV资源站| 欧美日韩99| 亚洲激情五月婷婷日日| 九月丁香欧美综合| 九热视频| 久久婷婷五月天| 婷婷五月在线免费| 伊人久热91| 久久女婷| 网站免费一站二站| 五月婷婷影视| 日日噜噜夜夜狠狠久久丁香六月| 自拍盗摄 另类| 伊人超碰| 色亚洲欧洲| 色婷婷狠狠| 99这里的视频都是精品| 天天综合天天玩夜夜玩天天玩夜夜玩 | 欧美群妇大交乱婬网| WWW.桔色成人.COM入口| 久久偷拍综合五月天| 久久婷婷六月综合综合| 成年人丁香五月| 午夜天天精品视频| 久久加勒比| 久9热| 色婷婷丁香五月在线| 婷婷五月天成人综合网| www.jiujiujiu| 91丨九色丨国产打屁股| 九九99热精品| 久久婷婷色| 婷婷五月天综合蜜桃| 五月丁香五月婷婷在线观看| 九九99在线免费在线观看视频| 欧美色综合天天久久综合精品| 亚洲视频码| 99日本在线| 亚洲婷婷丁香五月天激情小说| 毛片色五月| 人妻操逼| www色五月| 99re8这里只有精品99re8热视频| 91麻豆国产三级精品福利在线观看 | www.日本91| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 丰满老熟妇BBBBB搡BBB | 激情 久久 婷婷| 婷婷爱五月| 国产成人AV不卡| 99ri国产精品| 操操碰| 26uuu91| 色婷婷综合亚洲| 国产成人精品亚洲线观看| 操逼电影免费看| 婷婷久久久久| 99久久99热这里只有精品| 久久精彩免费视频| 成人国产欧美大片一区| 97精品自拍视频| 国产亚洲色婷婷99精品| 人妻久久久久久久 | 狠狠摸狠狠摸| 婷婷大香蕉| 久久资源综合| 婷婷激情五月天7| 99热这里只有精品在线播放| 99热只有这里有精品| 久草婷| 亚洲1区| 丁香五月综合网亚洲综合欧美狠狠| 久久精品婷婷| 97超碰99热99| 久久亚洲色导航| 天天干夜夜想| 中文字幕免费高清电视剧| 六月丁香六月婷婷欧美| 日韩人妻操逼视频| 丁香五月天堂网| 一本久婷婷综合| 97干在线视频| 久久五月综合| 最近中文字幕2019视频1| 另类激情码| 九月婷婷丁香| 99在线精品观看99| 热九九九九| 激情99。| www色婷婷| 操b视频在线观看一区二区| 9热超碰| 婷婷久热| 久久五月天婷婷| 疯狂做受XXXX高潮A片| 国产AV不卡福利| 天天碰天天插天天操| 五月婷婷色影院| 亚洲天堂色| 视频这里只有精品| 99色色视频| 国产精品激情AV久久久青桔| 久久五月综合| 婷婷五月免费视频| 丁香花大香蕉婷婷综合| 激情综合网五月天天| 91.com男女操| 天天网曰日曰夜夜综合永久免费| 欧美婷| 日日爽日日| 人妻中文av| WWW.桔色成人.COM| 日日夜夜天天| 青青草轻轻操| 五月天涩涩| 99热这里只有精| 国产精品久久..4399| 婷婷九月丁香| 日韩成人影片在线观看| 九热视频这里只有精品| 激情又色又爽又黄的A片 | 色婷婷久久| 99久在线精品99re5热视频| 九九机热| 色色色色丁香| 深爱激情网婷婷| www.五月天| 97操在线视频| 秋霞成人毛片一级A片| 停停六月 综合| 开心五月天激情| 欧美性生交XXXXX无码小说| 亚洲综合字幕色色| 九月婷婷久久| 久久久www| 五月天激情小说网| 99热在线观看99| 无码色色| 久久精99| 五月第四色| www.ywav| 亚洲综合色棒| 亚洲正能量欧美| 婷婷五月天手机版视频| 国产黄大片在线观看画质优化| 亚洲 日韩色色| 久久精品性爱| 五月刺激丁香月综合| 婷婷操逼网| 国产AV一区二区三区最新精品| 婷婷激情五月天网站| 色婷婷视频| 久久9久| 婷婷的99视频网站| 九月丁香亭亭| 色婷婷电影网| 五月天激情综合网俺也去| 久久9久| 激情伊人| 成人日韩欧美| 99热综合在线| 色综合色| 日韩五月天婷婷| 日本欧美成人片AAAA| 亚洲婷婷月丁香五月| 伊人91| 激情精品久久| 99热在线观看| 五月婷在线视频免费播放| 日本eVa一区=区视频| 亚洲精品五月| 艹色18p| 噜噜视频| 五月丁香花视频| PORNY九色9l自拍视频成人| 日韩成人AV在线播放| 亚洲在线资源| 五月丁香亚洲校园欧美| 97久久超碰| 五月丁香啪啪激情| 99在线资源视频| 色综合久久88色综合天天| 超碰成人在线免费观看| 色色国产| 欧美人人操| 五月天久久婷婷| 综合欧美五月婷婷| 极品人妻VIDEOSSS人妻| www.五月瑟| 大香蕉在线观看9| 人人草人人舔| 综合激情五月丁香| 成人无码髙潮喷水A片| 99精彩视频在线观看| 超碰97在线观看免费| 欧州色色| www.henhenl| 亚洲综合激情五月久久| 色五月丁香激情视频| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 五月丁香六月| 五月婷婷深爱六月| 99caobi| 人妻九九九九| Av性爱网站| 激情五月天婷婷播播久久综合91| 日日噜狠狠色综合久| 欧美日韩成人免费在线| 久99热| 日日肏夜夜干| 国产精品色婷婷久久久精品| 九九热视频这里只有精品| 五月丁香婷婷综合激情基地| 69人人操人人爽| 99自拍视频网站| 深爱 五月天| 久色资源网| 91丨九色丨熟女丰满| 五月天啪啪啪| 五月天婷婷高清无码| 亚州综合色| 激情综合网五月天| www色中色综合| 五月天婷综合| 亚洲激情综合| 成人精品亚洲性爱| 国产精品大香蕉| 成人中文网| 色五月婷婷小说亚洲中文字幕组| 五月天激情国产综合婷婷婷就去爱| 97在线观视频免费观看| 无码色| 五月天色狠狠| 伊人影院久久网| 97色碰| 久色五月婷婷综合| 久久久久99精品成人网站| 色色A| 3www激情| 国产超碰在线| 青吴乐视频| 综合另类视频| 五月天激情日色在线| 玖玖婷婷精品| 思思久久99热只有频精品66| 久久在线大香蕉| 色婷婷精品小视频| 久九九热| 久久AV无码精品人妻系列试探| 网站免费一站二站| 蜜桃婷婷丁香五月天狠狠久久综合| 婷婷伊人綜合中文| 激情婷婷五月天| 五月丁香五月婷婷在线观看| 久久欧洲久久| 日笨久久网| 婷婷久久综合| 99视频| 九月色婷婷综合亚洲| 色播五月丁香| 成人色五婷婷| 欧洲亚洲免费视频区| 精品亚洲日韩99欧美片| 无码激情AAAAA片-区区| 亚洲免费观看高清完整版AV线| 色丁香综合影院| 国产免费av在线| 国产精品人成A片一区二区| 色色国产| 综合色色婷婷| 久热这里只有精品6官网亚洲| 婷婷狠狠爱| 99视频内射三四| 99综合网| 99re这里只有精品在线观看| 国产VA播放| 日都一级A片| 国产精品日本一区二区在线播放| 欧美久久婷婷| 色爱五月天| 亚洲丁香五月天在线视频| 欧美视频五区| www狠狠爱com| 农村熟妇高潮精品A片| 97视频久久| 五月天婷婷丁香社区| 五月噜噜噜色综合| 亚洲成人av在线| 夜色.cnm| 超喷97免费在线视频| 五月婷婷性爱| 色婷婷六月| 狠色狠色综合久久| 中文久久久人妻| 色丁香五月天| 色婷婷AⅤ| 亚洲丁香五冃97色| 欧洲色| 91色婷婷综合久久中文字幕二区| 久久婷婷成人综合色怡春院| 蜜臀九九九九| 天天搞夜夜叫| 色一情一乱一乱一区91| 婷婷久久在线| 操精品9| 午夜天堂一区人妻| 久久婷婷五月| 人人操AV| 天堂久久性| 99亚洲色色| 人妻久久久久久久久妻久久久久| 天天噜天天插| 日韩欧美颜射| 九九狠狠干| 欧美啪啪五月天| 狠狠干.com| 国产亚洲精品AAAA片APP| 天天狠狠夜夜狠狠2023| 久热 91| 天天做天天爱| 丁香久久| 色色色色色色色色色色色色色色,网站| 天天做天天要天天爽| 伊人五月天综合网| 色婷久久| 婷婷五月丁香综合| 棕合影院色色| 色五婷婷| 99热天堂| 97超碰在线免费观看| 久久婷婷东京热大香樵| 日韩AV免费| 丁香婷婷影院| 亚洲天堂色| 亚洲六月综合激情久久下卡| 亚洲成人在线观看av| 国产欧美熟妇另类久久久 | 中文无码婷婷| 91avse| 大香蕉五月婷婷| 色婷久久| 婷婷六月综合基地| 婷婷五月天小说| 99热在线播放| 日韩aaaaa| 亚洲综合五月| 欧美激情VA永久在线播放| 色色网站| 日本欧美成人片AAAA| 色色色色综合| 日日撸夜夜操| 欧美Va婷色| 亚洲色夜| 激情99| 99日本在线| 久久作爱| 99热在线精品观看| 俺去也五月天| 超碰在线99| 性一交一乱一交A片久| 香蕉AV福利精品导航| 做爰丰满少妇1313| 99re欧美精品| 玖玖婷婷五月天毛片| 97碰 在线视频观看| 秋霞网在线免费基地五月婷婷丁香| 丁香五月婷婷www..com| 久久九⑨| 9久热在线视频精品| 7超碰自拍| 丁香五月婷婷激情小说| 婷婷色五月噜噜| 免费99情趣网视频| 五月色丁香国产在线视频| www,五月丁,com| 五月天色视频| 99热色精品| 欧美日本黄色| 天天插综合网| 久久综合久色欧美综合狠狠| 亞洲自怕| 激情五月份婷婷| 99re在线精品视频| 日本波多野结衣视频| 色综啪啪| 五月丁香成年黄色| 97在线/亚洲| wwwss在线观看| 这里只有精品日韩精品| 六月丁香婷婷尤物| 色五月丁香伊人五月| 人人色婷婷| www.久久久久| 噜噜噜狠狠色综合| Aaa久久| 九色地址91视频| 激情五婷网| 激情深愛五月視頻| 色狠狠色狠狠| 天天做天天爱| 五月激情六月综合| 精品国产一区二区三区四区阿崩| 色五月美女| 色综合香蕉| 五月婷成人| 能看的AV网站| 色五月中文网| 色色操| 无码少妇高潮喷水A片免费| 婷婷六月偷拍| 婷婷射图| 亚洲激情高潮| 色播激情五月天| 超碰免费人妻| 成人午夜视频精品一区| 五月婷久草| 任我肏| 91啪啪网| 亚洲网站在线鸭子av| 久久这里有精品99| 激情图片久久| 1000部毛片A片免费观看| 伊人九热| 99啪| 亚洲久久婷婷丁香五月天| 夜夜夜夜夜骑撸| 九九这里都是精品| 丁香六月婷婷缴情欧美| 国产无人区大片| 久久五月天合网| 国产婷婷五月天| 色婷婷操逼| www.色五月| 日本色色网站| 99热久久这里只有精品| jizzdr| 天天干,夜夜爽| 婷婷五月天丁香综合网| 色婷婷综合久久久久| 天天做天天要天天爽| 99热66| www.久久| 色 五月 天 婷婷 丁香 九月| 丁香六月婷月91婷月| 久久婷婷五月综合色丁香| 99久.| 久久大国产香蕉| 久久婷婷五月丁香网| 日操五月婷| 婷婷五月天网址| 欧美内射AAAAAAXXXXX| 91嫩草久久| 色婷婷欧美在线| 五月婷婷婷丁香播| AA片在线观看视频在线播放| 五月婷婷综合影院| 色七色九九| 天天爽天天操| 性做久久久久久久免费看| 99热 在线播放| 国产色色网址网站| 99精品网| 国产精品久久久久久久久久久久| 人人操人人爽成人AV| 婷婷综合成人五月天| 久热一本| av在线免费播放观看| 五月婷在线| 5月丁香啪啪啪| 99热只有| 久热黄色| 六月丁香成人网| 色色色99| 狠狠色丁香婷婷久久综合| 丁香五月婷婷激情123| 超碰人人艹| 成人五月天丁香| 婷婷五月综合中文字幕| 色色网站免费在线视频| 五月天激情婷婷| 久草婷婷在线| 丁香六月婷婷激情综合| 99精品视频免费观看| 国产欧美性成人精品午夜| 丁香激情网| 婷婷操婷婷干婷婷射| 欧美顶级少妇做爰HD| 色99日韩| www.婷婷.com| www久久久久久久久久久| 九九色逼| 婷婷五月免费视频| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 婷婷少妇激情| 中文字幕乱轮| 丁香婷婷综合激情五月色| 99热播放| 99精品视频网| 激情综合网激情五月婷婷| 丁香午月AV中文字幕| 99热网址| 狠狠综合久久综合| 五月色丁香国产在线视频| 激情久久久| 丁香五月婷婷五月| 婷婷五月伦理网站| 无码AV免费精品一区二区三区| 中文字幕不卡+婷婷五月| 亚洲久久激情| 亚洲成人网址在线观看| 狠狠va| 99热这| 大香蕉五月天婷婷丁香91| 亚州操人在线视频| 色色色色色色综合网| 二人电影免费版在线观看| 婷婷午夜激情| 97碰碰视频| 色色色色av色色色色| 亚洲中字AV电影在线网站| 色激情综合狠狠婷婷| 久久9精品| 三级毛片7979| 日韩1区2区| 无毒黄色网址| 99热只有精品在线观看| 99国产精品久久久久久久久久久| 91Chinese在线| 91丨九色丨熟女|老版| 欧美啪啪五月天| 99热这里只有精品最新网址| 激情操逼婷婷| 综合五月亭亭9| 欧美精品999| 99热网站| 九九久久99| 五月婷婷综合久久| 99九九在线视频| www91久久| 五月丁香婷婷六月| 欧美成综合在线观看| 五月激情婷婷开心| 婷婷五月色播天| 日日干干天天干| 亚洲国产精品二二三三区| 综合亚洲五月天| 日日夜夜天天| 高潮毛片遮挡费高一百度| 色色色免费视频| 7777激情基地| www99热| 综合五月婷婷| 色婷婷综合网站| 网色99| 伊人久久婷婷| 久久香蕉影院| 五月婷婷AV| 色九网| 九九色综合九九色| 丁香色五月 97干| 99操99| 六月99天天婷婷激情综合| 五月天婷婷基地| 久热9| 天天爱天天操| 伊人丁香六月婷婷| 超碰久热| 色五月久久成人婷婷| 少妇性按摩无码中文A片| 五月婷婷色男女| 中文字幕丰满孑伦无码专区| 中文字幕日韩无码制服诱或| yazhoujiqingav| www.六月丁香看AV| 日本色超碰| 六月婷婷五月天| 九色激情网| 五月丁香成人| 五月开心婷婷极品激情| 五月天开心网| 丁香 婷婷五月| 韩国中文字幕91| 丁香六月天之亚州热女| 色偷偷人人| 天天干天天干天天| 人人干99| www.婷婷.com| WWW丁香五月| 麻豆观看夏晴子| 亚洲经典小视频| 狠狠久综合| 婷久久| 欧美欧盟性爱网| 国外亚洲成AV人片在线观看| 五月天精品综合在线| 91欧美日韩| 天天干一干| 色碰碰视频| 色色综合网站| 婷婷成人小说综合| 色99超碰| 9999三级片| 九九九精品视频免费观看| 在线观看免费视频| 开心五月激情婷婷| 99色.com| 九九aV| 天天做天天爱天天爽在| Www.sesese丁香| 五月婷婷综合久久| 久久五月激情综合| 日日夜夜天天| 五月天婷婷深深爱| 99资源人人| 成人五月丁香社区| 五月丁了香蕉综合| 亚洲三A| 涩综合婷婷| 婷婷久久五月| 亚州色色色| 一级性感黄色内射视频| 日本久久精品| 久久机热这里只有精品| 在线看黄色| 亚洲免费婷婷| 丁香五月网| 日本123区日韩欧美不卡在线看| 大香蕉五月丁香| 久久99最新| 久久日婷婷| 9精品在线| 色婷婷成人在线| 婷婷五月综合色小姐小说| www.色色五月天.com| 婷丁五月| 丁香五月婷婷老师网站| 99热99精品| 久er7久热| 人操91在线| www.久久久.com| 色婷婷在线视频久| 大香伊人婷婷影院| 亚洲AV免费在线| 爱的综合网| 丁香久月婷| 九九99精品视频在线观看| 黄色笑话深爱激情网丁香五月婷婷啪啪啪啪啪 | 久久婷婷色| 精品人妻久久久| 久久九九精彩| 操一区| 开心激情网在线| 欧美色五月| 色综合99无码 | 99亚洲综合| 婷婷五月天丁香久久| 99精品在线| 婷婷激情5月| 91色九| 久久性爱99国产| 婷婷午夜综合| 成人AV在线网站| 91色吧网| 成人亚洲精品久久久久| 婷婷六月色开 | 色婷婷免费观看| 中文aV网| 中文字幕av在线播放| 国产真人做爰视频免费| 亚洲成人av在线播放| 开心五月婷婷六月丁香| 亚洲有码在线视频| 青草视频在线观看视频| 五月丁香网站| 深爱激情AV| 国产avapp 网| 97色五月婷婷在线| 亚洲精品无码久久| 天天干天天叉| 色婷婷五月影视| 97国产精品女人碰碰| 99在线观看| 亭亭五月丁香五月天激情| 无码一区二区三区四区五区| 亚洲精品成人片在线播| 中文成人在线| 日韩在线视频中文字幕| 久久99久久99精品免观看软件| 久久久www| 亚洲国产黄色电影| 99热超碰在线| www久久艹| 亚洲综合在线丁香五月| 九九色综合| 婷婷色一二三区波多野结衣| 噼里啪啦在线观看免费完整版视频| 久久激情天堂| www,五月天激情| 五月丁香六月综合情在线观看 | 九热视频精品| 91精品国产综合久久久不卡电影| 五月天激情四射| 色色色图| 人人射av| 天天操夜夜爽天天操| 9久久网| 一级AV片| 五月婷婷丁香六月| 噜噜狠狠色综合久| 俺去也在线视频| 思思热闹这里只有精品| 玖玖午夜视频| 超碰免费人人肏| 天天爽天天操| 婷婷五月丁香久久| 激情欧美丁香五月| 99精品视频在线| 婷婷丁香色五月亚洲| 91无码高清| 玖玖婷婷五月天毛片| 国产精品美女久久久久AV超清| 九九综合九九| www,天天干| 99精品在线下载| 午夜色色色极品视频| 96精品久久久久久久久| 九九色黄色| 超pen个人视频97| 丁香六月婷| 久久92| 丁香六月婷婷色XXXXX| www.婷婷,com| 激情综合青草| 久婷| pom538精品视频| 色色色色色日韩午夜激情 | 激情网第九色| 国产精品久久久久久久久久久久| 久久综合中文| 激情五月婷黄版| 丁香五月婷婷在线观看| 激情婷婷五月色| 丁香五月天色| 久九色| 五月丁香自拍| 色综合久久综合| 丁香婷婷婷| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 中美月韩免费A片| 91凹凸在线| 激情六| 亚洲AV中文在线| a色婷婷| 亚洲婷婷丁香五月| 色色亚洲99com| 7EzOBIhNq85TO| 亚洲中文字幕在线观看| 99精品在线观看| 午夜成人网站在线观看| 色婷婷亚洲婷婷| 五月天婷婷影院影院观看| 久8色色| 六月亭亭久久综合激情| 天天操夜夜夜拍拍拍| 六月亚洲婷婷6月中文字幕| 色婷婷五月天av在线| 婷婷中文在线| 五月婷婷中文字幕| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 久久9热综合| 婷婷五月天久| 五月婷婷久久爱| 激情综合五月丁香六月婷婷| 99精品视频播放| 久久九九激情五月天 | 丁香九月综合在线| 丁香五月成人自拍| #NAME?| 97色综合视频| 操草草草| 五月婷无码| 九九久久腿| 奇米影视在线视频| 久久无意婷婷| 日韩性爱无码| 99热全是精品| 五月丁香婷婷啪啪网| 成人在线视频一区| 一起草av在线观看| 大香蕉75线| 九九色播五月丁香| www一起操| 中文资源在线a| 99综合久久| 99色综合| 丁香五月AV综合| 激情综合网之激情五月| 亚洲激情高潮| 天天舔天天| 色爱终和网| 另类综合婷婷五月天欧美视频| 五月亚洲| 天天爽天天日| 99色热| WWW99热| 婷婷综合| 激情五月综合| 八戒青柠影视剧在线观看| 夜夜操加勒比| 97伦色婷婷| 九九热91| 久久新地此| 丁香花五月天激情| 99热超碰| 久色成人| 久久婷婷五月天激情唯美| 天天插插天天| 夜夜久久综合网| 丁香五月综合| 狠狠综合| 丁香五月天久久| se婷97| 激情久久久久久久久久久| 91一起操| 99久久国产成人精品| 激情五月婷婷综合视频| 九九免费精品| 久久久人妻| 中文字幕在线观看视频www| 国产激情久久久| 五月激情丁香啪啪| 在线不卡的视频| 97色色婷婷五月天| 亚州精品色情无码A片| 丁六月激情| 色五月综合激情| 综合伊人久久| 色色色com| 亚洲精品久久久无码| 色婷婷亚洲综合天堂| 久久WW| 色婷婷丁香网| 这里只有精品在线播放| 婷婷金品综合视频| 玖玖爱综合网| 丁香五月偷拍| 人妻第九页| 色色婷婷婷丁香五月天| 超碰在线观看99| 久久九九99.www| www.com亚洲网站在线免费| 色噜噜综合网| 美女要搞搞天天搞搞搞网站| 激情五月丁香六月综合AVXXXX| 美欧日韩国产成人在战| 久久9视频| 丁香五月婷婷综合激情哟哟哟| 久久人人九| 亚洲激情图文小说| 久久久久久久合一狠狠做深爱| 欧美天堂久久| www.婷婷| 97性高潮久久久| 7777激情基地| 日日射天天射| 五月精品| 亚洲激情四射| 丝袜熟女一区二区三区| 精品久久9| 婷婷婷五月天最新综合你懂的| 五月丁香啪啪啪| 天天爱天天操|