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

ARTICLE DETAIL

資訊詳情

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

LiteLLM網(wǎng)關(guān)CLI實(shí)戰(zhàn):統(tǒng)一管理Ollama與vLLM多模型

LiteLLM網(wǎng)關(guān)CLI實(shí)戰(zhàn):統(tǒng)一管理Ollama與vLLM多模型 最近把本地跑的幾套大模型服務(wù)統(tǒng)一收口到一個(gè)網(wǎng)關(guān)下面發(fā)現(xiàn)很多人還在用最原始的方式管模型——這個(gè)項(xiàng)目開個(gè)端口那個(gè)項(xiàng)目改個(gè)配置調(diào)用方寫死IP和端口換個(gè)模型就要?jiǎng)哟a。今天就把這套本地大模型網(wǎng)關(guān)的CLI使用方式完整寫出來從為什么需要網(wǎng)關(guān)、怎么部署到日常命令、多模型路由、對(duì)接Codex CLI這類工具鏈再到我踩過的坑一次講透。這篇東西適合誰看如果你本地同時(shí)跑了Ollama、LM Studio、vLLM好幾個(gè)服務(wù)或者你正在用Codex CLI、Claude Code這類命令行編程工具但每次切換模型都要改環(huán)境變量、改配置文件那這篇文章能直接幫你省掉這些麻煩。就算你只有一個(gè)Ollama在跑網(wǎng)關(guān)也能給你帶來日志審計(jì)、Key管理、模型路由這些單靠Ollama拿不到的能力。1. 先解決一個(gè)根本問題本地模型多了以后到底亂在哪1.1 單機(jī)多模型服務(wù)的現(xiàn)實(shí)困境我先描述一個(gè)很多本地部署玩家都遇到過的場(chǎng)景。你的電腦上可能同時(shí)裝了Ollama用來跑Qwen系列的模型裝了LM Studio用來跑一些GGUF格式的社區(qū)模型還可能在Docker里掛了一個(gè)vLLM服務(wù)用來做高并發(fā)的推理測(cè)試。這三個(gè)服務(wù)各自為政Ollama默認(rèn)監(jiān)聽11434端口LM Studio默認(rèn)的是1234端口vLLM如果你不指定默認(rèn)是8000端口問題馬上來了。你今天寫了一個(gè)Python腳本調(diào)用Llama 3.1用的是http://localhost:11434/v1的地址明天想切到LM Studio里那個(gè)微調(diào)模型就要把代碼里的base_url改成http://localhost:1234/v1順便還要確認(rèn)LM Studio已經(jīng)開啟了本地服務(wù)器。后天想試試vLLM的并發(fā)能力又要改一遍。這在只有一兩個(gè)模型的時(shí)候還能忍一旦模型超過五個(gè)這邊改代碼、那邊查端口純粹是浪費(fèi)時(shí)間。1.2 網(wǎng)關(guān)本質(zhì)上做了一件什么事網(wǎng)關(guān)這個(gè)東西做網(wǎng)絡(luò)的同學(xué)肯定不陌生本質(zhì)上就是一個(gè)反向代理加一層控制面。你所有的模型請(qǐng)求先打到網(wǎng)關(guān)網(wǎng)關(guān)根據(jù)你配置的規(guī)則決定把請(qǐng)求轉(zhuǎn)發(fā)給后端的Ollama、LM Studio還是vLLM。這樣做有一個(gè)立竿見影的好處調(diào)用方永遠(yuǎn)只需要面對(duì)一個(gè)地址、一個(gè)端口、一套鑒權(quán)體系。你換模型、加模型、升級(jí)后端推理引擎調(diào)用方完全感知不到。就像你家里用路由器上網(wǎng)你不需要關(guān)心數(shù)據(jù)包到底走的是電信還是聯(lián)通的光貓你只知道自己的電腦填了192.168.1.1這個(gè)網(wǎng)關(guān)地址。在本地大模型這個(gè)場(chǎng)景里網(wǎng)關(guān)把“模型路由”“Key管理”“調(diào)用日志”“負(fù)載均衡”這些事情全部收口了。調(diào)用方拿到的永遠(yuǎn)是一個(gè)標(biāo)準(zhǔn)的OpenAI兼容接口地址后面是什么推理引擎跟調(diào)用方?jīng)]關(guān)系。1.3 本地場(chǎng)景下網(wǎng)關(guān)CLI比Web UI更實(shí)用現(xiàn)在市面上有不少帶Web管理界面的AI網(wǎng)關(guān)項(xiàng)目比如One API、new-api這類界面做得確實(shí)漂亮點(diǎn)鼠標(biāo)就能配置模型和渠道。但如果你是在命令行環(huán)境下工作或者你習(xí)慣用SSH連到一臺(tái)無顯示器的開發(fā)機(jī)上管理模型服務(wù)Web UI反而成了累贅。CLI的價(jià)值在于可腳本化、可遠(yuǎn)程、可集成進(jìn)你現(xiàn)有的shell工作流。你可以寫一個(gè)gateway model list去查看當(dāng)前所有模型的狀態(tài)可以在~/.zshrc里加一個(gè)alias一鍵切換默認(rèn)模型可以寫個(gè)cron腳本在模型服務(wù)掛掉之后自動(dòng)重啟并重新注冊(cè)路由。所以這篇文章我講的命令全都是終端里能直接敲的。從安裝到配置從調(diào)模型到排查問題全程不碰瀏覽器。2. 從零搭建網(wǎng)關(guān)CLI和本地模型服務(wù)的正確連接方式2.1 底層的模型服務(wù)還是得先跑起來網(wǎng)關(guān)只負(fù)責(zé)路由不負(fù)責(zé)推理。所以在配置網(wǎng)關(guān)之前你得先把底層的模型服務(wù)趟好。我目前的主力方案是Ollama加一個(gè)vLLM容器簡(jiǎn)單說下我的初始狀態(tài)Ollama跑在http://127.0.0.1:11434上面掛了qwen3:8b和llama3.1:8bvLLM容器映射到http://127.0.0.1:8000加載的是我自己轉(zhuǎn)換的一個(gè)量化模型先把這兩個(gè)服務(wù)分別測(cè)通確認(rèn)單獨(dú)調(diào)用沒問題curl http://127.0.0.1:11434/v1/models curl http://127.0.0.1:8000/v1/models這一步千萬別跳過。很多人在配置網(wǎng)關(guān)的時(shí)候遇到“model not found”之類的問題最后排查下來發(fā)現(xiàn)根本不是網(wǎng)關(guān)的鍋是后端模型服務(wù)壓根沒起來或者端口填錯(cuò)了?;A(chǔ)服務(wù)沒有自測(cè)通過之前不要去碰網(wǎng)關(guān)。2.2 安裝網(wǎng)關(guān)CLI我用的網(wǎng)關(guān)是LiteLLM它同時(shí)提供Python包和CLI工具對(duì)OpenAI兼容接口的支持做得最完善。安裝很簡(jiǎn)單pip install litellm[proxy]裝完以后驗(yàn)證一下版本litellm --version如果你不想用LiteLLMOne API也有命令行工具但我個(gè)人建議新手直接上LiteLLM原因是它的配置語法和OpenAI的模型命名規(guī)則高度一致學(xué)習(xí)成本低而且社區(qū)活躍度高遇到問題容易搜到解決方案。提示LiteLLM的CLI是在litellm包基礎(chǔ)上的如果之前裝過舊版建議先pip install -U litellm升級(jí)到最新版有些命令參數(shù)在新老版本之間不兼容。2.3 通過CLI直接啟動(dòng)一個(gè)網(wǎng)關(guān)實(shí)例LiteLLM最簡(jiǎn)單的啟動(dòng)方式是直接用命令行參數(shù)指定要代理的模型litellm --model ollama_chat/qwen3:8b --port 4000這條命令的意思是在4000端口起一個(gè)OpenAI兼容的代理服務(wù)把請(qǐng)求路由到Ollama上的qwen3:8b這個(gè)模型。啟動(dòng)之后終端里會(huì)看到網(wǎng)關(guān)的地址通常是http://0.0.0.0:4000。這時(shí)候你本地就有了一個(gè)統(tǒng)一的模型入口。但這樣一條命令只代理了一個(gè)模型離“網(wǎng)關(guān)”還差得遠(yuǎn)。真實(shí)的用法是把所有模型寫進(jìn)一個(gè)配置文件然后一條命令全部加載。我下面詳細(xì)說。2.4 用配置文件統(tǒng)一管理多個(gè)模型在項(xiàng)目目錄下創(chuàng)建一個(gè)config.yaml內(nèi)容長(zhǎng)這樣model_list: - model_name: qwen-local litellm_params: model: ollama_chat/qwen3:8b api_base: http://127.0.0.1:11434 - model_name: llama-local litellm_params: model: ollama_chat/llama3.1:8b api_base: http://127.0.0.1:11434 - model_name: vllm-local litellm_params: model: openai/qwen2.5-14b api_base: http://127.0.0.1:8000/v1 api_key: dummy這里有幾個(gè)設(shè)計(jì)意圖需要解釋一下model_name是你暴露給調(diào)用方的名字可以隨意起比如qwen-local。調(diào)用方只認(rèn)這個(gè)名字不關(guān)心后端到底是Ollama還是vLLM。litellm_params.model是實(shí)際轉(zhuǎn)發(fā)給后端時(shí)用的模型標(biāo)識(shí)。ollama_chat/前綴告訴LiteLLM走Ollama的chat接口openai/前綴告訴它走OpenAI兼容的chat接口。最后一個(gè)vLLM的配置里api_key填了什么不重要但必須填一個(gè)非空字符串因?yàn)長(zhǎng)iteLLM在轉(zhuǎn)發(fā)OpenAI兼容協(xié)議的時(shí)候默認(rèn)會(huì)在請(qǐng)求頭里帶上AuthorizationvLLM如果配置了鑒權(quán)就會(huì)校驗(yàn)?zāi)呐轮皇莻€(gè)dummy key也要占位。然后啟動(dòng)網(wǎng)關(guān)litellm --config config.yaml --port 4000看到日志里出現(xiàn)Uvicorn running on http://0.0.0.0:4000就說明成了。2.5 快速驗(yàn)證鏈路是否打通用標(biāo)準(zhǔn)OpenAI SDK來驗(yàn)證一下網(wǎng)關(guān)是否正常工作from openai import OpenAI client OpenAI( base_urlhttp://127.0.0.1:4000/v1, api_keysk-local ) resp client.chat.completions.create( modelqwen-local, messages[{role: user, content: 你好介紹一下你自己}] ) print(resp.choices[0].message.content)這里api_key傳什么都可以只要你的網(wǎng)關(guān)沒有開啟鑒權(quán)。如果返回了正常的回復(fù)說明整條鏈路已經(jīng)跑通SDK - 網(wǎng)關(guān) - Ollama - 模型 - 返回。到這一步你已經(jīng)把多個(gè)模型收口到了同一個(gè)端口。接下來的內(nèi)容才是網(wǎng)關(guān)真正值錢的地方。3. 網(wǎng)關(guān)CLI的日常操作這些命令你必須爛熟于心3.1 查看已注冊(cè)的模型列表和健康狀態(tài)啟動(dòng)網(wǎng)關(guān)之后最常用的操作就是查看當(dāng)前有哪些模型可用。LiteLLM提供了/v1/models接口但也有對(duì)應(yīng)的CLI查詢方式不過說實(shí)話CLI層面最實(shí)用的還是直接curl一記curl http://127.0.0.1:4000/v1/models返回的JSON里會(huì)列出所有通過配置文件注冊(cè)的模型名。如果你配置了多個(gè)后端這里都會(huì)一并展示。但有些網(wǎng)關(guān)工具的健康檢查不在這個(gè)接口里。比如LiteLLM有專門的/health/readiness和/health/liveliness接口你可以用curl驗(yàn)證網(wǎng)關(guān)本身是否活著的curl http://127.0.0.1:4000/health/liveliness我習(xí)慣在shell配置里寫一個(gè)簡(jiǎn)短的alias方便隨時(shí)看模型狀態(tài)alias gwmcurl -s http://127.0.0.1:4000/v1/models | python3 -m json.tool這樣在終端敲gwm就能看到當(dāng)前所有可用模型比翻日志不知道方便到哪里去了。3.2 從命令行直接發(fā)起一次模型調(diào)用有時(shí)候不想寫Python腳本就想在終端里快速測(cè)一下某個(gè)模型是否正常響應(yīng)。用curl加網(wǎng)關(guān)地址就夠了curl http://127.0.0.1:4000/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer sk-local \ -d { model: qwen-local, messages: [{role: user, content: 用一句話介紹你自己}], max_tokens: 128 }返回的id、model、usage這些字段和OpenAI官方接口完全一致。你甚至可以指定stream: true來測(cè)試流式輸出是否正常。CLI模式還有一個(gè)隱藏好處配合jq可以快速提取關(guān)鍵字段curl -s http://127.0.0.1:4000/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer sk-local \ -d {model:llama-local,messages:[{role:user,content:hi}],max_tokens:50} \ | jq .choices[0].message.content實(shí)測(cè)下來這套組合拳在驗(yàn)證模型連通性的時(shí)候效率極高不用打開任何編輯器一條命令搞定。3.3 動(dòng)態(tài)添加和移除模型不用重啟網(wǎng)關(guān)配置文件的好處是持久化但缺點(diǎn)是你改完配置得重啟網(wǎng)關(guān)才能生效。好在LiteLLM提供了運(yùn)行時(shí)管理接口可以通過HTTP請(qǐng)求動(dòng)態(tài)添加模型。添加模型curl -X POST http://127.0.0.1:4000/model/new \ -H Content-Type: application/json \ -H Authorization: Bearer sk-1234 \ -d { model_name: mistral-local, litellm_params: { model: ollama_chat/mistral:7b, api_base: http://127.0.0.1:11434 } }刪除模型就用/model/delete接口參數(shù)類似。這個(gè)功能我實(shí)際用下來最典型的場(chǎng)景是臨時(shí)加載一個(gè)微調(diào)模型測(cè)效果測(cè)完直接刪掉不需要為了一個(gè)臨時(shí)實(shí)驗(yàn)去改配置文件。3.4 查看請(qǐng)求日志和token消耗網(wǎng)關(guān)的另一個(gè)價(jià)值在于日志。沒有網(wǎng)關(guān)的時(shí)候Ollama自己也能看日志但那只是Ollama一個(gè)服務(wù)的訪問日志。有了網(wǎng)關(guān)之后你可以在一個(gè)地方看到所有模型的調(diào)用記錄、token消耗、響應(yīng)延遲。LiteLLM的日志默認(rèn)輸出到終端stdout但你可以配置寫入文件或者接入Prometheus監(jiān)控。我本地的做法是配了一個(gè)簡(jiǎn)單的JSON日志文件方便后期用量分析在config.yaml里加上:general_settings: master_key: sk-1234 database_url: sqlite:///litellm.dbmaster_key是用來管理網(wǎng)關(guān)的超級(jí)密鑰配置之后所有管理接口比如動(dòng)態(tài)添加模型都需要帶上這個(gè)Key才能訪問。database_url是配置SQLite數(shù)據(jù)庫(kù)這樣LiteLLM會(huì)把每次調(diào)用的完整記錄持久化到本地?cái)?shù)據(jù)庫(kù)方便以后查詢“我上周到底調(diào)了多少次Qwen模型”。查詢歷史用CLI方式不直接我一般直接連SQLitesqlite3 litellm.db SELECT model, total_tokens, completion_tokens, prompt_tokens, response_time FROM LiteLLM_SpendLogs ORDER BY id DESC LIMIT 20;這個(gè)表格記錄了每次請(qǐng)求的模型名、輸入token、輸出token、響應(yīng)耗時(shí)。有了這個(gè)數(shù)據(jù)你就能算清楚本地跑模型的實(shí)際花銷——雖然本地推理不花錢但token量和響應(yīng)時(shí)間的統(tǒng)計(jì)對(duì)調(diào)優(yōu)模型選擇非常有價(jià)值。3.5 配置熱更新和優(yōu)雅關(guān)閉改完config.yaml之后不需要先kill再啟動(dòng)LiteLLM支持給主進(jìn)程發(fā)送信號(hào)來完成優(yōu)雅重載。在啟動(dòng)網(wǎng)關(guān)的終端里按CtrlC是直接停止更規(guī)范的做法是找到進(jìn)程號(hào)然后發(fā)一個(gè)SIGHUP信號(hào)kill -HUP $(pgrep -f litellm --config)不過實(shí)測(cè)下來這個(gè)方式的可靠性跟版本有關(guān)有些版本對(duì)SIGHUP的支持不太好。如果你發(fā)現(xiàn)重載后模型列表沒變化最穩(wěn)妥的方式還是先停止網(wǎng)關(guān)再重新啟動(dòng)# 停止 pkill -f litellm --config # 重新啟動(dòng) litellm --config config.yaml --port 4000啟動(dòng)命令你可以寫成一個(gè)shell腳本或者用nohup讓它后臺(tái)常駐nohup litellm --config config.yaml --port 4000 gateway.log 21 這就是一個(gè)標(biāo)準(zhǔn)的常駐服務(wù)了終端關(guān)閉也不影響。4. 多模型路由與調(diào)度網(wǎng)關(guān)比單純反向代理多出來的能力4.1 按模型名精確路由是基礎(chǔ)能力前面配置的model_name其實(shí)已經(jīng)是路由規(guī)則了。調(diào)用方請(qǐng)求qwen-local網(wǎng)關(guān)就轉(zhuǎn)發(fā)到Ollama上的Qwen模型請(qǐng)求vllm-local就轉(zhuǎn)發(fā)到vLLM上的模型。這叫“按模型名路由”是網(wǎng)關(guān)最基礎(chǔ)的能力。但只有這個(gè)還不值得專門搭一個(gè)網(wǎng)關(guān)。你直接記端口也能做到。4.2 同模型多后端負(fù)載均衡和fallback現(xiàn)實(shí)中的場(chǎng)景是你同一個(gè)模型可能部署了多個(gè)副本比如Ollama上有一個(gè)量化版本vLLM上有一個(gè)原版精度版本。你希望請(qǐng)求優(yōu)先打到某個(gè)后端如果它掛了就自動(dòng)切換到另一個(gè)。這在LiteLLM的配置里可以這樣寫model_list: - model_name: qwen-router litellm_params: model: ollama_chat/qwen3:8b api_base: http://127.0.0.1:11434 model_info: mode: chat - model_name: qwen-router litellm_params: model: openai/qwen2.5-14b api_base: http://127.0.0.1:8000/v1 api_key: dummy兩個(gè)條目的model_name都是qwen-router但后端不同。LiteLLM會(huì)自動(dòng)在這兩個(gè)后端之間做負(fù)載均衡如果一個(gè)后端返回錯(cuò)誤它會(huì)自動(dòng)嘗試另一個(gè)。這就實(shí)現(xiàn)了對(duì)調(diào)用方透明的高可用。你調(diào)qwen-router這個(gè)模型永遠(yuǎn)不需要關(guān)心當(dāng)前Ollama是否掛了。有一次我Ollama進(jìn)程因?yàn)轱@存不足直接崩了而我的代碼還在正常跑因?yàn)榫W(wǎng)關(guān)自動(dòng)把請(qǐng)求全部路由到了vLLM。這個(gè)體驗(yàn)沒有網(wǎng)關(guān)的時(shí)候是做不到的。4.3 按成本或延遲路由本地場(chǎng)景下的取舍LiteLLM企業(yè)版支持基于成本預(yù)算或者延遲指標(biāo)來做路由不過本地部署場(chǎng)景用不到那么重的東西。我更推薦的做法是根據(jù)任務(wù)類型手動(dòng)分模型。比如我自己的用法是日常聊天、代碼生成這類交互式任務(wù)走Ollama上的qwen3:8b因?yàn)轫憫?yīng)快批量跑測(cè)試用例、批量文本分類這類不要求實(shí)時(shí)的任務(wù)走vLLM上的qwen2.5-14b因?yàn)榫雀?、并發(fā)吞吐更大。在網(wǎng)關(guān)層面我維護(hù)兩套模型名qwen-local-fast和qwen-local-heavy調(diào)用方按需選擇。這比在代碼里寫死兩個(gè)base_url要干凈得多。4.4 配置模型組和優(yōu)先級(jí)策略有些網(wǎng)關(guān)工具支持模型組的概念一個(gè)模型組下面掛多個(gè)模型實(shí)例并配置權(quán)重或者優(yōu)先級(jí)。LiteLLM對(duì)權(quán)重的支持是通過router_settings來實(shí)現(xiàn)的配置方法是在config.yaml里加一段router_settings: routing_strategy: usage-based-routing model_group_alias: fast-models: [qwen-local, llama-local]這里的model_group_alias給fast-models取了一個(gè)別名調(diào)用方請(qǐng)求fast-models的時(shí)候網(wǎng)關(guān)會(huì)按策略從組里選一個(gè)模型。實(shí)測(cè)下來這種分組策略在你同時(shí)維護(hù)多個(gè)同量級(jí)模型、想交替驗(yàn)證不同模型效果的時(shí)候特別好用。你今天想試Qwen明天想試Llama調(diào)用方代碼一行不用改只要改別名指向的組內(nèi)模型就行。4.5 多Key管理與調(diào)用溯源網(wǎng)關(guān)還能幫你做多Key管理這一點(diǎn)在多人共用一臺(tái)開發(fā)機(jī)、或者多個(gè)項(xiàng)目共用一個(gè)本地模型服務(wù)的時(shí)候特別關(guān)鍵。LiteLLM配置了master_key之后你可以給每個(gè)項(xiàng)目或者每個(gè)開發(fā)者發(fā)一個(gè)獨(dú)立的虛擬Keycurl -X POST http://127.0.0.1:4000/key/generate \ -H Content-Type: application/json \ -H Authorization: Bearer sk-1234 \ -d {models: [qwen-local], max_budget: 1000}返回的JSON里會(huì)有一個(gè)新的key這個(gè)Key只能訪問qwen-local這一個(gè)模型而且有1000美元的預(yù)算上限本地場(chǎng)景可以換成你自己定的token上限。好處非常實(shí)際項(xiàng)目A的Key出了問題、調(diào)用量暴漲你直接刪掉那個(gè)Key就行不影響其他項(xiàng)目的正常使用。而且從日志表格里能看到每個(gè)Key的調(diào)用記錄排查問題的時(shí)候可以精確追溯“是哪個(gè)項(xiàng)目在瘋狂調(diào)模型”。5. 讓Codex CLI、Dify這類周邊工具統(tǒng)一走網(wǎng)關(guān)5.1 為什么周邊工具都要走網(wǎng)關(guān)而不是直連Ollama如果你的周邊工具鏈?zhǔn)荂odex CLI、Claude Code、Dify這類它們默認(rèn)都支持配置自定義的模型服務(wù)地址。很多人直接填Ollama的地址這能用但有兩個(gè)問題第一Ollama的API只支持Ollama自己管理的模型你想讓Codex CLI用一個(gè)跑在vLLM上的模型就做不到了。第二每個(gè)工具都要單獨(dú)配一份模型信息換模型要改N個(gè)地方。正確的姿勢(shì)是所有工具全部指向網(wǎng)關(guān)工具層面的模型名統(tǒng)一填網(wǎng)關(guān)里的model_name。這樣你換底層的模型服務(wù)對(duì)工具完全透明。5.2 Codex CLI接入本地網(wǎng)關(guān)Codex CLI是OpenAI出的終端編程助手默認(rèn)走OpenAI云端服務(wù)。要讓它的請(qǐng)求走本地網(wǎng)關(guān)需要修改它的配置文件。Codex CLI的配置文件是~/.codex/config.toml在里面加一段model qwen-local [model_providers.local] name Local Gateway base_url http://127.0.0.1:4000/v1 env_key LOCAL_GATEWAY_KEY wire_api chat然后在環(huán)境變量里設(shè)置LOCAL_GATEWAY_KEY隨便填一個(gè)非空字符串export LOCAL_GATEWAY_KEYsk-local配置完后啟動(dòng)Codex CLI讓它使用本地providercodex --provider local實(shí)測(cè)下來Codex CLI在代碼補(bǔ)全、簡(jiǎn)單代碼生成這類任務(wù)上用本地8B模型確實(shí)能跑通響應(yīng)速度取決于你的顯存和模型大小。如果用的是14B以上模型響應(yīng)會(huì)慢一些但對(duì)簡(jiǎn)單任務(wù)影響不大。5.3 Claude Code這類工具走網(wǎng)關(guān)的思路Claude Code是Anthropic的命令行工具它默認(rèn)走Anthropic的API地址但同樣支持自定義。它的配置文件里可以設(shè)置ANTHROPIC_BASE_URL環(huán)境變量指到網(wǎng)關(guān)。需要注意的一點(diǎn)是Claude Code走的是Anthropic協(xié)議而網(wǎng)關(guān)對(duì)外暴露的是OpenAI兼容接口。如果你要接Anthropic協(xié)議的工具需要網(wǎng)關(guān)層也支持Anthropic格式的轉(zhuǎn)發(fā)。LiteLLM的/v1/messages接口可以兼容一部分Anthropic格式但實(shí)測(cè)下來有一定差異不是所有模型都能完美適配。我的建議是如果你主力用Claude Code就不要強(qiáng)行讓它走本地模型了本地模型在復(fù)雜代碼任務(wù)上的表現(xiàn)和云端大模型差距還是明顯的。本地網(wǎng)關(guān)更適合接那些本身就用OpenAI協(xié)議的工具比如Codex CLI、Dify、各種自建應(yīng)用。5.4 Dify接入本地網(wǎng)關(guān)Dify是一個(gè)很好用的AI應(yīng)用開發(fā)平臺(tái)支持配置自定義模型供應(yīng)商。如果你用Dify操作本地部署的AI大模型官方有Ollama集成但為了統(tǒng)一管理我建議在Dify里配置OpenAI-API-compatible的供應(yīng)商。在Dify的“設(shè)置 - 模型供應(yīng)商 - OpenAI-API-compatible”里填寫API Base URLhttp://127.0.0.1:4000/v1API Key你給Dify單獨(dú)生成的虛擬KeyModel IDqwen-local就是網(wǎng)關(guān)里的模型名這樣Dify上搭建的應(yīng)用底層模型全走網(wǎng)關(guān)后續(xù)你想把某個(gè)應(yīng)用從Qwen切到Llama只需要在Dify后臺(tái)改模型ID或者干脆在網(wǎng)關(guān)層調(diào)整路由策略應(yīng)用完全不用動(dòng)。這里也能看出來做程序化開發(fā)或者AI應(yīng)用集成的人網(wǎng)關(guān)聯(lián)動(dòng)的負(fù)載均衡和模型別名機(jī)制真的能省很多事。5.5 為遠(yuǎn)程開發(fā)場(chǎng)景開放網(wǎng)關(guān)端口本地模型跑在一臺(tái)服務(wù)器上你人在筆記本上想通過CLI調(diào)用這時(shí)候需要讓網(wǎng)關(guān)監(jiān)聽非回環(huán)地址。啟動(dòng)參數(shù)里把--host改成0.0.0.0litellm --config config.yaml --port 4000 --host 0.0.0.0這時(shí)候網(wǎng)關(guān)會(huì)監(jiān)聽所有網(wǎng)絡(luò)接口局域網(wǎng)內(nèi)其他設(shè)備就能通過http://你的服務(wù)器IP:4000/v1來訪問。但這里有個(gè)安全意識(shí)要提醒如果不加鑒權(quán)內(nèi)網(wǎng)任何人都能白嫖你的模型資源甚至通過SSRF風(fēng)險(xiǎn)點(diǎn)探測(cè)你內(nèi)網(wǎng)的其他服務(wù)。所以開放網(wǎng)絡(luò)訪問之前務(wù)必在config.yaml里配置好master_key并且調(diào)用方都要帶上正確的Authorization頭。6. 踩坑記錄網(wǎng)關(guān)CLI實(shí)戰(zhàn)中我遇到的那些問題6.1 最常見的問題模型請(qǐng)求超時(shí)現(xiàn)象調(diào)用網(wǎng)關(guān)接口時(shí)模型遲遲不返回最后報(bào)超時(shí)錯(cuò)誤。排查鏈路第一步確認(rèn)后端模型服務(wù)是否正常。直接curl后端的原始接口curl -X POST http://127.0.0.1:11434/v1/chat/completions \ -H Content-Type: application/json \ -d {model:qwen3:8b,messages:[{role:user,content:hi}],max_tokens:10}如果這里就超時(shí)說明問題在后端可能是模型正在加載、顯存不足導(dǎo)致計(jì)算極慢或者Ollama的并發(fā)隊(duì)列塞滿了。第二步如果后端正??词遣皇蔷W(wǎng)關(guān)的request_timeout配置太短。LiteLLM默認(rèn)超時(shí)是600秒正常不會(huì)觸發(fā)但如果你改過配置把這個(gè)值調(diào)小過長(zhǎng)文本生成就會(huì)頻繁超時(shí)。第三步看網(wǎng)關(guān)日志里有沒有Connection reset或者Read timeout之類的錯(cuò)誤。如果有檢查后端服務(wù)的并發(fā)配置比如Ollama默認(rèn)OLLAMA_NUM_PARALLEL可能限制并發(fā)數(shù)請(qǐng)求排隊(duì)超過一定量就會(huì)拖垮響應(yīng)時(shí)間。6.2 模型名對(duì)不上導(dǎo)致404或者400現(xiàn)象調(diào)用網(wǎng)關(guān)時(shí)報(bào)model not found。這個(gè)坑絕大多數(shù)人都踩過。原因通常是model_name和實(shí)際的litellm_params.model搞混了。網(wǎng)關(guān)對(duì)外只認(rèn)model_name你配置里寫的是什么調(diào)用方就必須傳什么而litellm_params.model是對(duì)后端用的也很有講究。比如Ollama上的模型實(shí)際叫qwen3:8b你配置里寫的是litellm_params: model: ollama_chat/qwen3:8b這里必須帶ollama_chat/前綴如果只寫qwen3:8bLiteLLM會(huì)嘗試走OpenAI協(xié)議把請(qǐng)求發(fā)到默認(rèn)的OpenAI地址而不是Ollama結(jié)果必然報(bào)錯(cuò)。排查方法是打開網(wǎng)關(guān)的debug日志看它實(shí)際轉(zhuǎn)發(fā)到了哪個(gè)地址litellm --config config.yaml --port 4000 --debug日志里會(huì)明確打印出路由的目標(biāo)URL一眼就能看出問題。6.3 網(wǎng)關(guān)端口被占用導(dǎo)致啟動(dòng)失敗現(xiàn)象啟動(dòng)網(wǎng)關(guān)節(jié)時(shí)日志顯示address already in use。這個(gè)最常見的原因是上一次啟動(dòng)的網(wǎng)關(guān)進(jìn)程沒有干凈退出。用pkill -f litellm殺掉所有相關(guān)進(jìn)程后再檢查端口占用lsof -i :4000確認(rèn)端口空了再啟動(dòng)。如果只是換配置重載不需要每次殺進(jìn)程但如果你本地調(diào)試頻繁建議寫一個(gè)restart.sh腳本統(tǒng)一管理#!/bin/bash pkill -f litellm --config sleep 1 nohup litellm --config config.yaml --port 4000 gateway.log 21 echo Gateway restarted6.4 流式輸出在部分客戶端上不生效現(xiàn)象用curl加stream: true能正常看到流式輸出但某些客戶端工具比如一些Node.js庫(kù)或者老版本SDK只拿到一次性返回。這個(gè)大多是客戶端SDK版本問題跟網(wǎng)關(guān)關(guān)系不大。OpenAI兼容接口的流式規(guī)范已經(jīng)非常成熟只要客戶端支持stream_options或者SSE解析網(wǎng)關(guān)都能正常轉(zhuǎn)發(fā)。如果遇到某個(gè)SDK不兼容可以檢查網(wǎng)關(guān)日志里有沒有SSE相關(guān)的報(bào)錯(cuò)。LiteLLM對(duì)流式轉(zhuǎn)發(fā)的處理總體比較穩(wěn)我實(shí)測(cè)用官方OpenAI Python SDK、LangChain、LlamaIndex都沒問題。6.5 虛擬Key鑒權(quán)失敗現(xiàn)象配置了master_key之后原來不帶Authorization的請(qǐng)求全部報(bào)401。這是正常現(xiàn)象master_key一配置所有請(qǐng)求都需要鑒權(quán)。這時(shí)候你之前生成的虛擬Key就派上用場(chǎng)了。有一個(gè)容易踩的細(xì)節(jié)虛擬Key的生成和模型權(quán)限綁定如果你生成Key的時(shí)候只授權(quán)了qwen-local但請(qǐng)求的時(shí)候傳的model是llama-local網(wǎng)關(guān)會(huì)拒絕。排查方法是用master_key先請(qǐng)求一次看看能不能通如果master_key能通而虛擬Key不能通就是Key的模型權(quán)限配置問題。6.6 本地網(wǎng)關(guān)和Docker網(wǎng)絡(luò)互通問題如果你把網(wǎng)關(guān)跑在宿主機(jī)上但vLLM跑在Docker容器里注意容器端口映射和host地址的問題。在容器內(nèi)部的程序訪問宿主機(jī)服務(wù)時(shí)localhost是容器自己不是宿主機(jī)。要么你在容器啟動(dòng)時(shí)加了--networkhost要么就用host.docker.internal這個(gè)特殊域名來訪問宿主機(jī)。這個(gè)坑在同時(shí)用Docker部署多個(gè)模型服務(wù)時(shí)很常見網(wǎng)關(guān)看到后端遲遲連不上第一反應(yīng)是網(wǎng)絡(luò)問題第二反應(yīng)就是這種跨容器訪問的地址問題。6.7 顯存不足導(dǎo)致的進(jìn)程崩潰最后說一個(gè)模型服務(wù)層面的坑。本地模型網(wǎng)關(guān)本身不吃太多顯存但后端Ollama/vLLM會(huì)因?yàn)橥瑫r(shí)加載多個(gè)模型導(dǎo)致OOM。如果你在網(wǎng)關(guān)里注冊(cè)了多個(gè)模型而調(diào)用方恰好同時(shí)請(qǐng)求了不同模型后端推理引擎可能因?yàn)轱@存不足直接崩潰。我的處理建議是如果你顯存不夠大比如8GB以下一次只加載一到兩個(gè)模型其他模型用的時(shí)候再拉起來不用的時(shí)候Ollama會(huì)自動(dòng)釋放顯存。另外可以在Ollama啟動(dòng)時(shí)限制并發(fā)大小OLLAMA_NUM_PARALLEL1 OLLAMA_MAX_LOADED_MODELS1 ollama serve別貪多一次能用的模型數(shù)量少一點(diǎn)穩(wěn)定性高很多。7. 還想補(bǔ)充的幾個(gè)實(shí)用細(xì)節(jié)7.1 網(wǎng)關(guān)CLI在Windows環(huán)境下的差異我在Linux上用得最順手但Windows終端也不是不能用。LiteLLM的Python包在Windows上運(yùn)行沒問題就是進(jìn)程管理和信號(hào)控制不如Linux方便。Windows下用taskkill /F /IM litellm.exe殺進(jìn)程或者干脆在PowerShell里用Stop-Process按進(jìn)程號(hào)關(guān)。7.2 用systemd把網(wǎng)關(guān)做成開機(jī)自啟服務(wù)如果你是在Linux服務(wù)器上常駐跑網(wǎng)關(guān)可以寫一個(gè)systemd服務(wù)開機(jī)自動(dòng)啟動(dòng)崩潰自動(dòng)重啟[Unit] DescriptionLiteLLM Gateway Afternetwork.target [Service] ExecStart/usr/local/bin/litellm --config /etc/litellm/config.yaml --port 4000 Restartalways Useryour_username [Install] WantedBymulti-user.target把文件放到/etc/systemd/system/litellm-gateway.service然后sudo systemctl daemon-reload sudo systemctl enable --now litellm-gateway這樣網(wǎng)關(guān)就成了一個(gè)真正的系統(tǒng)服務(wù)比你手動(dòng)nohup要省心得多。7.3 結(jié)合現(xiàn)有網(wǎng)絡(luò)架構(gòu)做權(quán)限隔離既然聊到了網(wǎng)關(guān)就順帶提一個(gè)跟網(wǎng)絡(luò)架構(gòu)有關(guān)的經(jīng)驗(yàn)。如果你的本地模型服務(wù)部署在公司或者工作室的局域網(wǎng)里而且旁邊就是要對(duì)接政務(wù)網(wǎng)或者財(cái)務(wù)專線的機(jī)器我建議網(wǎng)關(guān)卡在NAT層后面網(wǎng)關(guān)單獨(dú)用一個(gè)端口段模型服務(wù)本身只綁定內(nèi)網(wǎng)IP不暴露到外網(wǎng)。網(wǎng)關(guān)是你所有模型請(qǐng)求的唯一入口同時(shí)它也是唯一需要進(jìn)行訪問控制的邊界。這個(gè)思路和你設(shè)置固定網(wǎng)關(guān)地址、劃分VLAN的思路是一樣的網(wǎng)關(guān)收斂流量邊界收斂風(fēng)險(xiǎn)。7.4 這是我個(gè)人最推薦的目錄結(jié)構(gòu)最后分享一個(gè)我實(shí)際用來管理這套網(wǎng)關(guān)的目錄結(jié)構(gòu)~/ai-gateway/ ├── config.yaml # 主配置文件 ├── gateway.log # 運(yùn)行日志 ├── litellm.db # 調(diào)用記錄數(shù)據(jù)庫(kù) ├── restart.sh # 重啟腳本 └── models/ └── README.md # 記錄每個(gè)模型的實(shí)際用途配置文件用Git管理每次改模型之前先備份。這些習(xí)慣看起來很簡(jiǎn)單但時(shí)間久了你會(huì)感謝自己當(dāng)初的整理。我遇到過一個(gè)很現(xiàn)實(shí)的情況一個(gè)月前配置的模型我根本不記得它跑在哪個(gè)端口、哪個(gè)后端上全靠在models/README.md里的記錄才想起來。這套本地大模型網(wǎng)關(guān)CLI的組合我大概用了三個(gè)月期間經(jīng)歷了Ollama崩潰、vLLM擴(kuò)容、多個(gè)工具鏈切換模型等各種情況網(wǎng)關(guān)一直穩(wěn)定地在中間層做路由和轉(zhuǎn)譯。如果你也在為本地多模型管理頭疼可以按這篇文章里的思路逐步搭起來。先用一條命令把網(wǎng)關(guān)跑起來再慢慢把多模型路由、Key管理、日志統(tǒng)計(jì)這些東西加上去你會(huì)發(fā)現(xiàn)本地部署AI大模型這件事其實(shí)可以非常有條理。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
狠狠干在线| 国产精品VA在线| 久久AV无码精品人妻系列试探| 亚洲中文乱字字幕线在永久| 色婷| 激情五月天的婷婷| 岛囯综合激情网| 久久久久9| 无码毛片992367| 久久精品日| 天天影院色| SS丁香五月婷婷| 精典久久| 97碰免费视频在线| 激情婷婷在线中文字幕| 五月婷婷色白丝| 99色在线| 久久怕怕视频| 中文AV网站| 人人草人人视| 色狠久| 色综合播放| 日本婷久久| 三级黄色大片视频| 超级碰碰97在线| 欧日韩成人| 思思精品热在线| 色丁香五月婷婷婷| 五月天伊人av| 伊人五月天综合网| tingtingjiqingwuyue| 国产九九一区二区三区| 久操福利| 激情AV| 亚洲色色五月天| 国产精女同一区二区三区久 | 丁香五月综合狠狠| 丁香九月激情在线视频| 99精品丰满| 老师的粉嫩小又紧水又多A片视频| 欧美精产国品一二三区| 色婷婷免费观看| 激情五月婷婷综合| 精品五月天| 任你搞网站| 六月激情久久| 99热99久久| 色色色99| 婷婷五月天久久久| 五月丁香婷婷成人网| 狠狠爱婷婷爱| 色一情一乱一伦一区二区三区| 俺去也五月| 久久久久亚洲AV无码网影音先锋| 婷婷五月成人| 婷婷天堂伊人| 天天综合 99久久婷婷| 综合激情站| 密桃激情五月天综合网| 9久热这里只有精品| 丁香五月综合在线| 狠狠干综合网| 亚韩在线视频| 丁香五月天激情综合| 99视频在线精品| 婷婷在线免费| 亚洲日韩操B| 亚洲妇女熟BBW| 97很鲁在线视频| 91久久精品国产91性色TV| 青青草视频免费观看| 色五月婷婷777| 婷婷丁香精品视频在线观看| 久操综合| 色五月婷激情| 色婷婷成人| 9久久精品| 亚洲精品久久久无码| 91精品久久久久久久久久| 色综久久久| www.九月婷婷丁香.com| 伊人网欧美在线男人天堂五月丁香| 丁香五月亚洲激情婷婷射| 亚洲婷婷在线播放十月| 色婷婷激情五月天| 天天爽天天操| 久久午夜丁香| 丁香五月亭亭六月综合激情网| 五月丁香九九九综合| 亚洲欧美999| 天天色丁香| 丁香五月影院| 9久国产精品| 婷婷5月色| 天天透天天摸天天舔| 婷婷激情五月综合| 熟女人妻一区二区三区免费看| 操精品9| 亚洲av日韩无码| 亚洲婷婷视频| 99ri精品在线| 1024在线观看免费视频| 狠狠操.com| 激情婷婷五月基地| 伊人激情AV一区二区三区| 变态另类色图| 中出内射的人妻视频| 99综合| 天天狠狠夜夜狠狠2023| 婷婷五月丁香超碰| 色婷婷久久综合久色综| 一本色道久久综合狠狠躁一二三| 色婷丁香五月| 婷婷中文字幕| 偷偷狠狠久久婷婷五月天| 开心色播色五月婷婷| 久婷| 国产综合婷婷| 激情婷婷五月天| 99精品成人无码A片观看金桔| 五月婷免费视频| 九九九激情综合| 久婷五月| 69精品人人人人| 免费V片在线| 天天摸天天舔天天爽| 色呦呦美女| 色色综合热| 五月社区婷婷激情| 97在线观看| 久久婷五月天| 成年人丁香五月| 色久影院| 99热精品在线| 色丁香五月婷婷| 婷婷五月综合体验看| 欧美精品在线观看| 99色播| 在线播放成人网站| 亚洲人人96@| 久久久8| 99九九视频精彩在线| 六月合五月婷| www.久久9| 亚洲第一色区| 亚洲另类AV| 狠狠色精品综合| 久久五月视频| 五月婷婷综合色啪首页| 热99色| 一个色的综合| 亚韩精品视频1区| 丁香六月爱综合| 中字幕视频在线永久在线观看免费| 天天干,天天舔| 亚洲AV综合在线观看| 日本123区日韩欧美不卡在线看| 丁香五月激情视频| 91岛国片| 五月婷婷六月天| av九九| 99视频在线精品免费观看2| 女人天堂久久| 天天舔天天爽| 99热日韩| 亚洲视频二区| 日本欧美成人片AAAA| 五月深爱婷婷| 97伊人综合婷婷| 婷婷婷婷婷婷婷五月丁香| 五月婷婷久久爱| 天天爽天天爽视频| 婷婷五月综合婷婷| 五月天婷婷色综合| 久婷婷| 影音先锋按摩| 婷婷六久久| 色色日本| 丁香六月AV| 五月丁香啪| 国产精品蜜臀99| 91在线人| 色婷视频| 天天日日夜夜| caopeng97日韩| 九九婷婷激情综合网| www,av好吊操| 69热在线| 婷婷五月激情五月丁香五月| 亚洲精品久久久久AV无码| 小视频一区| 久操97| 99热精品在线在线| 99热在线看| 97av在线视频| 国产黄色av| 综合色色色| 婷婷成人小说综合| wWwCom夜操wwW| 中文字幕免费高清电视剧| 婷婷五月成人系列| 人妻性爱| 婷婷中文无码| 亚洲免费电影2| 色色色9| 五月丁香五月天现场视频| 东北黄色一级| 五月婷婷伊| 婷婷伊人综合中文字幕| 五月婷婷丁香综合| 99热99热在线观看| 日本综合色色| 九色七七| 婷婷五月天情色| 中国女人做爰A片| 色五月天丁香婷婷| 五月丁香在线观看| www,99热| 五月婷婷伊人久久| 五月婷婷色丁香| 9月色婷婷| 色五月激情五月| 9l视频自拍九色9l视频自拍九色9l社区| 中文字幕簧片| 久久小视频免费| 婷婷五月网图片区| 婷婷久久精品| 日本精品九九九| 伊人综合网站| 国产在线aaa片一区二区99| 成人网在线视频| 综合色色婷婷| 婷婷激情丁五月| 欧美操人| 色五月丁香五月激情五月激情| 婷婷五月,偷窥偷拍网| 中日韩美欧成人一区二区精品在线| 操碰99| 99热这里只有精品在线| 五月天婷婷乱论小说| 热久久视频99| 婷婷综合伊人丁香| 26uuu国产激情视频| 久久久久亚洲A∨成人乱码电影| 激情综合99| 99人人看| 亚洲另类av| 色欲AVV| .精品久久久麻豆国产精品| 色综合色综合网| 五月天社区| 日狠狠| 婷婷六月五月天综合| 色色色.com| 激情的五月| 色情五月丁香婷婷网| 亚洲精品影视| 激情五月天激情网| 色五月五月丁香| 五月丁香成人| 五月天激情婷婷久久| 久色资源网| 在热视频精品| 五月丁香色综合| 婷婷五月激情图片| 色五月丁香五月| 99re思思热久久| 久久久婷| 夜夜嗨一区二区三区直播内容| 国产69久久久欧美黑人A片| 婷婷在线视频| 另类国产欧美视频| 九九99九九99偷拍视频免费看| 成人 视频免费观看网站| 99伊人性爱在线影院| 97黑人精品区| 人妻乱码久久久| 婷婷五月丁香伊人网| 色播婷婷五月天| 草做免费在线观看| 久久婷色| 成人龟情网丁香五月| 天天干天天av天天射| 激情久久综合网| 久热99热| 岛国av网| 99九九综合久久九九| 精品久久久人妻| 99热这里是精品| 99丁香婷婷综合网| 91在线日| 五月天激情av| www激情| 国产一级视频a| 婷婷 丁香 久久| 久久精典| 99热在这里只有精品| 99热99美国在线观看| 婷婷色五月天在线观看| 丁香狠狠色婷婷久久无码视频| 丁香玖玖| 天天插天天| 久久五月天网| 超碰婷婷五月| 婷婷欧美色| 91精品综合久久久久久五月丁香 | 丁香五月六月欧美| 久热这里只有精品6| 激情5月婷婷| 六月婷婷九月丁香| 婷婷五月六月丁香综合| 日韩1区2区| 91男人资源站| 国产永久一二一起草| 丁婷婷五月天在线播放| 日韩精品一区二区三区,四区,五区视频| 欧美一黄一色一乱一伦| 久久99激情| 在线成人视频免费| 色播激情| 99热九九在线| 精品一二三区久久AAA片 | 日韩AV色色色| 一点色成人网| 丁香色情五月天| 99精品免费视频| 伊人在线视频| 中文人妻主播久久| 天天草天天爽| 伊人久久五月天| 另类综合婷婷五月天欧美视频| 天天弄天天操| 9+1视频网址| 天天影院色| 欧美性生交XXXXX无码小说| 97色永久免费视频| 67194中文字幕| 丝雨一区二区| 97婷婷五月| 国产精品99久久久久久久女警| 色综合综合色| 色狠狠色| 五月丁香狠狠爱| 婷婷 丁香 精品| 97色射| 六月丁香深深爱| 夜夜干天天操| 99这里是99在线视频| 久久婷婷久久| 97碰在线视频| 人妻少妇色综合| 五月婷婷丁香综合| 女人天堂AV| 超碰在线人人| 99精色| 性视频久久| 操97免费超级视频| 欧美色色色色色色色| 天天操婷婷| 吾爱AV导航| 《蜘蛛女》梁铮1995| 99婷婷综合| WWW.色婷婷.COM| 色欲色欲久久宗合网| 色情播放| 97在线天堂| 亚洲成人va| 色99欧洲色19| 久久婷婷内射| 色五月丁香五月激情五月激情| 色色色色网站| 婷婷丁香五月天小说| 欧类av怡春院| 国产偷人妻精品一区| 国产免费一区二区三州老师F1F1……| 99热综合色图| 美女va| 色五月婷婷五月天| www,26uuu,c0m,色情| 激情婷婷五月综合| 91爱操| 五月综合色| 激情五月天综合网| 韩国天天婷婷| 色六月丁香婷婷啪啪啪| 欧美综合激情| 五月婷婷丁香大陆免费| 狠狠人人| 黄色一极大片| 天天插天天射| 天天舔天天爽| 六月丁香深深爱| 日韩精品VIP| 色综合区| 婷婷开心综合人妻小说网址| 美女伊人久久| 这里有精品| 2025年最新亚洲在线欧美| 色色色97| 日韩专区五月天婷婷丁香| 淑女丝袜bi操逼123| AA久久| 日日做A爰片久久毛片A片英语| 99热这里只有精品在线播放| 久久久中文| 狠狠操狠狠色| 日韩aaa| 性天天中文网| 99这里只有免费的精品| 2022人人操人人看| 日本人人超碰| 婷婷丁香六月| 丁香成人五月天| 综合激情开心五月| 婷婷五月激情欧美| 天堂网亚洲色图| 五月天色影院| 婷婷99狠狠躁天天躁中| 国产另类综合| 乱女乱妇熟女熟妇综合网站| 色吧婷婷| 久久五月婷婷视频| 久热99狠| 亚洲亚洲人成综合网络| 五月丁香婷婷成人网| 另类激情四射| 青青久久五月天丁香婷婷| 99操久久| 五月天婷婷激情在线色图| 天天天天天天天干| 狠狠综合久久| 色伊人啪| 亚洲色图日韩网址| 在线观看日韩12345区| 91婷婷丁香| 久久婷婷综合五月趴| 天天日天天狠狠操| 色就是色婷婷五月亚洲激情| 五月综合激情| www.9797国产| 国产精品视频网| 五月丁香本色在线观看| 超碰v| 99精品色| AV性爱网| 99热精品免费| 国产乱子轮XXX农村| 99操视频| 婷婷伊人| 91精品综合久久久久久五月丁香| 激情99| AV操操操| 五月丁香影视| 成人永久免费视频在线观看| 五夜丁香| 91seav| 婷婷色啪| 五月丁香综合在线| 大香蕉520| 极品人妻VideOssS人妻| 99视频在线| 国产成人在线精品| 91九色熟女| 99久久97久久欧美综合网| 中文在线成人| 伊人网大香| 欧日韩成人| 91色在线/日韩| 任你日视频| 人人97碰| 综合五月丁香久久| 怡红院精品视频久久久久久久久| 久久激情五月网| 99视频只有这里精品| 日日日影院| 五月天俺去也| 超碰猛烈的性猛交| 99热手机在线精品| 日韩黄色影院| 色婷成人狠干| 色99在线| 婷婷五月天a| 这里只有精品网站| 在线观看亚洲视频影院| 亚洲AV网站| 怡红院 久久| 综合亚洲五月天| 丁香花五月天| 色五月大| 99精品网| 五月丁香综合网| 影音先锋91| 一区色色色色网| 亚洲色情免费网| 国精产品一区二区三区| 成人电影在线免费试看| 最近中文字幕大全免费版在线| 久久婷婷丁香花综合网| 影音先锋毛片网站| 99热精品综合| 九九碰九九爱97超| 婷婷五月天99综合网站| 久久五月丁香婷婷| 日撸夜撸日操| 深爱婷婷网| 在线五月婷| 91婷婷搞| 2025天天操| 操碰99| 精品欧美一区二区三区久久久| 69人人操人人爽| 婷婷五月天久久| 99热在线中文字幕| 99热超碰在线| 婷婷五月综合免费在线| 天天综合精品| 在线sebiav精品视频| 中文字幕AV在线| 春色激情第四色| EEUSS鲁片一区二区三区| 极品少妇XXXX精品少妇偷拍| 丁香婷婷91在线观看视频| 婷婷色无码| 亚洲婷婷五月天| 少妇被躁爽到高潮无码文| 婷婷玖玖五月天| 丁香伊人激情| www.99视频| 性爱网六月丁香| 五月天a婷婷伊人| 99九九综合久久九九| 深夜婷婷 丁香| 99久久婷婷国产综合精品青桔| 日日.c| 亚洲最大成人综合网720P| 久久婷五月综合| 99热在线观看亚洲区| 99爱视频在线观看| 婷婷六月激情| 天天射影院| av在线免费播放观看| 久久er免费视频| 久久超级碰碰| 日韩一级网站| 可以直接看的AV| 天天狠狠综合精区| 五月天婷婷色播| 五月激情六月丁香| 丁香婷婷久久| 色99在线| 婷婷综合久久| 国产性爱亚洲是图| 五月婷婷性爱| 色婷婷久久综合中文久久一本| av在线免费网站 | 亚洲日本韩国| 日本在线免费中文com.| 色婷婷狠狠| 99er日韩| 亚洲AV成人在线| 九九Av| 五月丁香999| 日本一级| 色99在线观看| 人人干天天舔| 亚洲精品久久久久久久久久吃药 | 婷婷久久精品| 人人干99| 丁香五月成人社区| 五月天婷a在线| 亚洲中文字幕av| 色热久资源| 婷婷伊人网| 玖玖伦理电影| 婷婷无五月无码视频| 热久久视频99| 成人短视频免费| 人妻久久久久久久 | 色五月视频,小说| 91精选国| 婷婷激情视频| 伊人五月天男人的天堂在线| 国产亚洲成AV人片在线观黄桃| 午夜九九电影| 亚洲电影中文字幕| 丁香六月狠狠干| 任我肏| 亚洲色色色| 狠色狠色狠色狠色狠色网| 五月天综合在线网| 99热在线观看免费精品| 亚洲午夜av| 深爱五月天| 天天看夜夜看| 五月丁香久| www.五月天婷婷| 开心五月色婷| www.日本91| 精品人妻一区二区三区四区不卡在| 人妻自慰在线| 久久久色情| 五月丁香无码| 天天艹夜夜爽| www.yw色| 日日影院 | 色色色com| 亚洲色婷婷| 91久久精品国产91性色TV| 婷婷性爱五月天| 日本99热| 六月丁香开心婷婷欧美| 婷婷五月天成人| 色五月色五天色情网| 99狠狠| 午夜少妇在线观看视频| 99热这里都是精品| 亚洲五月综合色播| 久久精品63| 99ER热精品视频| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 性爱视频久久| 色综合开心五月深爱五月| 亚洲色婷婷五月天| AV成人在线网站| 色射影院| 色五月婷婷丁香五月| 综合五月婷婷| 色婷婷四色| 在线观看免费视频| 五月激情啪啪啪| 亚洲第一色区| 婷婷综合五月激情| 99日本黄站| 欧美高潮9| 五月丁香啪| 亚洲AV综合网| 99精品热| 另类综合婷婷五月天欧美视频| 99色综合| 超碰9| 婷婷色五月天色色| 97人人操人人插| 婷婷五月天综合网| 久久久97| 91丨九色丨熟女|新版| 欧美va欧美va差| 天天上天天爽| 亚洲色9| 99在线免费视频| www.一起草av| 99热香港| www.色多多婷| 艳妇野外情欲放荡HD| 99这里有精品| 色爱五月天| 成人网站免费在线播放| 五月婷婷啪啪| 色综合天天综合成人网| 欧美国产一区二区三区| site:feetmall.com| 丁香成人综合| 五月天成人伊人| 久久国产精品乱子伦_靑青草…| 99热老司机| 91人妻人人操人人爽| 婷婷五月色情| 色色色在线观看| 五月综合丁| 碰超在线九色| 97婷婷丁香五月天激情图片| 停停六月 综合| 婷婷性爱综合| 亚洲视频国产一区| 99热在线精品观看| 91精品婷婷国产综合久久| 91大神操美女| 五月丁香六月久久| 日本五月婷婷久久久六月丁香| 综合久久婷婷五月丁香| 九月婷婷综合八月丁香在线观看| 翔田千里aV中文字幕| 激情婷婷五月天伊人在线观看| anquye伊人| se99在线| 亚洲欧美999| 亚洲色五月天| 色色色99| 婷婷伊人綜合中文字幕| 99超超碰| 日本在线wwww| 亚洲不卡| 久久狠色噜噜狠狠狠狠97| 五月丁香亚洲五月| 欧美美美女性色视频| www.色婷婷.com| 色色色色综合网| 26uuu欧美| 在线中文AV| 亚洲欧洲一二| 婷婷伊人网| 2025中文在线视频字幕免费观看| 激情5月天天天| 婷婷深爱五月天| 五月婷亚洲精品AV天堂| 九九色综合| 九九伦子片| 9热视频在线观看| 六月婷婷之青青草| 久久五月天激情| 丁香蜜臀黄色婷婷五月天| 91啪啪视频| 激情六月婷婷啪啪| 婷婷午夜激情| 五月伊人视频在线看| 欧美成人色婷婷| 婷婷色五月天在线观看| 熟妇国产| 五月丁欧美| 思思 热 99| 色五月激情网| 日本成人内射| 大香蕉人妻| 丁香五月色五月婷婷宗合| 9999热在线| 久碰婷婷视频| 影音先锋 婷婷| 99狠狠| 青草视频在线播放| 狼友视频在线观看18| 天天拍久久| 激情婷婷色色| 第四色色六月色综合| 狠狠干婷婷| 第四色婷婷丁香五月| 狠狠综合| 四色五月视频| 欧美婷| 99爱视频在线观看| 五月丁香少妇| 五月亭亭综合五码| 亚洲成人网站在线观看| 国产三级片91| 亚洲精品午夜国产va久久成人| 五月天色图| 日本高清久| 第四色首页| 亚洲国产精品VA在线看黑人| 日韩啪啪视频| www.五月天| 久久九网| 巴基斯坦粉嫰无码视频| 色色a| AV在线大香蕉| 另类激情五月在线视频欧美| 激情6月| 99热这里只有精品国产免费| 超碰91在线| 丁香五月婷婷影院| 激情内射人妻1区2区3区| 五月大香蕉| 丁香五月综合激情啪啪| 97超级碰碰碰| 五月婷婷真爱激情网| 91在线观看九区| www.五月激情.com| 97av在线视频| 开心婷婷五| 色五月天综合网| 五月天综合久久| 91九色欧美| 男人的天堂97| 九九无码| 久久婷婷内射| 26uuu精品一区二区| 97人人看一| 激情五月丁香婷婷| 超碰国产在线观看| 日韩黄色电影| 久久99网址| 偷偷操99| 婷婷五月电影| 午夜色婷婷| 亚洲AV网站| 婷婷色婷婷| 91蜜桃婷婷狠狠久久综合9色| 九九99免费理论| 91精品久久久久久久| 日韩啪啪网| 这里只有精品视频视频在线观看| 天天色天天操天天射| 他改变了拜占庭| 91超级碰碰| 亚洲综合丁香五月| 日韩熟女啪啪视频| 婷婷香蕉精品| 日韩爱操视频| 熟女网站久久| 久久人妻视频| 日日婷婷不卡| 婷婷六月久久| 亚洲AV中文在线| 九九九这里只有精品| 久久激情网| 天天干肏夜夜| 综合激情sV| 丁香色六月婷婷| 玖月婷婷爱丁香| 中文字幕无码AV| 激情深爱综合网| 日本啪啪网| 开心激情站| 亚洲丁香五月在线观看| 玖玖婷婷色| 深爱婷婷网| 天天天天天天天操| 热99免费在线| 成人精品在线| 久播影院免费观看电视剧大全最新网| 密乳Va| 久久97| 色色AV色色色东莞| 欧美日韩成人在线| 天天综合区| 人人97碰| 五月天四色房丁香| 欧美图片丁香五月天| 久热9| 婷婷五月在线播放| 国产色色在线| 日本玖玖在线| 丁香五月激情网| 亚洲综合激情五月| 天天搞夜夜爽夜夜爽| 欧美,日韩成人在线| 99ri视频| 国产无套精品一区二区| 99热大全在线观看| 六月婷婷最新网址| 五月激情综合网| www.色五月| 亚洲色婷婷99一9|| 欧美激情综合色综合啪啪五月| AA片在线观看视频在线播放 | 玖玖爱导航| 久久久天堂国产精品女人| 激情五月天视频| 婷婷伊人激情婷婷| 亚洲综合在线播放| 五月婷狠狠| 五月天激情影院| 天天爽天天操| 久久婷婷五月草视频| 亚洲激情在线| 免费亚洲成人电影AV| 久久中文网| www.色综合| 99九九热在线观看| 日本颜色视频人人爱| 99久久a线观| 久久久久久久97| 婷婷五月丁香综合桃花色网| 亚洲妇女熟BBW| 这里只有精品视频在线| 97亚洲婷婷| 五月激情六月婷婷| 6080av| 亚洲综合视频天天精品| 丁香蜜臀黄色婷婷五月天| 日本9区视频| 五月激情四射网站| 亚洲精品久久久无码| 色综合激情| 久久久91| 淫视馆AV在线| 91九色中文| 五月丁香在线观看| 日本色色视频| 色色色色色网站| 色偷偷狠狠| 99热这里只有精品1998| 婷婷五月天,影院| 国产色丁香| 秋霞免费三级片| 91精品丝袜久久久久久| 久久婷婷激情| 综合色播| 淫荡家庭AV| 丁香五月天无码AV| 婷婷五月四狠狠| 99婷婷| 丁香婷婷六月婷婷六月婷婷六月婷婷 | 青青热久精品视频在线观看| 激情深愛五月視頻| 天天插综合在线| 爱爱色五月天| 色插综合网| 成人欧美Va| 九九精品在线网| 激情小说五月欧美亚洲丁香| 色综合天天天天做夜夜| 这里只有精品1| 人人摸人人澡人人| www.五月天色色.com| 棕合影院色色| 激情综合亚洲| 97香蕉碰碰人妻国产欧美| 99热成人| 天天激情站| 亚洲123区高清入口| 久久精品五月| 五月色婷婷影院| 丁香婷婷六月激情文学| 九九这里有精品视频| 狠狠色婷婷丁香六月| 精品皮股午夜AV| 婷婷五月丁香综合激情| 久久婷婷国产| 色色色欧美| 99se丁香| 98永久精品| 激情综合5| 密乳视频| 五月婷婷在线观看黄| www九九热| 风流少妇A片一区二区蜜桃| H亚洲| 色99热| 狠狠色激情在线| 丁香五月色欲| 色五月婷婷色| 99久久人妻精品无码二区| 伊人超碰在线| 97人人操在线| 99在线视频在线观看| 五月激情综| 思思久久精品| 婷婷伊人综合| 97久久久久| 人妻久久久久久久久| 99热精品在这里| www激情| 天堂网操| 草综合网| 激情五月六月婷婷| 色99在线| 久久蜜臀婷婷| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 美女要搞搞天天搞搞搞网站| 久久美女五月天| 亚洲中文字幕网| 碰碰碰91| 天天草婷婷五月| 97色啪| 国产亚洲精品久久久久久久久动漫| 97人妻碰碰碰久久| 狠狠色丁香99| 五月丁香综合激情网| 男人操女人高潮91视频| 日韩人妻在线观看| 五月天俺去也| www.五月天| 在线天堂9| 99综合免费视频| 99热这里只有精品55| OUMEIRIHANCHENGREN| 日本狠狠爽| 99啪| 五他月天啪啪啪| 天天摸天天舔天天爽| 99色色| 嘿嘿视频免费看9| 亚洲久久视频| 97人人干人人操| 97ai婷婷| 婷婷综合网站| 少妇大叫太大太粗太爽了A片| 国产婷婷五月天| 美女妹子后射视频网站在线观看| 99色视频| 精品久色| 中文字幕视频在线播放| 日本三级片片| 青青草原精品久久| 免费观看全黄做爰的视频| 亚洲人妻av| 久碰婷婷视频| 亚洲自拍天堂| 丁香六月伊人| 国产亚洲AV人片在线| 少妇激情五月婷婷| 五月天激情国产综合婷婷| 久久久五月婷婷| XX色综合| 婷婷新网址| 五月天基地| 韩国中文字幕91| 这里只有免费精品| 日本成人噜噜| 另类综合色| 日韩aⅴ视频| 久久人妻情侣| 欧美大片| 玖玖在线资源视频| 天天色亚洲| 丁香婷婷五月激情| 中文字幕人妻在线| 1024婷婷综合久久五月天| 激情六月色| 午夜成人在线免费视频| 天天久| 国产色99| 99国产精品久久久久久久久久久 | 亚州激情在线视频| 色情综合网| 九九热这里有精品23| 91超级碰碰碰| 色播五月丁香婷婷| 91在线就要啪| 五区毛片七区毛片| 天堂在线婷婷| 丁香五月影院| 色综合久久88色综合天天99| 99综合在线| 天天色天天搡| 精品一二三区久久AAA片| 日韩激情人伦人| 99热xx| 五月婷婷婷婷| 超碰电影在线播放| 国产成人网| 思思99热在线| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 成人 九九九九| 婷婷五月天国产在线播放| 综合色影| 五月天播播| 激情丁香淫荡婷婷| 91在线视频观看午夜福利| 人人草开心五月天| 影音先锋噜一噜| 激情婷婷五月天| 五月天精品综合| 色欲影香| 91九色精品熟女内射| 亚洲性图一区二区| 五月婷婷国产| 99精品在这里| 色宗合久久五月婷婷| 丁香五月婷婷激情蜜桃| 亚洲成人高清在线| 五月色婷婷影视在线电影| 丁香婷婷六月| 久久停停超碰| 五月丁香婷婷激情| 一起肏在线视频| 99热综合网| 五月婷婷综合在线观看| 色碰干| 欧美性生交XXXXX无码小说| 久久免片| 日日夜夜狠狠婷婷色| 韩日AV片| 99色视频在线| 婷婷色五月综合| 香蕉婷婷| www.婷婷久久五月天| 日韩九区| 开心五月深爱五月丁香五月激情五月 | 久久久久9999| 亚洲色vA| 1024人妻| 色婷婷五月天无码视频| 99久久极情精品一区| 久久这里有精品视频| 丁香 婷婷 激情 综合 五月| 久久九九99.www| 99热精品无码| 99色网站| 伊人国产婷婷五月天| 9l视频自拍9l九色9l成人| 亚洲电影在线观看| 亚洲综合九九| 久久久久久人妻久久久久久久久久人妻久久久| 91色色色| 青青草Avb在线| 人妻内射一区二区在线视频| 婷婷五月色综合| 激情婷婷五月基地| 久久99激情| 一级精品999WWW| 亚洲a片免费观看| 九九热精品| 9久久久久| 天天爽,夜夜爽| 69午夜成人影片| 六月丁香久久| 91九色视频在线观看| 99久久婷婷国产综合精品电影| 五月婷婷之综合激情| 六月婷婷综合| 性天天中文网| 五月丁香在线国产| 丁香九月综合| 五月丁香啪啪啪综合网| 六月婷婷AV| 久久久久久久久久久久久久久久一道本| 国产色色视频| 五月丁香999| 波多野结衣AV无码Porn| 九九亚洲视频| 久久成人天| 一本道综合网| 久久久er热| 99re热精品视频国| 久9热| 99热人人| 91婷色| 色色五月天网站| 无码yw| 日韩在线观看亚洲| 色婷婷色综合激情91| 我想看国产大学生口爆吞精的视频| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 国产看真人毛片爱做A片| 九九色逼| 久/久精品99看9| 超碰99在线观看| 久久九九网| 91日韩在线| 极品人妻XXXXOOOO| 麻豆AV一区二区三区| 欧美大肥婆大肥BBBBB| 国产成人网| 强壮的公次次弄得我高潮A片日本 | 欧美精品999| 国产做爰视频免费播放| 日日做A爰片久久毛片A片英语 | www.热99热| 色五月亚洲开心网| 色五月丁香六月欧美综合| 五月丁香六月婷婷综合| 婷婷五月天免费视频| 色久天| 日本99色| 嫩草视频在线观看| 99爱这里只有精品免费视频| 五月激情婷婷在线| 99久热| 日韩欧美成人一区二区三区| 亚洲岛国电影| 综合亚洲AV| 色婷婷中文在线| 丁香无月在线观看| 五月婷高清视频| 五月综合六月婷婷| 婷婷丁香五月激情| 五月丁香好婷婷A片网| 超碰免费在线| 欧美韩国日本| 性爱111111| 2016日日夜夜操| 色综合久| 亚洲综合色丁香婷婷六月| 五月丁香婷婷激情视频| 97性视频| 色婷婷久久| 久久婷婷五月综合网| 99色五月| 亚洲丁香婷婷五月天综合色| 天天干夜夜欢| 开心激情婷婷| 久久99精品视频| 综合网精品99| 9久国产精品| 天天日日天天| www.五月天| 天天插天天日| 婷婷综合玖玖五月| 九九99九九99偷拍视频免费看| 成人羞羞啪啪 全 视频| 丁香五月婷婷影院| 九九热只有精品| 日韩在线视频9色| 色综合中文色综合网| 5月色亭亭视频| 色综合另类| 丁香五月影院| 综合精品99| 天天做天天爱天天日| 五月婷婷六月开心| 五月丁香婷婷基地| 九九热这里只有精品9| 婷婷月综合| 亚洲VA在线| 99九九久久| 久久综合9| 天天插天天插天天日| av人人干| 538在线精品| 日本久久精品18| 99久久婷婷五月天| 伊人啪啪网| 久久婷婷色综合老司机| 伦乱美欧| 欧美日韩成人高清在线| 国产AV熟妇人震精品一品二区| 五月婷婷七月丁香| 青青草日本亚洲| 九九碰九九爱97超碰| 97热超碰| 操逼福利视频| 久久五月天婷婷| 亚洲操B视频| 天天射综合网夜夜操| 99久在线精品99re8热| 五月天丁香欧美激情| 婷婷天堂伊人| 九月婷婷在线观看| 人人舔人人色人人高潮| 超碰人人操| 精品99*| 99国产小视频免费观看| 日韩成人AV在线播放| 九九综合网| 黄色99网| 婷婷五月天小说| 色情五月婷| 日韩五月丁香| 5月丁香美女影院| 另类图片五月天婷婷| 大香蕉久| 中文字幕丰满人妻无码专区| 狠狠插日日干撸| 夜夜嗨一区二区三区直播内容| 久久久思思热| 日韩999| 香焦网五月天| 五月天激情视频| 丁香六月欧美| 婷婷色狠狠| 蜜臀综合久草| 天天干天天操天天干天天操天天干天天操| 激情色色色| 97热视频| 99re久久| 久久九九爽| 色婷网| 色婷婷AAA| 色婷婷操逼| 欧美精品99| 97干97色| 亚洲精品影视| 亚洲另类电影| 色婷婷香蕉| 五月丁香免费看| 在线五月婷婷小电影| 日韩九九| 密黄站| 国产精品涩涩涩视频网站| 丁香五月 综合| 精品国产AV色一区二区深夜久久| 人人玩人人橾| 国产FREESEXVIDEOS性中国| 国产Va视频| AV在线不卡播放| www.五月瑟|