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

ARTICLE DETAIL

資訊詳情

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

用LiteLLM統(tǒng)一多模型調(diào)用:部署、配置與生產(chǎn)避坑指南

用LiteLLM統(tǒng)一多模型調(diào)用:部署、配置與生產(chǎn)避坑指南 先交代一下背景吧。最近一年多我接手的幾個項目都繞不開大模型調(diào)用這件事。有的模塊要用海外閉源模型做復(fù)雜推理有的要用國內(nèi)開源模型走私有化部署還時不時有人提“能不能順手把某個本地小模型也接進來做個兜底”。最讓我頭疼的不是模型效果而是每個服務(wù)都有自己的SDK、鑒權(quán)方式、請求體和響應(yīng)結(jié)構(gòu)。業(yè)務(wù)代碼里塞滿了針對不同供應(yīng)商的分支邏輯換一個模型要改好幾處日志格式也不統(tǒng)一線上出問題根本沒法快速定位。后來我把這些調(diào)用全部收斂到一個開源網(wǎng)關(guān)層來處理也就是標題里寫的litellm。它做的事情可以用一句話說清楚把各種模型提供方的API統(tǒng)一成同一個協(xié)議格式對外暴露一套標準接口。這樣一來業(yè)務(wù)端只需要對接一次后續(xù)換模型、加模型、做負載均衡和自動重試全都在網(wǎng)關(guān)層完成不用再改業(yè)務(wù)代碼。這篇文章就圍繞這個工具把我從部署、配置到生產(chǎn)環(huán)境踩坑的完整過程梳理一遍給同樣被多模型調(diào)用折騰的人一個參考。1. 先搞清楚litellm到底解了什么難題1.1 多模型調(diào)用格式不統(tǒng)一的真實痛點先說一個最常見的場景。很多團隊一開始只接了一家模型服務(wù)代碼寫得很順。等第二個項目要換另一家模型供應(yīng)商時就會發(fā)現(xiàn)事情遠沒有想象中簡單。表面上大家都是“發(fā)一個HTTP請求、傳一段提示詞、拿回一段生成結(jié)果”但細節(jié)上的差異非常磨人。我用一個表格來對照一下不同供應(yīng)商常見的差異點你就明白為什么需要一層統(tǒng)一的處理差異維度供應(yīng)商A的典型行為供應(yīng)商B的典型行為鑒權(quán)方式請求頭帶指定前綴的密鑰使用獨立的訪問令牌過期需刷新請求地址路徑中包含版本號路徑中不區(qū)分版本靠參數(shù)區(qū)分請求體字段參數(shù)名較長需要嵌套結(jié)構(gòu)參數(shù)平鋪命名更簡潔模型參數(shù)溫度和采樣數(shù)等參數(shù)齊全部分參數(shù)不支持傳了會報錯響應(yīng)體結(jié)構(gòu)生成內(nèi)容嵌在多層嵌套字段中生成內(nèi)容直接在頂層字段中返回報錯信息返回標準錯誤碼加說明返回自定義錯誤結(jié)構(gòu)錯誤碼含義不同流式輸出數(shù)據(jù)幀格式統(tǒng)一數(shù)據(jù)幀格式有差異需要單獨解析這些差異一旦疊加在同一個代碼庫里就會變成大量適配代碼。比如我在一個項目里同時接了三家服務(wù)光是請求體的組裝函數(shù)就寫了六七個版本每個版本還帶自己的異常處理邏輯。后面為了排查一次“生成結(jié)果為空”的問題我不得不分別打開三套文檔對著三家不同的返回結(jié)構(gòu)做比對前前后后花了大半天。這些時間本來不應(yīng)該花在“連接口都調(diào)不通”這種體力活上。litellm這種工具的存在本質(zhì)上就是為了消除這層重復(fù)勞動。它把“不同供應(yīng)商的差異”集中在一個配置層解決讓下游業(yè)務(wù)永遠只面對一套穩(wěn)定的協(xié)議。1.2 它本身不是什么魔法請求代理的運轉(zhuǎn)邏輯我第一次接觸litellm時一度以為它是個復(fù)雜的模型調(diào)度框架需要在項目里引入重型依賴。實際了解下來它的核心邏輯比我預(yù)想的簡單直接它是一個請求代理。用一個生活化的比喻來說它就像前臺接待員。你不需要知道公司里每個具體部門的人長什么樣、坐在哪個工位只需要把需求告訴前臺前臺會根據(jù)你的需求去找對應(yīng)的部門溝通再把結(jié)果帶回來交給你。litellm扮演的角色就是那個前臺業(yè)務(wù)方永遠用同一套方式“提需求”至于后面到底是哪家模型服務(wù)在真正響應(yīng)業(yè)務(wù)方完全不感知。這個“前臺”在技術(shù)實現(xiàn)上就是一個常駐的代理服務(wù)。啟動后它會在本地監(jiān)聽一個端口對外提供與主流模型服務(wù)高度兼容的HTTP接口。業(yè)務(wù)代碼只要把請求發(fā)到這個地址網(wǎng)關(guān)層會負責解析、鑒權(quán)、轉(zhuǎn)發(fā)、接收響應(yīng)再把響應(yīng)換算成統(tǒng)一格式返回給調(diào)用方。很多人可能會問多加一層網(wǎng)絡(luò)請求是不是意味著性能損耗這個損耗確實存在但通常非常小。請求本身只有一次額外的本地轉(zhuǎn)發(fā)內(nèi)網(wǎng)環(huán)境下基本在毫秒級。相比它帶來的“業(yè)務(wù)代碼零適配”收益這點開銷幾乎可以忽略。我在生產(chǎn)環(huán)境實際壓測過加了這層代理之后單次請求的延遲增加大約在個位數(shù)毫秒用戶體驗上完全無感。2. 從零部署虛擬環(huán)境、配置文件和第一次代理啟動2.1 安裝與最簡單的啟動方式litellm的安裝官方推薦使用Python環(huán)境安裝命令也很簡單pip install litellm[proxy]這里要注意一個細節(jié)安裝包名稱后面帶了[proxy]后綴這表示要安裝帶代理功能的完整版本。如果只裝litellm本體你只能使用Python SDK的調(diào)用能力起不了代理服務(wù)。不少第一次上手的人就是在這踩了坑裝了之后發(fā)現(xiàn)沒有l(wèi)itellm --port這個命令。安裝完成后最簡單的啟動方式是這樣litellm --model 某海外大模型服務(wù)/某模型名 --port 8000直接通過命令行指定模型和端口litellm就會啟動一個最基本的代理。這種模式適合快速驗證工具本身好不好用。但說實話我在項目里幾乎不會用這種方式跑生產(chǎn)因為它所有配置都靠命令行參數(shù)時間長了根本記不住哪條命令對應(yīng)哪個環(huán)境。更推薦的做法是寫配置文件。還有一個比較重要的事我建議用虛擬環(huán)境來裝。因為litellm的依賴比較多而且和很多AI相關(guān)的Python庫存在版本交集直接裝到系統(tǒng)環(huán)境里很容易和項目里的其他庫相互干擾。我后來就把所有模型網(wǎng)關(guān)相關(guān)的東西統(tǒng)一放到了獨立的虛擬環(huán)境中需要升級或者排查依賴問題時直接重建虛擬環(huán)境干凈利落。2.2 config.yaml里的關(guān)鍵字段說明生產(chǎn)環(huán)境部署時我的習(xí)慣是把所有模型供應(yīng)商信息寫進一個YAML配置文件。這樣做的好處是模型增刪改都只需要改配置文件然后重啟代理即可不需要改動任何業(yè)務(wù)代碼。一個最基礎(chǔ)的配置文件長這樣model_list: - model_name: gpt-like litellm_params: model: 某海外大模型服務(wù)/某模型名 api_key: os.environ/某海外服務(wù)密鑰 - model_name: gpt-like litellm_params: model: 某國內(nèi)開源模型服務(wù)/某模型名 api_key: os.environ/某國內(nèi)服務(wù)密鑰 api_base: https://某國內(nèi)服務(wù)地址/v1 litellm_settings: drop_params: true set_verbose: true general_settings: master_key: sk-1234 database_url: os.environ/DATABASE_URL逐項解釋一下。model_list是整個配置的核心它定義了這個網(wǎng)關(guān)能代理哪些模型。注意每一項里都有model_name和litellm_params兩個部分。model_name是對外暴露的名稱業(yè)務(wù)方調(diào)用時只知道這個名字litellm_params則是實際轉(zhuǎn)發(fā)時需要用到的參數(shù)包括真正的模型標識、供應(yīng)商的密鑰、請求地址等。這里有個很關(guān)鍵的設(shè)計點model_name可以重復(fù)。也就是說你可以讓兩個不同的真實模型共用同一個對外名稱。這個特性后面在做自動切換和負載均衡時非常有用先記著。litellm_settings里我比較關(guān)注drop_params這個選項。前面說過不同供應(yīng)商支持的超參數(shù)種類不一樣如果把供應(yīng)商A的參數(shù)傳給供應(yīng)商B對方可能直接報錯。開啟drop_params之后litellm會自動過濾掉目標供應(yīng)商不支持的參數(shù)避免請求失敗。這個選項在接入多家供應(yīng)商時幾乎必開。general_settings里的master_key是網(wǎng)關(guān)的管理密鑰客戶端請求時需要在請求頭帶上這個密鑰才能訪問。database_url是可選配置用于持久化請求日志和預(yù)算數(shù)據(jù)。生產(chǎn)環(huán)境建議配上數(shù)據(jù)庫否則網(wǎng)關(guān)重啟后日志就丟了。2.3 用curl驗證代理轉(zhuǎn)發(fā)是否正常配置寫好后用一條curl命令就能驗證整個鏈路是否打通curl http://localhost:8000/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer sk-1234 \ -d { model: gpt-like, messages: [ {role: user, content: 你好請用一句話介紹你自己} ] }如果一切正常你會收到一段結(jié)構(gòu)完整的響應(yīng)里面有生成的內(nèi)容、使用的模型、token用量等信息??吹竭@段響應(yīng)說明代理服務(wù)已經(jīng)成功把你的請求轉(zhuǎn)發(fā)給了真實的模型服務(wù)并拿到了結(jié)果。第一次驗證時如果遇到問題優(yōu)先看兩個地方。一是啟動代理的那個終端窗口有沒有輸出錯誤日志大多數(shù)轉(zhuǎn)發(fā)失敗的原因都會直接打在那里二是確認配置文件里的密鑰和模型名是否真實有效。我曾經(jīng)因為復(fù)制配置時多了個空格導(dǎo)致認證一直失敗排查了半天才發(fā)現(xiàn)是YAML解析后的值尾巴上帶了個不可見字符。2.4 只需改base_url業(yè)務(wù)代碼幾乎不動代理跑通之后業(yè)務(wù)代碼的改動可以說小到令人驚訝。以官方SDK風(fēng)格的調(diào)用方式為例改之前是這樣的from 某海外大模型服務(wù) import Client client Client(api_key真實密鑰) response client.chat.completions.create( model某模型名, messages[{role: user, content: 你好}] )改之后是這樣from 某海外大模型服務(wù) import Client client Client( base_urlhttp://localhost:8000/v1, api_keysk-1234 ) response client.chat.completions.create( modelgpt-like, messages[{role: user, content: 你好}] )看到區(qū)別沒有業(yè)務(wù)代碼幾乎原封不動唯一變化的是base_url指向了本地代理api_key換成了網(wǎng)關(guān)的密鑰model換成了網(wǎng)關(guān)里配置的對外名稱。這一點極其重要。這意味著你不需要為litellm引入任何新的SDK不需要重寫調(diào)用邏輯甚至連已有的調(diào)用代碼都可以直接復(fù)用。我接手的一個老項目里原來的調(diào)用代碼還停留在比較舊的參數(shù)寫法上我本來以為要花大力氣改造結(jié)果只是把base_url和api_key兩個配置項替換掉接口就跑通了這個體感真的很爽。3. 統(tǒng)一響應(yīng)格式一份日志和一套錯誤碼帶來的連鎖便利3.1 響應(yīng)體結(jié)構(gòu)統(tǒng)一后下游處理簡化了多少調(diào)用跑通只是第一步真正讓業(yè)務(wù)代碼變清爽的是響應(yīng)格式的統(tǒng)一。在沒有網(wǎng)關(guān)時不同供應(yīng)商返回的JSON結(jié)構(gòu)五花八門。有的把生成內(nèi)容放在一個多層的嵌套結(jié)構(gòu)里有的放在頂層的某個字段里還有的在返回內(nèi)容的同時附帶一堆你根本用不到的信息。業(yè)務(wù)端為了兼容這些差異往往會寫好幾個解析函數(shù)每個函數(shù)負責一種結(jié)構(gòu)再通過分支判斷決定走哪個解析邏輯。接入litellm之后所有響應(yīng)都會轉(zhuǎn)換成標準結(jié)構(gòu)生成內(nèi)容統(tǒng)一放在固定位置token用量統(tǒng)一放在另一個固定位置整個響應(yīng)體的層次結(jié)構(gòu)完全一致。我原來有七八個分支的解析函數(shù)直接刪掉絕大部分只保留了一個針對標準結(jié)構(gòu)的解析邏輯。代碼量一下子少了很多可讀性和可維護性都上來了。更重要的是新同事接手項目時不用再逐個了解每家供應(yīng)商的響應(yīng)結(jié)構(gòu)了只需要看一份文檔——就是litellm對外輸出協(xié)議的標準說明上手成本大幅降低。3.2 錯誤碼與重試邏輯的統(tǒng)一處理響應(yīng)格式統(tǒng)一之外錯誤碼體系的統(tǒng)一是我一開始沒預(yù)料到的增值點。未引入網(wǎng)關(guān)前不同供應(yīng)商的報錯風(fēng)格差異很大有的會返回HTTP層錯誤有的會在響應(yīng)體里放自定義錯誤碼有的錯誤信息是一大段英文描述很難直接映射到業(yè)務(wù)邏輯里。這就導(dǎo)致我在業(yè)務(wù)代碼里寫重試邏輯時得針對不同錯誤類型分別判斷哪些值得重試、哪些不重試規(guī)則亂成一團。litellm把所有錯誤都映射成了一套統(tǒng)一的錯誤類型。比如上游模型服務(wù)被限流時即使原始報錯五花八門通過網(wǎng)關(guān)出去的標準響應(yīng)里業(yè)務(wù)端看到的都是統(tǒng)一的限流錯誤標識這是一個非常關(guān)鍵的收斂。業(yè)務(wù)端重試策略只需要判斷這一種錯誤即可統(tǒng)一限流錯誤說明上游資源暫時不足可以保守重試統(tǒng)一超時錯誤說明請求處理時間過長可能需要調(diào)整超時時間或改用更快的模型統(tǒng)一鑒權(quán)錯誤說明密鑰或配置有問題這類錯誤重試沒有意義直接告警。我把這套邏輯用在了項目里的一個批處理任務(wù)上。之前對接多家供應(yīng)商時重試參數(shù)五花八門現(xiàn)在全部收斂成統(tǒng)一策略批處理任務(wù)的失敗率肉眼可見地下降了。3.3 流式輸出來回切換的實際效果除了普通響應(yīng)流式輸出的一致性也值得一提。很多應(yīng)用在做打字機效果時需要用到流式輸出也就是數(shù)據(jù)一段段實時返回。不同供應(yīng)商的流式輸出格式差別同樣很大有的按行返回有的按事件塊返回有的還夾雜心跳包和額外元數(shù)據(jù)解析成本非常高。通過litellm做流式轉(zhuǎn)發(fā)后業(yè)務(wù)端收到的就是統(tǒng)一的流式格式。我在項目里寫了一個簡單的測試分別用三家模型跑同一段流式輸出然后對比收到的每一幀數(shù)據(jù)結(jié)果前綴部分完全一致幀結(jié)構(gòu)也相同。這意味著前端展示邏輯只寫一套流式解析就能通用不用再針對不同供應(yīng)商做特殊處理。我還試過在同一個請求里來回切換普通模式和流式模式只要在請求參數(shù)里改一個布爾值就可以網(wǎng)關(guān)層會正確處理不需要業(yè)務(wù)端做任何額外的適配工作。4. 多模型自動切換、負載均衡與失敗重試的配置策略4.1 把三個模型配置成一個“虛擬模型組”的具體寫法前面提到model_list里的model_name可以重復(fù)這個特性可以用來實現(xiàn)“多模型對外暴露為同一個名稱”的效果。我把三個不同供應(yīng)商的模型配置成了同一個對外名稱業(yè)務(wù)方完全無感知但網(wǎng)關(guān)層已經(jīng)具備了三選一的能力。配置寫法大致如下model_list: - model_name: unified-model litellm_params: model: 供應(yīng)商A/模型A api_key: os.environ/密鑰A - model_name: unified-model litellm_params: model: 供應(yīng)商B/模型B api_key: os.environ/密鑰B - model_name: unified-model litellm_params: model: 供應(yīng)商C/模型C api_key: os.environ/密鑰C三個真實模型共享同一個對外名稱。你可能會問它們效果完全不同對外暴露同一個名字業(yè)務(wù)方怎么知道用哪個答案是業(yè)務(wù)方不需要知道。這種配置方式通常搭配路由策略使用由網(wǎng)關(guān)層決定每次請求實際轉(zhuǎn)發(fā)給哪個模型。這樣配置之后想要在三個模型之間切換不再需要改業(yè)務(wù)代碼只需要調(diào)整網(wǎng)關(guān)層的策略就行。我在一個內(nèi)部工具項目里就是這么配的。不同時候不同模型的可用性、效果、成本都在變化有了這層虛擬模型組我可以隨時把某個表現(xiàn)不好的模型從路由池里摘掉或者調(diào)低它的權(quán)重全部在配置文件里完成整個過程業(yè)務(wù)方無感知。4.2 負載均衡與重試的細節(jié)參數(shù)配置好多個模型之后litellm會默認按順序輪詢分發(fā)請求但真正生產(chǎn)環(huán)境肯定要做更精細的控制。我實際使用的配置里加了這樣幾項參數(shù)litellm_settings: num_retries: 3 request_timeout: 30 fallbacks: [{ unified-model: [供應(yīng)商A/模型A, 供應(yīng)商B/模型B] }] allowed_fails: 3 cooldown_time: 60逐項說下我的理解。num_retries是同一個請求在遇到暫時性錯誤時的重試次數(shù)我設(shè)為3次。注意這里有一個值得注意的機制超過指定次數(shù)后如果仍然失敗litellm會按照fallbacks配置的順序把請求轉(zhuǎn)發(fā)給備用模型。比如主模型限流了重試幾次都不行就直接切換備用模型這個機制對線上可用性提升非常明顯。request_timeout是網(wǎng)關(guān)等待上游模型響應(yīng)的最長秒數(shù)。設(shè)得太短大模型思考時間長一點就會被判定為超時設(shè)得太長上游如果卡住了業(yè)務(wù)端會一直干等。30秒是一個比較折中的值大家可以根據(jù)實際請求長度調(diào)整。cooldown_time是熔斷冷卻時間。當某個模型連續(xù)出錯達到一定次數(shù)后litellm會在一段時間內(nèi)自動把它標記為不可用不再往它上面分發(fā)新請求。這個機制能有效避免一個故障模型持續(xù)拖垮整個網(wǎng)關(guān)。4.3 權(quán)重策略在真實項目中的使用心得除了默認的輪詢方式litellm還支持按權(quán)重分配流量。我比較常用的一種策略是按照成本來分配便宜模型分到的流量多一點貴的模型只在必要時使用。具體寫法是在每個模型的litellm_params里加一個權(quán)重字段配好后每次請求按權(quán)重做隨機選擇。比如我給模型A配置了較高的權(quán)重意味著平均每十次請求有較多次打給它剩余次數(shù)打給模型B。權(quán)重策略在我實際使用時主要解決了兩個問題。一個是成本控制如果某個模型雖然效果好但貴我會給它一個較低的權(quán)重讓便宜的模型分擔大部分簡單請求。另一個是灰度驗證新接入一個模型時先給它一個小的權(quán)重讓它承接一小部分流量觀察一段時間沒有問題后再逐步調(diào)高權(quán)重相當于一種流量灰度機制。不過這里要提醒一句權(quán)重策略無法保證同一用戶的不同請求特性被保留比如希望某個用戶的所有請求都打到同一個模型上權(quán)重模式做不到這種情況需要按其他維度做路由最好提前想清楚自己的業(yè)務(wù)是否需要會話級或用戶級一致性。5. 生產(chǎn)環(huán)境必踩的坑與我的修復(fù)過程5.1 版本重復(fù)安裝帶來的兼容性問題這個坑我印象很深。最開始我是圖省事直接用系統(tǒng)Python環(huán)境裝了litellm后面有一個項目引入了另一個依賴庫安裝時順便把litellm的依賴版本升了一下。結(jié)果整個網(wǎng)關(guān)直接起不來了報了一個很長的依賴沖突錯誤關(guān)鍵信息藏在日志中間不仔細看根本發(fā)現(xiàn)不了。后續(xù)排查發(fā)現(xiàn)系統(tǒng)環(huán)境里同時存在兩個版本的litellm相關(guān)文件一個被舊項目引用一個新項目又在用另一個版本兩個版本之間互相覆蓋導(dǎo)致加載時出現(xiàn)了錯亂。這個問題最終的解決辦法有兩條缺一不可。第一條給litellm單獨建一個虛擬環(huán)境和項目環(huán)境隔離。第二條在虛擬環(huán)境里固定litellm的版本號安裝不輕易升版本。后續(xù)每次要升級時先在測試環(huán)境跑一遍主要流程確認沒有兼容性問題后再更新生產(chǎn)環(huán)境。這看起來是常識但我在這個坑上花掉的時間一點都不少寫出來是希望后來者別再重復(fù)一次。5.2 流式輸出超時與keep-alive參數(shù)另一個讓我折騰比較久的問題是流式輸出偶爾會“卡住”。具體現(xiàn)象是打字機效果剛開始時一切正常輸出到一半突然停住過了一段時間前端報超時錯誤。剛開始我以為是模型生成太慢調(diào)大了請求超時時間問題依舊。后來我去翻了網(wǎng)關(guān)的日志發(fā)現(xiàn)請求其實一直在正常轉(zhuǎn)發(fā)上游也有數(shù)據(jù)陸續(xù)返回但客戶端和網(wǎng)關(guān)之間的連接被斷開了。原因在于流式請求的處理時間較長而承接業(yè)務(wù)端與網(wǎng)關(guān)之間的連接服務(wù)在空閑一段時間后主動關(guān)閉了連接。前端沒有收到任何數(shù)據(jù)自然就認為請求超時了。解決辦法是在網(wǎng)關(guān)和業(yè)務(wù)端的連接層配置保持活躍參數(shù)確保長連接不因空閑被回收。同時在流式請求的協(xié)議層約定一個心跳機制每隔一段時間發(fā)送一個空消息提醒連接不要關(guān)閉。改完之后再長的輸出也能穩(wěn)定跑完。這個坑比較隱蔽因為報錯信息看起來像模型問題實際卻是網(wǎng)絡(luò)連接層面的問題。排查鏈路值得記錄先確認上游是否有數(shù)據(jù)再確認數(shù)據(jù)是否到達網(wǎng)關(guān)最后確認網(wǎng)關(guān)到業(yè)務(wù)端的連接是否穩(wěn)定一環(huán)一環(huán)拆開看很快就能定位到問題出在哪個環(huán)節(jié)。5.3 并發(fā)額度較低時的隊列表現(xiàn)第三個坑比較讓人頭疼和上游模型服務(wù)的并發(fā)限制有關(guān)。我當時部署的某個開源模型的推理服務(wù)并發(fā)能力比較有限而網(wǎng)關(guān)這邊的請求量又不小導(dǎo)致大量請求打到上游后被限流拒絕。由于網(wǎng)關(guān)本身有重試機制這些請求會進入重試隊列重試又繼續(xù)被限流最終形成了一種請求雪崩網(wǎng)關(guān)的線程池被占滿所有請求都在排隊等待重試包括那些原本可以正常處理的請求。發(fā)現(xiàn)問題后我做了三個調(diào)整。第一在litellm的配置里給這個模型設(shè)置了一個每分鐘請求速率上限給上游一個喘息空間。第二關(guān)閉了對限流類錯誤的自動重試讓這類請求快速失敗而不是反復(fù)打上去。第三在業(yè)務(wù)端加了一個信號量限制同時進行的請求數(shù)量避免一次性涌入太多。調(diào)整之后整個系統(tǒng)的穩(wěn)定性明顯好轉(zhuǎn)正常請求的響應(yīng)時間也降下來了。這個坑的本質(zhì)是重試機制和限流疊加產(chǎn)生了放大器效應(yīng)理解了這個因果鏈條許多并發(fā)場景下的類似問題都能看穿。5.4 啟動后找不到配置文件的排查鏈路最后這個小坑很基礎(chǔ)但幾乎人人都會遇到我在某個目錄下啟動litellm時用了相對路徑指定配置文件啟動時報找不到文件。單獨看這條命令一點問題沒有但換到另一個目錄去啟動時相對路徑指向的位置就不存在了。這不算什么高深問題但解決思路值得總結(jié)。我把配置文件的路徑改成了絕對路徑同時在啟動腳本里顯式指定配置文件位置避免依賴“當前所在目錄”這個隱式狀態(tài)。后來我干脆把啟動命令封裝成了一個固定的啟動腳本腳本里固定好虛擬環(huán)境路徑、配置文件路徑、日志輸出路徑每次直接執(zhí)行腳本即可。實踐下來這樣不僅避免了路徑問題還大大降低了誤操作的概率。6. 預(yù)算、密鑰與審計日志網(wǎng)關(guān)該管的事別交給業(yè)務(wù)代碼6.1 把密鑰管理收斂到config.yaml之后多模型時代密鑰管理是個容易被忽視的問題。假設(shè)業(yè)務(wù)代碼直接調(diào)用了供應(yīng)商的密鑰那這些密鑰就會散落在各個項目的環(huán)境變量里、配置文件里甚至可能被提交到代碼倉庫。一旦泄露風(fēng)險和排查成本都很高。把litellm當作統(tǒng)一入口之后所有供應(yīng)商的密鑰都集中存放在網(wǎng)關(guān)配置層業(yè)務(wù)代碼只認網(wǎng)關(guān)的密鑰。這就把密鑰的暴露面從“多份”收斂到了“一份”。我在項目里配合密鑰管理服務(wù)來存放配置里的敏感信息整個系統(tǒng)對供應(yīng)商密鑰的引用全部通過環(huán)境變量注入不在任何明文配置文件里出現(xiàn)。這里要特別提一下業(yè)務(wù)端使用的網(wǎng)關(guān)密鑰和上游供應(yīng)商密鑰最好嚴格分離。業(yè)務(wù)端只需要擁有調(diào)用網(wǎng)關(guān)的權(quán)限而真實的供應(yīng)商密鑰只存在網(wǎng)關(guān)側(cè)。這樣即使某個業(yè)務(wù)端的密鑰泄露影響范圍也僅限于這個業(yè)務(wù)端能調(diào)用的模型不至于把上游供應(yīng)商的全部賬戶權(quán)限都暴露出去。6.2 預(yù)算限制字段與實際觸發(fā)效果litellm還提供了預(yù)算控制能力可以在配置里限制單個密鑰、單個模型或整個網(wǎng)關(guān)的月度消耗上限。我在項目里給內(nèi)部工具配置過一個月的總預(yù)算設(shè)置方式是在general_settings里加預(yù)算字段general_settings: master_key: sk-1234 max_budget: 100 budget_duration: 30d意思是30天內(nèi)總消耗預(yù)算為100美元。當累計消耗達到這個上限時網(wǎng)關(guān)會自動拒絕新的請求并返回預(yù)算超限錯誤。測試時我特意用一個臨時密鑰配置了極低的預(yù)算觸發(fā)之后觀察到的現(xiàn)象是業(yè)務(wù)端收到的是統(tǒng)一格式的預(yù)算錯誤日志里也能看到網(wǎng)關(guān)記錄了預(yù)算超限的審計信息。這個功能最大的價值在于給業(yè)務(wù)方一個“安全墊”。特別是那些對成本敏感的自動化任務(wù)如果因為模型調(diào)用失控而產(chǎn)生高額賬單預(yù)算限制能避免損失擴大。我個人建議每個接入網(wǎng)關(guān)的內(nèi)部項目都設(shè)置預(yù)算上限哪怕設(shè)置得寬松一些也好過完全沒有防線。6.3 用請求日志定位線上問題的流程最后說說審計日志。litellm支持把每一次請求的詳細信息記錄到數(shù)據(jù)庫包括請求時間、調(diào)用的模型、消耗的token數(shù)量、響應(yīng)耗時、狀態(tài)碼等。這些日志在線上問題排查時價值極高。有一次線上反饋某個功能變慢了我通過日志篩選出那個時間段內(nèi)的請求記錄按響應(yīng)耗時排序發(fā)現(xiàn)耗時長的主要集中在某個特定模型上而其他模型基本正常。進一步分析之后確認是那個模型的推理服務(wù)負載過高導(dǎo)致的于是我把網(wǎng)關(guān)里該模型的權(quán)重降低把流量分流到其他模型上問題很快緩解。整個過程大概花了十分鐘如果沒有日志排查這個問題的鏈路會漫長得多。建議不要等出問題了再考慮加日志從一開始就配上數(shù)據(jù)庫存儲日志養(yǎng)成看日志的習(xí)慣。日志就是系統(tǒng)的黑匣子關(guān)鍵時刻能幫你省下大量時間。最后分享一個我個人的小習(xí)慣每次修改配置文件前都先備份一份帶日期的副本再動原文件。這個習(xí)慣幫我避免了好幾次“改壞配置但不知道改了什么”的尷尬。另外升級litellm前我會先跑一個測試腳本把常用的模型調(diào)用、流式輸出、錯誤重試全部走一遍確認沒有回歸再正式切換版本。這些看起來不起眼的細節(jié)長期累積下來是讓整個網(wǎng)關(guān)穩(wěn)定運行的重要保障。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香六月婷| 欧美五月丁香在线| 久久婷婷成人综合色怡春院| 色99网站| 五月天伊人手机在线播放AV| 五月丁香激情五月天| 久综合4| 久久99热这里只频精品6学生| 99久久综合| 免费一区二区三区| 亚洲精品久久久久久久久久飞鱼| a网站免费观看| 99热费观看| 九九色精品| 青草性爱视频| 六月婷欧美| 99热这里只有精品8| 婷婷五月天久久久| 欧美日本一区二区三区| 人人干人人操人人摸人人做| 秋霞学生妹一二级| 婷婷 久综合| 99色播| 欧美五月婷婷| 天天插天天狠| 五月婷婷色啪| 五月久视频| 99热永久在线观看| 99综合| 亚洲激情Av| 六月丁香久久| 国产国产乱老熟女视频网站97| 久久九九大香蕉电院| 激情婷婷五月久久| 在线视频另类| 色播婷婷大香蕉| 9色免费网| 婷婷香蕉精品| 在线亚洲综合网| 亚洲精品又粗又大又爽A片| 狠狠综合久久| 久色视频| 久久AV无码精品人妻系列试探| 亚洲高清在线| 激情婷婷五月| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 婷婷五月丁香激情| 丁香97综合| 国产精品美女久久久久AV超清 | 婷婷中文字幕| 97色色色色色| 成人做爰A片免费看视频| 色色色干| 粉嫩AV久久一区二区三区| 色综合久久久久| www.婷婷五月天| 久大香蕉| 欧美顶级少妇做爰HD| 五月婷婷第四色| 欧美综合丁香网| 久久久久久久久久久久63| 伊人网色婷婷五月天| 无码视频国内精品久久久| 丁香五月成人| www.99热这里精品| 国产片天天爽夜夜爽| 超碰大香蕉网| www 五月天 com| 丁香六月婷婷综合麻豆| 狠狠色狠狠操| 超碰人妻在线| 人人草碰| 久久这里在精品视频| 久久er+| 五月丁香网站在线播放| 天天操天天干天天日| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 五月婷婷婷丁香播| 99爱视频在线| 亚洲无码影音| 91人人爽狠狠狠| 色性综合| 深爱激情婷| 国产亚洲精品久久一区二区三区| 99热网站| 超碰在线个人观看| 丁香五月在线人妻| 亚洲va欧美va天堂v国产综合| 婷婷成人视频| 中文中文在线| 激情综合久久| 五月丁香六月婷婷亚洲综合| 26uuu成人网| 无码免费人妻A片AAA毛片西瓜| 婷婷偷拍网| 囯产精品一品二区三区| 激情色播| 日韩免费99| 9er热在线精品视频| 五月天婷婷人妻| 99热99干| 亚洲AV无码影院| 青青热久久综合| 狠狠人人婷婷| 五月天另类小说久久小说网| 九九这里只这里只有精品| 无码任你操| 色色色色综合| 久久久久亚洲AV无码网影音先锋| 99热在线观看精品免费| 四季8848精品成人免费网站| 婷婷久草| 少妇人妻人伦A片| 色色国产| 久久这里精彩免费在线观看| 狠狠人妻色综合| 婷久久高清| 久久五月丁香| 亚洲欧美婷婷五月色综合| 日本波多野结衣视频| 91综合国免费久入| 国产免费AV在线| 婷婷婷婷婷婷婷婷婷婷丁香| 欧美天天性| 粉嫩av蜜桃av蜜臀av| 99在线视频操999| 97在线精品| 99这里只有精品视频| 九九视频在线观看视频6 | 五月丁香久久久久| 天天爽天天操| 色婷婷影| 黄色成人网站在线播放| 91久久九久久九久久九久久九久久| 色亚洲婷婷| 国产成人99久久亚洲综合精品| 丁香五月23111| 亚州操操| 精品成人在线观看| 日日天天干| AV无码免费| 五月丁香六月情| 九九色婷| 九九性视频| 亚洲五月六月婷婷| 亚洲综合激情五月| 婷婷娌伦网| 这里只有精品视频99| 婷婷丁香综合网| 日韩一区二区三区无码| 99婷婷狠狠成为人免费视频| 蜜乳中文字| 99久久婷婷国产综合精品草原| 内射综合网| 欧美婷婷色五月| 五月丁香| 丁香五月六月激情| 超碰AV成人| 丁香久久久| 中文字幕无线久必| 五月天激情无码| 激情性爱婷婷| 丁香六月久久| 亚洲色婷婷网站| 中字幕视频在线永久在线观看免费| 99久久66| 丁香五月大香蕉在线99| 色婷婷五月天视频网站| 99热在线精品播放| 午夜性做爰电影| 五月天天天开心激情网| 中文字幕天天干| 丁香五月伊人| 五月婷婷啪| 九月av在线| 色婷婷综合久久久久| 操97| 碰碰人人人| 五月婷婷久久网| 色色五月婷婷网| 欧美婷婷色五月| 九九久久污| 五月综合色| 久久总和99| 亭亭五月色男人| 久久一热免费视频| 五月婷婷丁香网| 在线观看的av| 五月激情基地| 久久婷婷亚洲| 99人人看| 天天 日综合| 人人插9| 成人AV中文字幕| 丁香网站| 色五月超碰| 亚洲国产精品二二三三区 | 中文不卡av| 狠狠色综合久久| 精品九九网| 99色中文| 精品无码人妻一区| 性爱五月婷| 热久久这里只有精品| 色婷婷久久综合久色综| 中文字幕人成乱码在线观看| 十一月婷婷激情四射| 欧美色久| 久久se 综合网| 丁香六月婷婷开心| 久久总和99| 婷婷丁香五月天影院 | 天天操天天操天天操天天操天天操| AV人人操| 黄色片久久| 最近中文字幕2019视频1| 伊人五月网| 91oumei| 91碰在线| 色六月视频| 第五婷婷伊人丁香| 337p大胆噜噜噜噜噜91Av| 久久网思思| 综合五月丁香六月婷婷| 青柠影视免费高清电视剧 | 色婷婷五月天在线观看| 操你av| 久久综合爱| 国产高清视频91九九九久久久| 开心激情婷婷| 亚洲操逼网| 噜噜色婷婷| 丁六月激情| 日本三级日本三级三级人妇四虎| 99亚洲视频| 大香蕉 婷婷| 久久婷婷亚洲| 色中色综合| 99热在线只有精品| 丁香六月激情国产| 五月丁香中文| 丰满熟女人妻一区二区三| 岛国av网| 激情五月天色婷婷| 九九在线这里只有精品视频 | 丁香五月综合在线播放 | 午夜69成人做爰视频| 大香蕉九操| 日狠狠| 开心五月丁香啪| 夜夜躁狠狠 | 久久新地址| 久热超碰| 日韩性爱AV| 婷婷五月a| 深爱婷婷网| 日本wwww在线| 亚洲欧洲午夜成人精品av| 丁香婷婷综合激情五月色| 4399在线观看免费高清电视剧| 91人人操人人看| 俺去婷婷 丁香| 五月婷婷伊| 丁香五月婷婷社区| 丁香综合久久| 婷婷的99视频网站| 99久久国产宗和精品1上映| 六月婷婷五月丁香首页| 丁香五月天综合网| 激情爱爱网站超大免费| 久久婷婷精品| 五月天社区| 激情综合五月激情XXXX| 婷婷五月天深爱| 很操日本7| 婷婷五月天亚洲精品| 婷婷色色播五月天| 夜夜躁爽日日| 亚洲男女激情| 色色综合网。| 99热这里只有精品1025| 无码毛片992367| 婷婷五月丁香伊人网| 停停五月天激情网| 综激情网| 桃色五月婷婷| 99久久网站| 亚洲激情综合色站| 99热这里只有是亚洲国产| 操操操Av| 丁香五月偷拍| 五月丁香888| 久久草大香蕉| 成人开心五月天| 九九99免费视频| 日本猛少妇色XXXXX猛叫| 影音先锋男人AV资源站| 久久婷婷五月综合| 激情婷婷五月| 强辱丰满人妻HD中文字幕| 国成人网| 色99视| 亚洲欧美另类在线23p| WWW.99视频| 成人视频网| 丁香激情五月少妇| 颜射 精品性爱av| 婷婷性色| 激情五月四色| 五月天婷婷久久日| 日韩性视频| 亚洲亚洲人成综合网络| 狠狠干综合| 婷婷爱五月天人人爱| 亚洲综合网 665566| 成人国产欧美大片一区| 婷婷久久五月| 日日夜夜干| 国产精品涩涩涩视频网站| 国产精品色婷婷久久久精品| 婷婷成人网五月天| 日日干夜夜撸夜夜骑| 国产97色在线| 久久九九大香蕉电院| 99精品视频免费观看,| 婷婷永久在线| 久草热8精品视频在线观看| 伊人久久五月天综合| 久久人妻久久| 99视频在线| 少妇高潮呻吟A片免费看软件| 日韩AV中文在线观看| 91在线资源| 97碰免费精采视频| 天天做天天干天天综合网| 开心五月深爱婷婷| 色色色图| 丝袜熟女一区二区三区| 婷婷丁香社区网| 成人婷婷五月| 色欲婷婷五月天| 超pen个人视频97| 亚洲黄3级片网站欧美| 性色人人爽| 亚洲VA在线| 91精品综合久久婷婷九色| 天天干天天插| 色婷婷啪啪啪啪啪啪| 激情综合五月婷| 日日操,夜夜撸| 六月婷久久| 在线视频婷婷| 色婷婷免费观看| 五月丁久久| 丁香狠狠色婷婷| www好屌操| 婷婷在线视频| 亚洲天堂制| 久久视屏这里只有久久| 六月婷婷啪啪| 久久香视频| 六月色婷婷欧美| 日本丁香五月| www,setingting| 丁香婷婷人妻| 久久婷婷影院| 激情五月天的婷婷| 婷婷五月天精品| 综合五月天| 色情成人五月天| 九九这里只有精品| 超碰人人艹| 一级二级香港秋霞欧美欧美秋霞| 五月天大香蕉| 7777激情基地| 激情丁香五月| 亚州第一A片| 99视频精品8 | 91中文狠狠综合| 九九碰九九爱97超| 五月丁香六月婷婷激情网| 五月天色色无码| 99视频内射三四| 色情网综合| www。五月天。com| 色婷婷五月亚洲| 操碰99| 伊人9999| 国产av天天插天天操天天爽| 99热在这里只有免费精品| 色婷婷19| 久艹大香蕉| 丁香五月a| 久久久天堂国产精品女人| 成人噜噜网| 久久总和99| 狠狠久综合| 操逼棍操逼| 99国产精品久久久久久久久久久| 五月天天天操天天爽夜夜操| 九九色热| 成人色五月天| 国产精品激情AV久久久青桔| 秋霞电影理论| 亚洲春色奇米影视| 午夜电影网VA内射| 久久欧洲久久| 一二线视频 另类| 丁香 久久| 婷婷亚洲五月丁香综合在线 | 99热久| caopeng97日韩| 啪啪操操| 涩丁香| 婷婷色网站| 久久激丁香| 丁香激情四射| 五月婷婷六月开心| 丁香六月视频| www。狠狠干。com| 婷婷五月综合网| 99视频这里有精品| 六月丁香啪啪| 在线99热| 国产.亚洲.欧洲视频在线| 人人舔人人色人人高潮| 人人综合久| 亚洲精品V天堂中文字幕| 亚洲午夜电影| 五月六月婷| 色婷婷丁香五月在线| 玖玖在线| WWW·色色色·COM| 色婷婷av综合网| 97色婷婷| 丁香六月啪啪| 99热这里只有精彩| 日韩在线99| 99热99干| 99精品爱| 五月丁香直播| 婷婷激情六月综合| 激情综合网五月天天| 99热偷拍| 国产精品人妻欲求不满| 自拍偷窥99热| 91超碰人人操| 久热综合| 色婷婷久久综合| 久久免费丁香| 91碰超| 免费成人网在线观看| 五月四色激情| 色婷婷精| 91xxxx九色| 色综合网页| 玖玖婷婷免费| 色婷婷久久9.com| 人妻无码视频网| 国产午夜成人AV在线播放| 婷婷五月花| 激情丁香五月天| 日韩无码色色| 67194国产| 九九久久99| 91久久久久久久| 日韩啊啊啊| 色色狼人综合| 超碰在线中文字幕| 国产 码在线成人网站| sisi热国产| 亚洲色基地| 丁香熟女乱| 午夜福利8055| 影音先锋色婷婷| 婷婷在线精品| 成人婷婷深爱综合网| 综合五月亭亭9| 激情五月亚洲综合网| 婷婷丁香五月六月激情| 97婷婷五月| 九九热视频精品| 天天日天天插| 色色网站| 操大屄五月天视频| 涩涩婷婷五月| 婷婷丁香六月五月天| 色播五月丁香婷婷| 婷婷五月草| 丁香五月另类色婷婷麻豆| 久久婷婷伊人| 久久久久久久久久久-久五月天婷婷| 激情五月天。| 永久免费视频| 四色女婷婷| 99A片| 亚洲啪啪视频| 婷婷伊人久久无码色五月| 啪啪五月婷婷| 久久香蕉网| 91婷婷五月天综合视频| 操日视频| 激情综合网激情五月丁香五月俺也去| 欧美色色干| 天天想夜夜爽天天爽| 丁香婷婷六月天| 九九热在线精品| 四色99久久| 久久激情中文| 欧美日韩91| 日本欧美国产| 五月婷视频| 丁香婷婷婷婷十二月在线观看视频| 翔田千里 50岁 无码| 亚洲精| 五月天激情久久| 无码 av电影| 丁香色成人| 天色综合网站| 五月丁香六月婷综合成人综合| 亚洲亚洲人成综合网络| 99人妻碰碰碰久久久久禁片| 色丁香婷婷| 99色视频| 五月天丁香网站| www、色色色| 九热视频| 丁香五月天网站| 色色色色色色色色色色色色色色,网站| 日本综合色图| 26uuu丁香婷婷五月| 亚洲激情视频网| 色玖玖综合网| 亚洲精品在线视频| 思思热在线播放| 国产亚洲精品久久久久久郑州| 97色婷婷在线观看| 婷婷五月天激情开心网| 午夜激情四射影院| 色综合综合网| 丁香五月天AV在线| WWW激情五月天| 思思久久99| 日韩成人中文字幕| 国产操碰| 久99久热| 九九九热精品| 美欧日韩国产成人在战| 欧美日本另类| 久热久操久热久草国产91| 婷婷五月天色综合| www.婷婷com| 五丁香激情综合| 俺去也五月| 久色网| 成人短视频在线| WWW.久久久久久久| 99操久久| 亚洲激情四射| 99久久九九| 久热这里只有精品3| 91干| 久久无码激情视频| 久久精彩视频| 色五月丁香激情| 性一交一乱一交A片久| 综合激情啪啪| 精品夜夜澡人妻无码AV| 思思热在线精品视频网站| 国产精品99久久久久久久女警| 26uuu四色| 秋霞免费视频| 性生活久久人妻| 精品久9| 五月丁香婷爱在线| 9久久网| 婷婷六月综合基地| 69热在线| www.9操| 香蕉久久国产AV一区二区 | 欧美人人草草| WWW久久久| 第四色婷婷最爱| 夜夜爽天天干| av国产精品| 丁香五月天婷婷91| 91啪级电影| 丁香五月婷婷大香蕉| 亚洲激情综合| 久久在线92| 99久久这里只有精品免费官网| www.婷婷.com| 亚洲精品白浆高清久久久久久| 久久99jiu9| 色五月丁香五月激情五月激情| 久热网在线视频| 91操人视频| 婷婷久久爱| 婷婷五月中文在线| 精品人妻伦一二三区久| 欧美成人精品A片免费一区99| 97久操视频| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 婷婷五月丁香基地在线视频官网| 五月婷三级片| 亚洲欧美婷婷五月色综合| 丁香婷五月| 丁香啪啪| 亚洲超级碰| 囯产精品一品二区三区| 激情五月天丁香| 丁香五月伊人| 五月丁香六月婷婷在线小说视频| 午夜免费试看| 九九热精品在线| 婷婷久久网| 激情av在线| 2025年最新亚洲在线欧美| 91色婷婷综合久久中文字幕二区| 97色色综合| 久99热| 蜜桃人妻无码AV天堂三区| 久久激情五月天| 99精品免费欧美小视频 | 人人干99| 天天噜| 日日撸夜夜操| 欧美性爱五月天| 色射影院| 婷婷综合视频| 婷婷第一页| 久热网站| 香港九九六区八区99| 五月婷庭丁香在线| 欧洲色| 97在线视频观看| 伊人激情综合网| 久久亚洲天堂| 五月天婷婷小说| 亚洲色欲欧美一区二区三区| 五月婷婷日| 色色三级视频| 八戒青柠影视剧在线观看| 婷综合| 国产精品VA在线| 97婷婷丁香五月| 久久99热只有精品| 久久激情视频| 在线色色| 久久人人九| 夜夜AVV| 婷色影院| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 亚洲色热| 性综合网| 色播丁香| 日日夜夜天天| 综合五月天| 91啪啪视频| 五月天激情丁香| 婷婷五月综合在线| 久草五月天| 99热99干| 丁香婷婷深情五月亚洲| 国产激情久久| 久久性爱视频| 日本乱子人伦在线视频| 国产av天堂| 最近韩国日本免费高清观看| 亚洲精品无码一区二区| 日本少妇裸体做爰高潮片| 国产毛片精品一区二区色欲黄A片| 五月天婷婷色色| 97人人射| 狠狠色综合网| 三年高清大片免费观看国语| 丁香网五月天| 在线不卡AC| 狠狠综合久久综合| 久久五月天网| 九九自拍网| 99久久99久久综合| 性小说五月天| 五月天色婷婷成人| 开心婷婷中文字幕| 婷婷色在线观看| 日本三级日本三级99| 丰满少妇猛烈A片免费看观看| 99热久久这里只有精品| 97涩婷婷婷婷基地| 热99免费在线| 人人干人人干骚美女| 丁香桃色综合网| 五月丁香六月婷婷婷婷| www婷婷| 97干在线| 中文字幕精品无码一区二区| 九九热99在线视频| 丁香婷婷性爱| 国产熟女日日骚五月丁香爱| 五月婷婷免费在线视频| 五月激情六月宗合| 色综合综合综合| 亚洲无码激情| 狠狠看狠狠| 五月婷婷我| 久久婷婷丁香| 成人午夜视频精品一区| 百度4399有码精品V在线观看| 中文字幕AV在线播放| 天天操夜夜夜拍拍拍| 夜夜躁爽日| 天天舔天天爽| 欧美色色日韩| 六月丁香基地| 欧美 日韩 成人| 婷婷色在线| 婷婷五月激情五月丁香五月| 99在线爽| 五月婷婷综合网| 无码人妻少妇色欲AV一区二区 | 国产AV一区二区三区最新精品| 色色色色色色色色色色色色色五月天| 国在线激情网| 五月久视频| 五月婷婷激情| 五月婷婷综合久久| 久99热| 激情五月婷婷视频一区二区三区| 丁香五月久久社区| 五月婷婷成人网首页| 久9热视频| 91无码一起草| 九热在线这里有精品6| 久久激情网| 五月色情| 五月丁香日本在线视频观看| 色噜噜狠狠色综无码久久合欧美 | 蜜臀A∨在线水帘洞| 婷婷五月天视频免费在线观看| www.婷婷五月天| 99热加勒比| 五月激情综合深爱| 成人AV在线电影| 国产精品色婷婷99久久精品| 日本五月视频| 国产69久久久欧美黑人A片| 97人人干人人操| 五月激情天| 婷婷综合天堂| 欧美噜一噜| 99这里有精品| 精品久久久91久久影视网| 婷婷射丁香| 色噜噜五月天| 91丨九色丨熟女|新版| 激情五月婷婷丁香综合网| 丁香五月手机在线| 五月婷婷综合激情小说| 激情婷婷五六月天| 欧美色频| 丁香五月激情婷婷视频| 色婷婷婷婷| 国产婷婷五月天| 色色亚洲视频| 婷婷综合日本| 九九成人视频| 婷婷五月色情| 久久五月天色婷婷| 99爽视频| 91色久| 超碰色婷婷| www.henhenl| 99久扒热| 丁香六月综合激情| 日本超碰在线| 79精品视频在线观看,| 婷婷丁香五另类网站| 91热久久| 婷婷五月激情四月综合| 欧美色五月| 五月欧美色播| 被强行糟蹋的女人A片| 激情黄色五月天| 五月天激情色色| 人妻操在线看| 五月婷婷久久爱| 五月丁香六月综合激情无码软件亮点| 色九九一二| 人人视频人人干人人做| 美欧成人视频| 国产成人网站在线观看| 那里有AV网址| 丰满少妇猛烈A片免费看观看| 开心五月婷婷在线视频免费观看| 五月婷婷玖玖综合玖玖爱| 五月激情婷婷六月| 色婷婷丁香九月| 五月婷婷片| 天天操九九插| 99热很操老逼| 成片免费播放| 婷婷六月丁香色| 百度一下国产精品A| 亚洲色网址| 丁香色色网| 日本天天操| 婷婷五月六月激情| 婷婷五月丁香色综合| 久久婷婷色| 国内婷婷丁香社区在线播放| 第四色色色色色丁香五月天| 99re热在线视频观看| www超碰| 六月成人网| 99re这里只有| 激情综合播播| 亚洲国产成人AV在线| 久久久99视频| 天天干-天天日| 麻豆精品| 天天干天天干天天干| 丁香五月激情五月开心五月| 97超碰人人操| 五月婷婷香蕉| 97香蕉碰碰人妻国产欧美| 婷婷丁香五月激情图片| 欧美色图天堂网色| 99热网精品| 爽极品色| 五月停停丁香| 色色五月婷婷| 爱狠射| 狠狠色综合网| 99热资源在线| 第四色婷婷色五月| 99精品久久久久久久婷婷| 97久久婷婷色| 99激情| 久久综合五月天| 清色五月天| 亚洲婷婷91丁香| 色五月美女| 亚洲黄色影视| www999日韩精品| 日韩精品无码99| 26uuu国自产精品| 五月婷婷草| 超碰成人公开| 天天综合精品| 婷婷丁香97| 色婷视频| 婷婷玉月丁香五月在线视频| 久久伊人大香蕉| 婷婷久久图片| 六月色丁香婷婷| 99精品网| 日日夜夜婷婷| 六月婷久久| 九九这里有精品| 日日夜夜小色哥| 久色视频首页| 五月亭亭六月色| 欧洲综合视频| 国产成人AV在线播放| 久草丁香婷婷五月天婷| site:901-07.com| www.色婷婷| 99在线视频。| 丁香婷婷六月激情| 激情綜合W W W,激情五月天| 都市激情亚洲| 久久丁香五月婷| 丰满少妇猛烈A片免费看观看| 91欧美日韩综合| 五月天成人综合| 婷婷激情六月中文| 九九九午夜影院成人| 色婷婷久久| 丁香五月综合婷婷| 九九色播五月丁香| 色婷婷色五月综合| 5月婷婷五月天| av一级棒av| 精品婷婷五月视| 色播五月天激情| 色狠狠色| 亚洲在线操| www.99日本| 深爱激情丁香| 亚洲成人在线观看网址| 丁香婷婷十月| 六月成人网| 五月丁香亚洲五月| CHINESE熟女老女人HD视频| 午夜婷婷丁香| 天天干天干| 超碰人人超碰| 色婷婷大香蕉| 五月婷婷啪啪网| 久99久热| 激情黄色小说色五月| 五月丁香激| 男人的天堂五月丁香| 久久久27操| 国产AV不卡福利| 激情五月天天狠狠久久| 婷婷综合影院| 97丁香五月| 色色五月天网站| www.五月婷婷久久.com| 九九九色综合| 欧美色色色色色| www.婷婷五月天,com| 99爱在线免费视频| 在线va网站| 少妇性按摩无码中文A片| 一區四區歐美日韓| AV在线不卡播放| www久热com| 色综合色综合色综合| 丁香五月天中文字幕| 大香蕉七区| 久久免费操| 成人 在线 日韩| 99热这里有精品| 99在线视频免费| 日韩av手机在线观看| 人人看人人摸人人| 99热一本久道| 丁香五月香蕉| 久婷婷五月激情| 精品少妇人妻AV无码专区偷人| 九九热免费视频| 久热这里只有精品66| 91a片爽| 丁香五月天电影| 久热 91| 天天日天天操心| 天天日人人爽| 久久丁香婷婷五月| 日本色婷婷| 99热欧| 91丁香色五月| XX久久| 综合欧美五月婷婷| 国产内射婷婷| 婷婷丁香六月| 欧美丁香婷婷天天操| 操操操97| 六月天婷婷| 大香蕉伊人久久| 亚洲亚洲人成综合网络| 久久精品亚洲一级牲爱综合| 亚洲网站999| 婷婷激情五月| 婷婷香五月天| 午夜婷婷| 免费一区二区三区| 九九五月天| 天天射影视综合网| 久草a片| 这里只有精品视频| 婷婷六月丁| 五月天婷婷黄色视频| 激情婷婷五月在线合集| 激情五月丁香五月| 99在线国| 另类激情五月| 五月丁久久| 色99自拍| 毛片新网地| 色五月色五天色情网| 色五月综合激情网| 五月色婷| 色五月婷婷五月丁香五月| aa久久| 日韩在线视频9色| 久操大香蕉| 免费视频这里只有精品| 欧美日韩成人在线| 色444综合网| 狠狠色婷婷| 九九热在线视频| 丁香五月AV综合激情| 五月婷婷亚洲| 99只有精品9| 五月天啪啪啪| 可以看的av网站| 六月伊人婷婷| 六月丁香啪啪啪| 久9热插入| 开心五月婷婷激情| 操操自拍| 热思思| 五月丁香亭亭成人电影| 久久总和99| 99re资源在线视频导航| 九九成人| 伊人五月婷婷| 激情综合五月婷婷六月丁香| 色五月婷婷丁香国产在线| 九色91美女| 大香蕉丁香| 影音先锋91在线资源站| 思思久久精品| 丁香五月AV| 婷婷丁香人妻天天| 六月大香蕉| 婷婷五月天堂| 天天干夜晚夜操| 五月丁香久久久久| www.夜夜爱.com| 狠狠五月天| 久99久热| 亚洲色五月婷婷| 在线观看玖玖资源免费观看| 五月天天丁香婷婷在线中| 色色色地址| 五月婷综合激情| 免费观看全黄做爰的视频| 人人爽天天爽| 亚洲AV综合网| 婷婷五月天影院| AV操操操| 亚洲日日操| 久久66成人网站| 婷婷色五月色妇| 五月丁香999| 蜜乳.comcom| 亚洲中文丁香| 色婷婷电影| 51成人| 中文精品在| AV色婷婷| 超碰资源在线| 大香蕉五月| 91一道本| 久热久操久热久草国产91| 99热在线网站| 丁香五月婷综合| 91女人18毛片水多国产| 五月综合激情啪啪啪啪啪| 国产69久久久欧美黑人A片| 婷婷99| 99色视频| 亚洲成av人影院| 欧美 日韩 人妻 高清 中文| 丁香五月天啪啪| 99精品视频在线观看| 91狠狠综合久久| 丁香六月毛片| 国产寻花在线| 九九热在线观看视频网站| 婷婷丁香五月六月激情| 99精品无码网站| 五月精品免费XXX| 停停五月天激情网| 四月婷婷丁香| 九九99精品视频在线观看| 开心激情播播五月天| 99久久玖玖| 日日夜夜狠狠| 99九九玖玖| 91九色在线| 综合激情视频| 被强行糟蹋的女人A片| 野战J办公桌椅H| 中文字幕操比影片| 色综合色婷色基地| 亚洲综合在线播放| 婷婷五月天色色| 六月婷婷成人| 久久人妻情侣| 婷婷五月天激情在线| 天天日天天色| 日本一级一级一级一级| 超碰av在线| 蜜桃婷婷丁香综合久久开心亚洲| www.99操| 色婷婷超碰| 99热最新网址| 亚洲综合丁香婷婷六月天| 婷婷综合爱| 色噜噜狠狠色综合成人网| 婷婷五月天久久| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 激情另类综合| 3pAV| 99爱在线视频观看| 婷婷五月激情欧美| 综合激情五月丁香| av首页在线| 五月婷婷亚洲| 密臀久久| 欧美日本va| 九热视频| 狠狠色色色| www.91在线观看| 日韩一区二区在线播放| 丁香五月色欲| 五月丁香婷婷色| 99热网精品| 激情视频91| 2025最新亚洲激情在线| 欧美激情综合五月色丁香| 激情小说五月天| 色逼综合网| 秋霞成人毛片一级A片| 五月丁香花伦理电影| 欧美Va日本Va| 26uuu欧美| 玖玖99精品视频| 色婷婷视频| 夜夜躁爽日日| 无码99| www.久9| 99久久这里只有精品免费官网| 这里只有精品免费视频| 日日夜夜天天综合| 99精品久| 天天插天天狠| 五月六月婷| 五月天激情网图片| 色老久久| 99国产精品久久久久久久久久久| 九九99精品视频在线观看| 青青草蜜臀| 人人玩人人橾| 啪啪黄页网| 亲子乱AV一区二区三区下载| www一起操在线观看| 久9热插入| 婷婷婷婷午夜| 99噜噜| 丁香五月天狠狠| 九九热只有精品6| 5月婷婷6月六月丁香| 99国产精品久久久久久久久久久 | 思思热国产视频| 99视频在线观看网址| 熟妇人妻中文字幕无码老熟妇| 2017狠狠干| 丁香五月无码| 激情五月天综合网| 亚洲综合视频网| 五月色丁香激情| 一本色道久久88加勒比| BlACKEDRAW视频一区二区| 五月婷婷激情四季| AV五月丁香| 卡视频1区2区| 五月丁香六月合| 狠狠色综合网| 成人网址在线观看| 天天插天天干| 久久久.www| 激情五月六月丁香| 日日夜夜天天| 91九色国产| 超碰不卡在线| 99日视频在线| 热思思| 激情五月成年| 五月夜丁香| 丁香九月激情| 五月婷婷激情综合| 欧美日本黄色| 99久热精品在线| 五月天婷网| 久色精品| 少妇性按摩无码中文A片| 九九综合伊人| 色五月婷婷影院| 成人网页在线观看| 色视频五月天| 91男人资源站| 色 五月婷婷基地| 香蕉AV777XXX色综合一区| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 淫五月停停| 美女要搞搞天天搞搞搞网站| 开心五月婷婷激情| 激情五月天噢美| 亚洲色热| 丁香色五月婷婷17C| 色色激情五月天| 丁香五月天堂| 大香蕉婷婷| 激情五月天久久丁香| 99久久6| 婷婷五月天美女| 丰满人妻一区二区三区| 婷婷六月丁香在线| 五月天婷婷小说| 五五月丁香花激情综合网| 色色热99| 婷婷内射视频在线| 夜精品无码A片一区二区蜜桃| 日本在线wwww| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 色噜噜在线| 五月婷网| 一区操| 开心深爱五月天| 久久伦乱| 亲子乱AV-区二区三区| 99re最新地址视频| 久久天天| 一级片操逼视频| 色九区| 国内外色色色色色成人视频| 4399无码视频| 六月婷婷天天操夜夜爽视频| 日本婷婷| 久久五月婷综合| 丁香六月婷婷一区| 日韩av在线免费观看| 一级黄色片看看| 色9色| 99在线精品观看99| 色九月国产| 丁香五月综合网亚洲综合欧美狠狠| 激情婷婷五月天| 色综合区| 婷婷丁香五月网| 无语停婷丁香网| 久久草婷婷丁香网站| 激情五月婷| 亚洲综合1024| 黄网在线观看免费| 野外99热| 开心五月色婷婷综合开心网| 久热久| 五月婷婷另类| 大香蕉久艹| 手机旧版看人妻1025| 天天干天天干天天干天天干天| 国产69久久久欧美黑人A片| 综合欧美五月婷婷| 五月天色社区| 九九九九综合| 国产精品社区| 久婷婷五月综合欧美| 五月婷婷六月丁香在线| 欧美色偷偷大香| 久久人妻视步| 熟妇天天综合| 色五月婷婷激情| 婷婷五月天综合久久日美女| 五月丁香婷中文字幕| 无码激情AAAAA片-区区| 婷婷色色综合激情| 精品一区二区三区四区五区六区| 2014天天爽| 久久久久久久人妻| 婷婷五月天激情综合| 欧美性猛交AAAA片黑人 | 婷婷色播六月无码| 人妻内射一区二区在线视频| 六月香五月婷| 五月丁香婷婷色啪| 色婷婷综合网站| 综合久久综合综合| 久久视频婷婷| 六月婷婷激情|