久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

DeepSeek API圖像與文本分類調(diào)用實戰(zhàn):鑒權(quán)、上傳與排錯

DeepSeek API圖像與文本分類調(diào)用實戰(zhàn):鑒權(quán)、上傳與排錯 簡介這份面向具備Python基礎(chǔ)的開發(fā)者與AI集成團隊的實踐指南聚焦通過DeepSeek API完成圖像分類和文本分類的接入流程。壓縮包內(nèi)僅有1個docx文檔大小約17KB篇幅精煉便于快速查閱與隨項目歸檔。文檔圍繞requests發(fā)送HTTP請求、Pillow處理圖像、API密鑰鑒權(quán)、POST請求頭與請求體構(gòu)造展開并給出圖像上傳與文本分類兩套代碼示例同時說明成功響應(yīng)中標簽與置信度的解析方式以及無效密鑰、負載格式異常等常見錯誤的排查方向。已有2676人學習適合希望快速驗證云端機器學習服務(wù)、搭建分類應(yīng)用原型的中級開發(fā)者參考。其價值在于將接口準備、請求發(fā)送、結(jié)果處理與圖像尺寸預處理串成完整鏈路幫助讀者理解可復用的調(diào)用骨架并據(jù)官方文檔替換示例地址與參數(shù)減少接入初期的試錯成本。1. 從一次 401 說起這份調(diào)用指南真正解決的是鏈路問題第一次把 DeepSeek 的圖像分類接口接進項目報錯不是模型分錯而是 401——密鑰被拼進了 URL 而不是請求頭。這份《DeepSeek API 調(diào)用指南》解決的正是這類問題它不講模型結(jié)構(gòu)只講怎么用 requests 發(fā)出一個 HTTP 請求把一張圖或一段文字 POST 給云端機器學習服務(wù)再拿回 label 和 confidence 兩個字段。內(nèi)容覆蓋密鑰獲取、Pillow 裝環(huán)境、圖像上傳、文本分類復用同一套骨架以及狀態(tài)碼排查。適合已經(jīng)有 Python 基礎(chǔ)、手里有個原型要接分類能力的開發(fā)者如果你的場景是每天幾千張圖要打標或者一批文本要自動歸類跟著走一遍能跑通最小閉環(huán)。它也明確寫了端點只作示例真實地址要回查官方文檔這點比很多抄來抄去的教程靠譜。2. 請求鏈路拆開看Bearer 鑒權(quán)、multipart 上傳與 224×224 預處理把一次分類調(diào)用拆開其實只有四段拼請求頭、準備 body、發(fā)出去、解析回來。四段里出錯概率最高的是第二段因為圖像和文本的 body 形態(tài)完全不同一個是二進制表單一個是 JSON。選錯形態(tài)服務(wù)端要么返回 415要么解析出一堆亂碼。這一章先把鏈路上每個零件的形狀說清楚后面寫代碼才不會靠試。2.1 密鑰與請求頭Bearer 的三種寫法與唯一推薦API 密鑰在原料里被描述成「注冊登錄后拿到的一串字符串」它在 HTTP 層的角色就是身份憑證。常見做法是放進Authorization頭格式為Bearer key注意 Bearer 和 key 之間有一個空格少一個空格就是 401。有些人圖省事把 key 塞進 query 參數(shù)瀏覽器地址欄、Nginx access log、代理轉(zhuǎn)發(fā)記錄里都會留下明文等于把鑰匙貼在門上不建議。更穩(wěn)的習慣是從環(huán)境變量讀密鑰代碼里不出現(xiàn)字面量。下面這段用來做連通性自檢發(fā)一個輕量請求能拿到 200 就說明密鑰、網(wǎng)絡(luò)、DNS 三段都通再去調(diào)分類接口就不會把環(huán)境問題和業(yè)務(wù)問題混在一起排查。import os import requests # 密鑰從環(huán)境變量讀取不寫死在代碼和倉庫里 API_KEY os.environ[DEEPSEEK_API_KEY] headers { # Bearer 后面必須有一個空格這是最常見的 401 來源 Authorization: fBearer {API_KEY}, # JSON 請求體時手寫這一行上傳文件時千萬別手寫見 2.2 Content-Type: application/json, } # 端點僅作示例實際地址以官方文檔為準換成任意輕量接口即可做連通性自檢 PROBE_URL https://api.deepseek.com/v1/models try: resp requests.get(PROBE_URL, headersheaders, timeout(3.05, 10)) print(resp.status_code) # 只打印前 200 字符避免日志被大響應(yīng)撐爆 print(resp.text[:200]) except requests.RequestException as e: print(網(wǎng)絡(luò)層就失敗了先查 DNS / 出口 / 超時設(shè)置, e)邏輯說明先做一次 GET 自檢把「認證失敗」和「分類失敗」兩類問題隔離開。參數(shù)說明timeout(3.05, 10)是連接和讀取兩段超時連接段給 3 秒左右足夠覆蓋絕大多數(shù)機房到公網(wǎng)的首包時間讀取段按接口響應(yīng)速度給單寫一個數(shù)字的話requests 會把它同時當作兩段超時讀大響應(yīng)時容易誤殺。headers里的Content-Type在 GET 上其實可以不帶保留是為了讓這段代碼和后面的 POST 保持同一份頭字典。還有一種寫法是用requests的auth參數(shù)那是 HTTP Basic 認證用戶名密碼形式的和 Bearer Token 不是一回事套上去只會得到 401 或 403。這一點在原料里沒展開但它是新手最?;煜牡胤?。2.2 圖像為什么必須走 files 而不是 json原料給的示例用files上傳圖像而不是把圖像塞進 JSON這個選擇不是隨意的。二進制數(shù)據(jù)進 JSON 必須先 base64 編碼體積會漲大約三分之一服務(wù)端還要多做一次解碼兩端都虧。業(yè)界常見三種上傳方式取舍如下方式體積開銷服務(wù)端處理成本適用場景multipart/form-datafiles幾乎無膨脹低流式解析單圖、小批量、原型驗證base64 塞進 JSON約 33%需要解碼內(nèi)存峰值高網(wǎng)關(guān)只允許 JSON 的受限環(huán)境先傳對象存儲再傳 URL無最低可異步批量任務(wù)、大圖、需要留檔原圖選 multipart 之后有一個必須知道的細節(jié)requests會在檢測到files參數(shù)時自動生成Content-Type: multipart/form-data; boundary----xxxx這個 boundary 是分隔各字段的隨機字符串。如果你在headers里手寫了一個不帶 boundary 的Content-Type: multipart/form-datarequests 就不會再補服務(wù)端拿不到分隔符直接把整個 body 當成一個字段解析結(jié)果通常是 400 或解析出空文件。所以上傳圖像時頭字典里只留Authorization。import requests def upload_once(image_bytes: bytes, api_key: str, url: str): # 三元組順序是字段名、文件名、MIME 類型缺一不可 files {image: (image.jpg, image_bytes, image/jpeg)} # 附加的表單字段都只能是字符串數(shù)字要自己 str() 轉(zhuǎn)換 data {top_k: 3} headers {Authorization: fBearer {api_key}} # 不要加 Content-Type return requests.post( url, headersheaders, filesfiles, datadata, timeout(3.05, 60), # 圖像推理比文本慢讀取超時給寬一點 )邏輯說明files的 value 用三元組而不是裸 bytes是為了讓服務(wù)端拿到正確的文件名和 MIME如果只傳{image: image_bytes}requests 會默認按application/octet-stream發(fā)部分服務(wù)端會因此拒絕。參數(shù)說明top_k這類字段在 multipart 里一律是字符串傳3會被 requests 編碼成3但如果你自己用data{top_k: 3}再手動拼 body就可能踩到類型錯誤讀取超時給到 60 秒是因為圖像接口往往要跑一次前向冷啟動時更慢。2.3 Pillow 預處理尺寸、色彩模式與字節(jié)流復用原料里提到「模型可能要求 224×224」這是個假設(shè)值真實尺寸必須回查文檔。但無論目標尺寸是多少預處理要做的事是固定的四件擺正方向、統(tǒng)一色彩模式、等比縮放加裁剪、控制編碼體積。方向這件事容易被忽略。手機拍的 JPEG 里帶 EXIF Orientation 標記Image.open讀出來是原始像素方向直接縮放再上傳模型看到的是躺倒的貓。ImageOps.exif_transpose會按標記旋轉(zhuǎn)并清掉這個標記是一行就能解決的血淚經(jīng)驗。色彩模式方面PNG 可能帶 alpha 通道灰度圖只有一個通道CMYK 的 JPEG 來自印刷物料這幾種直接送進只接受三通道 RGB 的模型都會報錯或得到詭異結(jié)果convert(RGB)統(tǒng)一掉。from PIL import Image, ImageOps import io def normalize_image(path: str, size(224, 224), quality: int 90) - bytes: with Image.open(path) as im: im ImageOps.exif_transpose(im) # 按 EXIF 擺正避免躺倒的貓 im im.convert(RGB) # 去 alpha、統(tǒng)一三通道 # fit 是等比縮放后居中裁剪resize 是硬拉伸后者會讓長圖變形 im ImageOps.fit(im, size, methodImage.BICUBIC) buf io.BytesIO() im.save(buf, formatJPEG, qualityquality, optimizeTrue) return buf.getvalue() # 直接拿 bytes不落盤邏輯說明整個函數(shù)在內(nèi)存里完成返回 bytes 直接喂給 2.2 的上傳函數(shù)省掉一次臨時文件讀寫批量跑的時候差別很明顯。參數(shù)說明size按文檔改不要照抄 224quality90是體積和畫質(zhì)的折中點壓到 75 以下在細粒度分類任務(wù)上會掉點optimizeTrue讓 Pillow 多花一點 CPU 換更小的文件對上傳耗時是正收益methodImage.BICUBIC比默認的最近鄰更適合縮小邊緣不會出現(xiàn)鋸齒。還有一個常被忽略的點Image.open是惰性的文件句柄會一直掛著批量處理幾千張時不關(guān)會撞到文件描述符上限。上面用with包住就是為了這個getvalue()必須在with塊內(nèi)調(diào)用出了塊對象就關(guān)了。3. 圖像分類調(diào)用的完整實現(xiàn)從讀文件到解析 label 與 confidence第二章把零件備齊了這一章組裝成能跑的東西。判斷一段調(diào)用代碼合不合格不看它能不能出結(jié)果看它在出錯時能不能告訴你錯在哪。所以下面的實現(xiàn)里超時、狀態(tài)碼分支、響應(yīng)結(jié)構(gòu)校驗三樣都要有缺一樣在批量場景里都會變成黑匣子。3.1 最小可運行腳本與逐行參數(shù)說明原料給的主干是requests.post(url, headersheaders, filesfiles)加一個status_code 200的分支。這個骨架是對的但少了三樣東西超時、非 200 分支的細分、JSON 解析的保護。網(wǎng)關(guān)返回 HTML 錯誤頁時response.json()會拋JSONDecodeError異常信息里看不到狀態(tài)碼排查時非常難受。import os import requests from requests import Response API_KEY os.environ[DEEPSEEK_API_KEY] # 端點僅作示例請以官方文檔為準 CLASSIFY_URL https://api.deepseek.com/v1/classify def classify_image(image_bytes: bytes, top_k: int 3) - dict: files {image: (image.jpg, image_bytes, image/jpeg)} data {top_k: str(top_k)} headers {Authorization: fBearer {API_KEY}} try: resp: Response requests.post( CLASSIFY_URL, headersheaders, filesfiles, datadata, timeout(3.05, 60), ) except requests.Timeout: return {ok: False, code: TIMEOUT, msg: 請求超時考慮降分辨率或加重試} except requests.RequestException as e: return {ok: False, code: NETWORK, msg: str(e)} if resp.status_code ! 200: # 保留狀態(tài)碼和響應(yīng)體前 500 字符足夠定位大多數(shù)問題 return { ok: False, code: resp.status_code, msg: resp.text[:500], } try: body resp.json() except ValueError: return {ok: False, code: BAD_JSON, msg: resp.text[:500]} # 原料里的響應(yīng)形如 {status:success,data:{label:...,confidence:...}} if body.get(status) ! success: return {ok: False, code: API_ERROR, msg: body.get(message, )} data_obj body.get(data) or {} return { ok: True, label: data_obj.get(label), confidence: float(data_obj.get(confidence) or 0.0), raw: body, }邏輯說明返回統(tǒng)一成{ok: bool}的字典調(diào)用方只需要判斷ok不用在每個業(yè)務(wù)點重復寫 try/except失敗分支帶上code日志里聚合一下就能看出是密鑰問題還是超時問題占多數(shù)。參數(shù)說明top_k轉(zhuǎn)成字符串是因為 multipart 表單字段只接受字符串超時元組里讀取段給 60 秒圖像推理冷啟動時可能十幾秒給太短會誤判成服務(wù)不可用float(... or 0.0)是防御式寫法萬一服務(wù)端返回字符串0.98也能轉(zhuǎn)換返回 null 時不會拋TypeError。提示原料里的響應(yīng)字段status、data.label、data.confidence是示例結(jié)構(gòu)接入前先用一次真實請求確認字段路徑再把這幾個 key 抽成模塊級常量別散落在業(yè)務(wù)代碼里。3.2 響應(yīng)結(jié)構(gòu)解析與置信度閾值的業(yè)務(wù)用法confidence這個字段很容易被誤用。它是模型對本次預測的打分不是「這張圖有 98% 概率是貓」這種校準過的概率跨類別、跨批次直接比大小并不嚴謹。但它作為分流信號是夠用的高分區(qū)自動落庫低分區(qū)轉(zhuǎn)人工復核中間灰區(qū)打標記后置處理。置信度區(qū)間處理策略說明≥ 0.90自動入庫抽檢 1% 做質(zhì)量監(jiān)控0.60 ~ 0.90入待復核隊列按天批量人工過一遍 0.60轉(zhuǎn)人工或丟棄重采往往是模糊圖、多主體圖或域外樣本def route(result: dict, high: float 0.90, low: float 0.60) - str: if not result.get(ok): return manual # 調(diào)用失敗一律進人工不要靜默丟數(shù)據(jù) conf result[confidence] if conf high: return auto if conf low: return review return manual邏輯說明把閾值寫成函數(shù)參數(shù)而不是硬編碼是因為不同類目的分布差別很大做一次小樣本標注就能把high和low調(diào)到位。參數(shù)說明high調(diào)高會減少誤判但增加人工量通常先從 0.90 起步low調(diào)低會讓灰區(qū)變窄適合人力緊張的團隊。這三個檔位建議先在歷史數(shù)據(jù)上跑一遍分布看灰區(qū)占比再定拍腦袋定閾值是后面返工的主要原因。3.3 批量與并發(fā)Session 復用、超時與重試單張調(diào)用跑通之后下一步一定是批量。批量場景里兩個改動收益最大復用連接、加受控重試。requests.post每次都是一次全新的 TCP 加 TLS 握手批量幾百張時握手開銷能占到總耗時的一半。用Session復用連接池配合HTTPAdapter設(shè)置池大小是標準做法。重試這塊有個真實的坑urllib3的Retry默認allowed_methods不包含 POST所以你不顯式配置的話POST 請求根本不會重試代碼看起來加了重試其實沒生效。反過來如果你把 POST 加進重試列表讀超時后重試又可能造成重復計費或重復入庫。折中做法是只對連接類錯誤和 429、5xx 重試讀超時不重試。import requests from requests.adapters import HTTPAdapter from urllib3.util.retry import Retry def build_session(pool_size: int 16) - requests.Session: session requests.Session() retry Retry( total3, connect3, # 只重試連接階段 read0, # 讀超時不重試避免重復計費 status3, # 429 / 5xx 重試 status_forcelist[429, 500, 502, 503, 504], allowed_methodsfrozenset([POST]), # 默認不含 POST必須顯式加 backoff_factor0.5, # 退避 0.5s、1s、2s raise_on_statusFalse, ) adapter HTTPAdapter(max_retriesretry, pool_connectionspool_size, pool_maxsizepool_size) session.mount(https://, adapter) return session邏輯說明connect和read分開配置是關(guān)鍵連接失敗重試是安全的讀超時重試則可能讓同一張圖被計費兩次。參數(shù)說明pool_maxsize要和你開的并發(fā)線程數(shù)匹配線程數(shù)大于池大小時多出來的線程會等待連接表現(xiàn)為「并發(fā)上不去」backoff_factor0.5產(chǎn)生指數(shù)退避對 429 限流場景很有效raise_on_statusFalse讓重試耗盡后把原始響應(yīng)返回給你而不是拋異常方便統(tǒng)一處理。并發(fā)執(zhí)行用ThreadPoolExecutor就夠這類任務(wù)是 IO 密集的協(xié)程或線程都行線程寫起來簡單。并發(fā)數(shù)別開太大先看賬號的限流配額從 4 到 8 起步撞到 429 就往下調(diào)。4. 文本分類與接口復用同一套骨架換 payload原料里給的文本分類示例和圖像分類的差別只有兩處URL 不同、body 從 multipart 換成 JSON。這說明兩個接口共享同一套 HTTP 骨架把它抽出來比復制兩份代碼劃算得多。抽的時候注意 JSON 和 multipart 在請求頭上的差異這是唯一不能共用的地方。4.1 文本接口的 JSON 載荷與編碼細節(jié)requests.post(url, jsondata)和requests.post(url, datajson.dumps(data))看起來一樣其實差兩點前者自動設(shè)置Content-Type: application/json后者不會你需要自己在頭里寫前者遇到不可序列化的對象會直接拋TypeError后者要到dumps階段才報。統(tǒng)一用json參數(shù)更省心。import requests def classify_text(text: str, url: str, api_key: str, top_k: int 3) - dict: # 超長文本先截斷很多接口對長度有硬限制超了直接 400 if len(text) 4000: text text[:4000] payload {text: text, top_k: top_k} headers { Authorization: fBearer {api_key}, Content-Type: application/json, # 用 json 時 requests 也會自動加 } resp requests.post(url, headersheaders, jsonpayload, timeout(3.05, 15)) resp.raise_for_status() return resp.json()邏輯說明jsonpayload讓 requests 用json.dumps序列化并自動設(shè)頭中文會被轉(zhuǎn)成\uXXXX轉(zhuǎn)義這是合法的 JSON服務(wù)端能正確還原不需要加ensure_asciiFalse那個參數(shù)只在你自己dumps時有用。參數(shù)說明文本截斷長度按接口文檔調(diào)整不要照抄 4000raise_for_status()在原型階段很方便會讓異常帶上狀態(tài)碼但生產(chǎn)代碼里建議像第 3 章那樣手動分支因為你想拿到響應(yīng)體做診斷。還有一點如果文本來自網(wǎng)頁抓取先做一次清洗去掉零寬字符、全角空格、HTML 實體。這些字符在 JSON 里合法但會讓分類結(jié)果偏移屬于典型的「模型沒問題、數(shù)據(jù)有臟東西」。4.2 把圖像和文本兩類調(diào)用抽象成統(tǒng)一客戶端抽象的目標不是少寫幾行而是讓重試、日志、錯誤碼映射只寫一遍。下面的類把公共部分收在_post里兩個公開方法只負責準備 body。import logging import requests log logging.getLogger(__name__) class ClassifyClient: def __init__(self, api_key: str, base_url: str, session: requests.Session): self.api_key api_key self.base_url base_url.rstrip(/) # session 從外部注入方便復用連接池和重試策略 self.session session def _headers(self, with_json: bool False) - dict: headers {Authorization: fBearer {self.api_key}} if with_json: headers[Content-Type] application/json return headers def _post(self, path: str, **kwargs) - dict: url f{self.base_url}/{path.lstrip(/)} resp self.session.post(url, **kwargs) # 統(tǒng)一把非 200 轉(zhuǎn)成帶狀態(tài)碼的字典調(diào)用方不用各自判斷 if resp.status_code ! 200: log.warning(classify failed status%s body%s, resp.status_code, resp.text[:300]) return {ok: False, code: resp.status_code, msg: resp.text[:300]} try: return {ok: True, **resp.json()} except ValueError: return {ok: False, code: BAD_JSON, msg: resp.text[:300]} def image(self, image_bytes: bytes, top_k: int 3) - dict: return self._post( /v1/classify, # 示例路徑以文檔為準 headersself._headers(with_jsonFalse), files{image: (image.jpg, image_bytes, image/jpeg)}, data{top_k: str(top_k)}, timeout(3.05, 60), ) def text(self, text: str, top_k: int 3) - dict: return self._post( /v1/text_classify, # 示例路徑以文檔為準 headersself._headers(with_jsonTrue), json{text: text[:4000], top_k: top_k}, timeout(3.05, 15), )邏輯說明session從構(gòu)造函數(shù)注入而不是在類里 new 一個這樣測試時可以換成 mock生產(chǎn)時可以復用第 3 章配好的連接池和重試策略。參數(shù)說明_headers的with_json開關(guān)是唯一區(qū)分兩類請求的地方multipart 請求不能帶Content-Type這是 2.2 講過的坑抽象的時候特別容易統(tǒng)一成「都帶上」然后圖像接口集體 415。base_url用rstrip(/)處理避免路徑拼出雙斜杠有些網(wǎng)關(guān)對//v1會 404。4.3 成本與延遲的取舍本地預處理還是服務(wù)端預處理圖像走的鏈路里預處理放哪邊是個真實的決策。放本地省帶寬、省服務(wù)端算力但吃客戶端 CPU放服務(wù)端省客戶端邏輯但上傳的是原圖體積可能大十倍。策略上傳體積客戶端 CPU結(jié)果一致性適用本地縮放到目標尺寸小中高可控批量任務(wù)、移動端上行本地只壓質(zhì)量不縮放中低中需要服務(wù)端統(tǒng)一裁切的場景原圖直傳大無取決于服務(wù)端實現(xiàn)需要保留細節(jié)的細粒度分類我一般會先在本地壓到長邊 1024、質(zhì)量 85 上傳再拿一批樣本對比「原圖直傳」和「本地壓縮」的分類一致性。如果一致性差異在可接受范圍內(nèi)就固定用壓縮版本單張延遲能降下來一大截尤其是弱網(wǎng)環(huán)境。這個對比實驗花不了多少時間但能省掉后面反復懷疑「是不是模型不行」的折騰。5. 避坑與排查401、415、413、超時重放這四類翻車現(xiàn)場前面幾章都是順著成功路徑寫的這一章反過來按我踩過的順序排。每條都按「現(xiàn)象、原因、解決」寫遇到類似的直接對號入座。5.1 401 Unauthorized密鑰對了但就是過不去現(xiàn)象密鑰確認沒復制錯用 curl 試也失敗響應(yīng)體里寫著 invalid api key 或 missing authorization。原因通常有三個。一是Bearer和密鑰之間的空格被編輯器吃掉或者中間混進了全角空格二是密鑰從環(huán)境變量讀出來時帶了尾部的換行echo復制的時候最容易帶上三是用了另一個產(chǎn)品的密鑰格式看著像但不是同一個認證域。解決先打印repr(API_KEY)看首尾字符把不可見字符暴露出來如果尾部是\n或者\r在讀取時.strip()。再用 curl 獨立驗證一次排除代碼層的干擾# 用環(huán)境變量傳密鑰避免密鑰進入 shell history curl -s -o /dev/null -w %{http_code}\n \ -H Authorization: Bearer ${DEEPSEEK_API_KEY} \ https://api.deepseek.com/v1/models返回 200 說明密鑰和網(wǎng)絡(luò)都沒問題回到代碼里查頭字典返回 401 就換密鑰或確認賬號權(quán)限。這行命令里的-o /dev/null丟掉響應(yīng)體-w %{http_code}只打狀態(tài)碼輸出干凈。5.2 415 / 400multipart 的 boundary 被自己弄丟了現(xiàn)象圖像上傳返回 415 Unsupported Media Type或者 400 說缺少 file 字段但字段名明明寫了image。原因頭字典里手寫了Content-Type: multipart/form-data。requests 看到你已經(jīng)設(shè)了這個頭就不再補 boundary服務(wù)端拿不到分隔符把整個 body 解析成一個空字段。這個坑在把文本和圖像調(diào)用合并成同一個客戶端時特別容易犯因為你會下意識地給兩類請求都加上Content-Type。解決multipart 請求的頭里只留Authorization讓 requests 自己生成帶 boundary 的完整頭。排查時打印resp.request.headers看Content-Type里有沒有boundary這個參數(shù)沒有就是這個問題。5.3 413 Payload Too Large圖像沒壓或者壓了但格式不對現(xiàn)象小圖能過大圖報 413或者本地明明縮放過上傳后還是 413。原因一是縮放用的resize保留了原始編碼格式PNG 截圖縮到 224 之后體積仍然不小二是只改了尺寸沒改質(zhì)量JPEG 以 quality100 保存一張 224×224 也能到幾百 KB三是服務(wù)端限制的是字節(jié)數(shù)不是像素數(shù)你盯著尺寸看沒用。解決統(tǒng)一走 2.3 的normalize_image輸出固定為 JPEG、quality 可控、帶optimizeTrue并在發(fā)送前加一道體積閘門def guard(image_bytes: bytes, max_bytes: int 1_500_000) - bytes: # 超過閾值就降質(zhì)量重壓最多降三檔避免無限循環(huán) for q in (85, 70, 55): if len(image_bytes) max_bytes: break from PIL import Image import io buf io.BytesIO() Image.open(io.BytesIO(image_bytes)).save( buf, formatJPEG, qualityq, optimizeTrue) image_bytes buf.getvalue() return image_bytes參數(shù)說明max_bytes按接口文檔給1.5 MB 只是個保守起點三檔質(zhì)量是經(jīng)驗值再往下壓細粒度分類就會掉點。5.4 超時后重試導致重復計費現(xiàn)象賬單上的調(diào)用次數(shù)比實際圖片數(shù)多或者結(jié)果表里出現(xiàn)重復記錄且這些記錄的耗時都集中在某個時間窗口。原因讀超時被算進了重試條件。服務(wù)端其實已經(jīng)處理完了只是響應(yīng)在路上慢了一點客戶端等不及重發(fā)于是同一張圖被處理兩次。原料里的示例沒有涉及重試但一旦你按 3.3 加了HTTPAdapter這個問題就會出現(xiàn)。解決Retry里把read設(shè)為 0只對連接錯誤和 429、5xx 重試如果業(yè)務(wù)要求嚴格冪等就在請求里帶一個自己生成的request_id落庫時用它做唯一鍵重復的寫入直接忽略。這個字段在服務(wù)端不支持透傳時也沒關(guān)系客戶端側(cè)做去重同樣有效。5.5 排查順序從外到內(nèi)別一上來就懷疑模型遇到分類結(jié)果不對先別改代碼。按這個順序走一遍八成問題能在前三步定位先用 curl 驗證密鑰和端點是否可達再用固定的一張樣本圖跑一次看響應(yīng)體的原始 JSON 長什么樣然后比對預處理后的圖和原圖確認沒被裁掉主體最后才看 label 和 confidence 的分布。把順序固定下來之后排查時間能從半小時壓到幾分鐘這個習慣比任何技巧都值錢。6. 進階把分類調(diào)用做成可觀測的小服務(wù)跑通腳本和能上線之間差的是可觀測性。分類調(diào)用是個外部依賴失敗是常態(tài)沒有埋點的話你只能看到「今天結(jié)果少了」這種結(jié)論看不到是哪一類錯誤在漲。我一般會在客戶端外面再包一層記錄四個字段請求 ID、端點、狀態(tài)碼、耗時。加上 label 和 confidence就能回答絕大多數(shù)運營問題比如「昨天的低置信度占比為什么翻倍」。表結(jié)構(gòu)大概是這樣字段類型用途request_idstring客戶端生成的 UUID重試時復用用于去重endpointstringimage 或 text區(qū)分兩條鏈路status_codeintHTTP 狀態(tài)碼0 表示網(wǎng)絡(luò)層失敗latency_msint端到端耗時含重試labelstring分類結(jié)果失敗時為空confidencefloat置信度用于閾值分布監(jiān)控埋點代碼不用復雜一個裝飾器就夠import time import uuid import logging log logging.getLogger(classify) def traced(endpoint: str): def deco(fn): def wrapper(*args, **kwargs): rid kwargs.pop(request_id, None) or str(uuid.uuid4()) start time.perf_counter() status 0 try: result fn(*args, **kwargs) status result.get(code, 200) if result.get(ok) else result.get(code, -1) return result finally: cost int((time.perf_counter() - start) * 1000) # 一行 JSON 日志方便直接被采集器解析 log.info({rid:%s,ep:%s,status:%s,ms:%d}, rid, endpoint, status, cost) return wrapper return deco邏輯說明request_id從外部傳入時復用重試鏈路里就能對齊同一次業(yè)務(wù)請求finally保證異常路徑也打點否則失敗樣本全丟監(jiān)控就成了只報喜不報憂。參數(shù)說明耗時用perf_counter而不是time.time避免系統(tǒng)時間調(diào)整帶來的負數(shù)狀態(tài)碼在業(yè)務(wù)失敗時取自定義 code網(wǎng)絡(luò)層失敗統(tǒng)一記 0方便聚合。這套東西的另一個用法是回歸驗證。接口或模型更新后拿一批固定樣本跑一遍比對 label 變化率和置信度均值偏移比肉眼看幾個案例靠譜得多。我吃過一次虧換了預處理里的resize為ImageOps.fit忘了看長圖樣本結(jié)果一批豎版商品圖被裁掉了底部文字分類整體偏了一檔兩天后才發(fā)現(xiàn)。從那以后我每次改動預處理參數(shù)都強制走一遍固定樣本回歸比對 label 和 confidence 的分布再發(fā)布。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
天天操女人| 五月婷婷综合网| 激情 欧美 亚洲 小说| 亚洲激情在线观看一区| 国产乱色国产精品免费视| 女人与公拘交酡2020视频| 综合 亚洲 欧美| 久久欧美激情| 操逼操网| 裸体美女免费看网站青草| 亚洲高潮少妇| 黄片国产精品一区二区| 东北黄色电影| 在线看的av| 久操凹凸视频| 无码人妻一区二区一牛影视| 国产97视频| 日韩欧美操逼xxx| 亚洲欧美大香蕉| 欧美91久久久久| 少妇久久久久久| 亚洲码专区| 日韩偷拍色图| 九九九999久久久网站| 久久久性| 爆乳免费黄网站| 超碰社区97| 欧美色www亚洲国产阿娇要播| 中国国国产一级特黄毛片| 天天干夜夜肏| 黄色视频60分钟| 亚洲 图片 综合91| 操国产高清| www.久久| 一区二区三区美女超清| 另类视频在线| 欧美性爱中文字幕无线码| 久久久不卡区一区二区三区久久久| 懂色av一区二区三区天美传媒| 欧美色性爱| 91四海无码日韩欧美| 精品四五区| 极品国产内射| 亚洲涩图欧美| 一区二区三区 丝袜 高跟 美腿| 婷婷视频在线免费观看| 国产9熟妇视频网站| 超碰97起碰| 1769一区| 无码78| 国产夜夜艹| 日本欧美一区二区三区免费| 亚洲国产综合图区中文字幕 | 欧美性暴力| 自拍盗摄一区| 亚洲精品视频在线| 国产综合网站在线播放| a片久久久久久久久久久久| 和协影院中文字幕三区| 久久久一区二区三区四曲免费听| 日韩免费一级性爱视频| 伊人影院中文字幕| 在线观看成人性爱免费小视频| 亚洲极品| 亚洲九九爱| 美女尤物福利视频| 大香蕉在线视频15| 久久9亚洲| 高清国产av无码| 人人玩人人添人人澡免费| 啊啊啊啊,啊啊好多水 | 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 欧美性爱一级操| 嫩草在线视频| 国产亚洲精品A在线观看下载| 中文字幕,人妻,日韩| 黄久在线| 色99999| 狠狠躁伊人中文字幕| 男人成人黄色视频在线观看免费下载| 伊人96在线| 国产AV天美| 国产精品久久久久久久免牛肉蒲团| 少妇无码太爽| 狠色婷婷久久一区二区三区_| 免费看污网址| 中文字幕制服诱惑| 操人妻视频| 国产视频第二页| 日韩99999| 97亚洲欧美| 精品一区二区三区国产| 精品久久久久久中文字幕三区| 国产成人99久久亚洲综合| 欧亚性爱啪啪| 高清不卡视频| 久久华人网| 国产熟女一区二区| 日韩精品国产一区二区| 色播五月婷婷| 天操老女人| 99re视频在线播放青草| 国产大学生口爆吞精合集| 激情干在线| 高清不卡国产| 久久成年片色大黄全免费网站| 日韩美女啪啪一区| 人妻夜夜爽天天爽麻豆三区网站 | 91大香蕉伊人| 国产小黄片在线免费观看| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 精品九九国产无码| 日韩AV片| 九九九国产精品| 国产家庭乱伦网址| rivers-china.com| 亚洲αv一区二区三区| 另类综合另类| 国产精品国产精品国产| 狠狠色综合网| 99中文字幕| 国产成人精品亚洲日本| 精品二区三四区五电影 | 欧美成人四级在线播放| 青青草手机在线免费观看| 上床啊啊啊| 亚洲精品亚洲人成在线麻豆| 国产天天噜一噜久久久| 五月天玖玖资源站| 777超碰| 亚洲av夫妻操穴网| 啪啪视频免费在线观看| 午夜啊啊啊| 中国东北熟女老太婆内谢| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 色欧洲| 韩国久久97| 91亚洲人| 国产第二页| 欧美国产伊人久久久久| 天天视频黄网站| 热热色综合网| 特级大荫道BBwBBwBBW| 久久在线观看免费视频| 91中文精品日韩欧美在线| 26UUU欧美激情一区二区| 天天看人人操屄犊摸阴| 天美麻花大全视频| 无码国产精品96久久久久孕妇| 婷婷久久综合| 午夜福利免费精品视频| 国产欧美日本亚洲精品| 夜夜嗨免费视频| 伊人AAA| 黄色香蕉视频网站一区| 欧美 亚洲 第一页| 97欧美色综合| 91 国产丝袜在线播放-百度| 97超碰逼| av大香蕉网站| 天天日天天射天天干| 五月婷婷大香蕉| CCYY草草影院地址入口| 亚洲91网| 欧美在线电影| 综合网天天| 尤物网站91| 中文字幕第2页| 亚洲骚男同com| 亚洲清纯唯美| 国产熟女一区二区| 97中文字幕九区| 亚洲涩图欧美| 人妻 中文 日韩| 99精品国产户外露出| 四方色播| 久久受www免费人成| 高清无码一区二区三区| 天堂а√在线最新版在线 | 亚洲一区二区av| 久久东京热久久| 最新精品久久蜜桃 | 岛国黄色大片网站| 中文字幕视频在线观看一区二区| wwwcaobibi| 色色色色网站| 综合日韩激情另类图片| 日韩精品一区,二区 九九...老司机| 性高潮久久久久久久久久久| 热99这里有精品综合久久| 一二三区操逼国产91| 熟女激情综合网| 亚洲 国产 精品一区| 人人操人人摸人| 五月天婷婷小说| baiduhicn.com。| 伊人网在线点播| 国产综合日韩伦理| 亚洲久热| 91 国产丝袜在线播放-百度| 国产欧美在线观看免费观看| 国产动漫操逼视频| 欧美色图 人妻| 啊啊啊啊啊啊在线| 精品国产www久久| 肥臀熟女福利视频一区二区| 色逼综合| 久久不卡一区二区 | 大逼色网站| 日本性爱欧美性爱| 4141514逼喷水三级片| 91男人天堂网| 人人摸人人摸人人干| 九九精品美女高溯喷水| 国产在线综合网| 精品网站9999| 91被操| 97AV爱| 亚洲性高潮| 日本在线视频导航| 蜜臀中文无码午夜| 精品 码产区一区二-1080P高清在线www-B029AV| 超碰中文字幕人妻草一区| 成人小说另类在线| 99热导航| 婷婷五月天成人网| 欧美夜夜| 亚拍在线| 99操逼| 97欧美| 国产一区麻豆免费观看| 伊人久久在线视频观看| 精久久久| 99re8超碰| 久久久久亚洲av综合波多野制衣| 天堂av最新电影网| 国产AV高清AV无码| 美女诱惑久久| 伊人 俄罗斯 a v| 成人a级高清视频在线观看| 人妻天天爽夜夜爽2| 久久久国产三级黄色片| 成人一道本免费视频| 狠狠亚洲| 爱欲AV| 91Chinese在线| 国产偷人伦激情在线观看| 久久久草草精品| 亚洲午夜免费狠狠干| 欧美日产国产在线成人第一区| 国产免费内射视频| 免费97视频| 亚洲天天艹| 天天影视网综合少妇| 国产黄片精品在线| 日韩欧美午夜一区二区| 国产老太乱伦一区| 久久久久久久97| 九草九九九| 97干色天堂| 农村妇女一级二级三级视频| 日本中文字幕在线视频| 欧美日韩国产色图在线| 秋霞免费AV| 国产一区在线观看无码AV| 青青青青操国内视频在线| 精品9999| 熟女少妇一区二区三区| 日日爱99| 眼镜人妻101.com| 国产高清免费不卡av| 91色综合| 欧美日韩操逼动图| 日本性爱不卡视频| 亚洲欧美激情在线视频| www.色婷婷| 四虎精品永久在线观看| 97天天在线| 国产九九九九九九| 久久系列| 久久东京伊人一本到鬼色| 人人操人人操人人操人人操人人操人人人11.CM| 久久产精品一区二区三区电影| 色约约一区=区三区| 免费视频一二三区| 久久精品国产亚洲AV嘿嘿| 日韩去日本高清在| 蜜桃久久久久久| 屁股久久久久久久久| 天天看片青娱乐| 69麻豆天美| 中文字幕精品日韩中文字幕| 国产伦精品一区二区三区视频女| 中文字幕伊人| 78久久| 久久鲁干| 97日视频| 亚洲人妻中文在线视频| 久久久久久99999国产精品| 色亚洲欧美| 一区不卡在线观看av| 思思热在线cao| 日韩精品一二三四| 亚洲欧美洲综合| 做爱A级亚欧| 超AV色女| 亚洲无码精品AV久久久| 激情自拍 校园春色| 91欧美综合在线| 亚洲色图欧美一区二区不卡| 成人欧美一区二区三区黑人一| 天堂国产AV| 夜夜欢天天干| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 精品人妻一区二区三区在| 国产 v乱码一区二| 久久久一区二区三区麻豆| 日韩欧美字幕亚洲一区二区| 一区二区不卡免费| 无码免费一区二区三区啪啪| 人妻aa| www.高清无码诱惑一区.com| 久久男人精品| 欧美第一页| 九九久久99| 国产精品操| 伊人大香蕉在线| 日韩熟女无码| 情色五月天就去干| 老熟女91av| CCYY草草影院地址入口| 青青操在线亚洲视频观看欧美在线 | 曰本道人妻久久久在线不卡色视频| 日韩欧美tv一区二区在线观看| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 北条麻妃99精品青青久久| 亚洲色婷婷久久久综合日本| 九九九九九用不成了| 久久中日麻豆| 精品一区二区综合熟妇| 七月丁香婷婷| 青青青草伊人精品| 97中文超碰| 天天色黄色影院天天操| 日本不卡在线二区三区| 操b网站亚洲无码| 97人妻碰碰中文无码久热丝袜| 97色操| 色制服丝袜夫妻av一区| 国内精品不卡无毒99999| Av手机版天堂网| 国内精品99999| 一直超碰| SUV一区二区在线看| 日本午夜福利视频| 91丝袜美腿网站| 色狠狠综合| 国产理论视频在线播放| 992这里有精品| 日韩性爱播放| 国产人妻天天干精品| 国产特级毛片AAAAAA高潮流水 | 加勒比av网| 一区二区三区四区在线不卡| 搡老女人老91妇女熟女| 97资源站久久| 极品少妇久久久久| 精品午夜福利| 免费观看欧美日韩操逼视频| 久久久九九网站| 成人片在线播放| 久久人妻视频网| 久热免费视频| 少妇蜜汁| 老熟妇一区二区三区| 国产国产亚洲一二三久久| 无人区高清电影免费观看一区二区三 www.qmcai2.com | 天天综合网入口~91| 亚洲宗合网| 91超碰丝袜制服| 91综合天天看| 夜草网站| 911av网站免费观看| 久久黄色性爱视频| 激情五月天色播| 伊人久久久日韩一区| 岛国不卡超碰护士AV在线播放| 九九九精品色乱九九九| 国产97视频| 一起草三级AV电影在线观看 | 黑操B| 亚精品无码毛片一区二区三区| 久久人体一区二区| 9+1视频网址| 96久久久精品| 九九九偷拍| 中文区中文字幕免费看| a片 xxxx受爽视频| 欧美αv.com| 亚洲熟女中文字幕在线| 91人人爽人人爽| 99热 按摩 日韩| 国产AV人人夜夜澡人人爽麻豆| 日韩精品 欧美激情| 国内毛片热久久思思热| 欧美中出1| 色999亚洲人成色| 偷拍亚洲高清图片| 麻豆91熟妇人妻中文字幕茄子 | 不卡啪啪视频| 精品人妻视频一区二区三区蜜桃视频| 精品超碰色| 日本国产欧美一区三区二区| asc国产精品| 欧日韩一二三f区| 欧美在线永久天堂| 激情五月天婷婷| 欧美91丝袜| 少妇一区二区三区精选| 色五月婷婷五月天| 自拍啪啪视频| 97任你吞精| 日han少妇无码| 天美91| 五月婷婷六月丁香| 91日产欧美| 家庭乱伦国产精品| 色好看av| 亚洲一区二区三区播放在线| 综合网欧| 搡老人老9丨女老熟人| 日韩一级二级在线| 国产成人亚洲精品无码最新在线| 蜜臀精品1区2区| 国产强奸无码乱伦| 97超碰热线| 92性色国产午夜福利在线661| 九色PORNY9l原创自拍| 老鸭窝在线视频播放| 国模不卡| 欧美综合自拍亚洲综合图| 艹少妇网站| 国语精品av| 超碰在线974| 中字幕人妻一区二区三区| 啊啊啊啊啊啊啊啊啊啊在线观看| 91人妻精华帖| 96超碰网| 大香蕉宅男伊人| 操婢日韩| 日日骚一区二区三区| 亚洲天堂99| 亚洲欧洲激情卡通另类文学四射小说网站 | 污电影在线观看| 精品成人av一区二区三区在线| 91精品国| 又黄又粗又硬又长又大| 在线看免费无码AV天堂的| 狠狠色五月亚洲91| 日日黄色三级网站| 婷婷六月色| 人人妻人人爽 97人人看碰人免费公开视频| TS人妖另类精品视频系列 | av强奸乱轮| 蜜臀99久久精品| 91亚·色| 再深点灬舒服灬太大了好硬好爽| 91久久青青草原精品| 老司机福利社视频在线观看| 一区| 亚洲色图加勒比| 开心激情站| 乱伦日本色图AⅤ| 国产精品亚洲无码| 好爽视频在线观看视频 | 天天综合网1| 欧美综合骚| 成人精品在线| 激情丁香五月| 天天日天天爽| 中文字幕一区av| 九九色婷婷| 亚洲一本色道中文无码aV天美| 成全动漫视频观看免费下载| 乱伦熟妇一区二区| av毛片aaaaa免费看| 欧美色图20P| 97超碰欧美精品| 噜噜噜噜久久久精品免费| 综合大香蕉美。| 伊人伊人LD| 成人精品欧洲亚洲| 中文字幕视频二区| 97这里有精品| 亚洲欧美97√| 久久久一区二区三区麻豆| 国产日本顶级一区二区三区| 欧州91高潮| 午夜舔阴达高潮视频免费看| 影音先锋视频在线| 精品国产www久久| 久久人妻办公室视频| 少妇久久久久久久| 色在线综合| 91高清无码下载| 99爱精品| 色97综合中文字幕| 青娱乐二区免费| 亚洲高清无码在线桃色| 999在线电影香蕉| 欧美另类自拍 | 欧美性爱一区二区三区| 丝袜人妻av一区二区| 黄色AAAAAAAAAAA大片| 欧美嗯啊……在线观看视频免费| 欧美 日韩 婷婷 五月| 亚洲久草AV色图| 另类小说综合网| 中文字幕五区| 黄色视频60分钟| 亚洲人妻日日日| 清清草影| 天天做日日做天天欢。| 婬女免费一二三区A片| 亚洲男人久久综合天堂| 国产一区二区视频在线播放| 97免费免费视频网| 国产乱伦性爱区| 骚乳在线| 国产成人亚洲精品无码最新在线| 狠狠干综合| 久久激情视频| 亚洲综合另类| 欧美夜夜| 亚洲AV无码天美传媒一区| 新怡红院| 五月综合视频| 日韩久射综合| 欧美三级偷拍| 亚洲一本大道中文字幕无码在线| 国产成人精品一区| 日韩九区| 免费在线视频97| 99热精品在线| 国产精品成人午夜福利| 日韩欧美女优电影| 香蕉国产精品麻豆亚洲欧美日韩| 色999人与兽| 亚洲丝袜二区在线| 精品超碰中文在线| 日本免费一级AAA大片器| 亚洲码和欧洲精品激情系列| www.大香| 亚洲熟女诱惑| 综合干干干av久久久综合网| 国产午夜在线观看视频| 传媒免费一区二区三区| 亚洲综合另类小说色区亚洲成av人片在www | 偷拍网站久久男女男| 麻豆精品一区二区三区四区免费观看| 少妇天堂网络| 五月婷婷影院| 国产精品久久久久亚洲av| 91观看 国产白丝| 日韩欧美中文字| 亚洲日本成人动漫| 精品成人av一区二区三区在线| 婷婷超| 亚洲日精品| 98精品国产乱码久久久久久| 在线播放欧洲免费av| 91精品国产综合久久久蜜臀| aaaa黄片| 自慰白浆在线观看| 伦伦成年午夜免费视频| 熟妇乱伦一区二区| 久久久蜜桃臀无码视频| 欧美色爱综合| 综合色久欲| 97就爱干| 国产丝袜高跟美女av免费观看| 97色97好| 天天色踪合| 人妻丝袜肏逼| 91美女高潮| 精品9999| 4虎在线观看| 久操国产在线| 日本一级真人黄色性爱视频| 97综合国产| 日本在线观看网址| 日韩免费看在线黄色片| 在线岛| 日本在线不卡v二区| 国产精品女久久久久av爽| 亚洲精品aa久久伊人| 去干网最新版| 欧美性天天影视| 炮色五月| 亚洲涩图欧美| www亚洲欧美| 亚洲AV秘无码一区..| 久久伊人亚洲AV无码网站| 久久一区二区高清免费| 亚洲欧美经典一区二区| 极品粉嫩一区二区| 91影视亚洲| 国产亚洲精品美女久久久| 在线观看日韩av不卡| 色偷偷人人玩人人舔人人操人人摸人人爽 | 亚洲欧美一区二区网址| 久久爱97| 日本不卡二区| 97电影院超碰| 亚洲AV高潮| 九一精品牛牛一区二区| 超碰久久精品| 老熟女91视频| 91影库| 亚洲中文字母在线播放| 婷婷五月天社区| www鬼畜国产男人的天堂| 日韩精品.久久精品.AV女优.天美传媒| 欧美精品人妻视频| 日本黄色XXX| 极品国产内射| 久久精品国产72国产精品福利| 亚洲一区中文字幕一区| 99视频内射三四| 99操视频| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 亚洲日韩资源| 91一区二区三区蜜桃| 强奸乱伦日韩AV| 少妇 综合| 中文字幕欧美日本乱码一线二线| 色欧美综合| 国产99久久99热这里只有精品15| 久久九九99| 亚洲天堂日本| 亚洲?V无码专区在线电影| 婷婷色婷婷| 国产精品九九| 十八禁网站在线| 韩国女主播青草福利视频| 精品一二三区四视频| 天天综合网91| 超碰日本97美女人妻人人玩人人爱 | 色婷婷99| 亚洲 欧美 第一页 | 欧美少妇性乱| 日韩综合无码色欲vv| 美女裸体麻豆天美蜜桃91| 大JI巴好深好爽又大又粗视频| 五月丁香色情| 人妻熟女一区二区在线视频| 欧美黄色片AAAAA| 人妻少妇精品无码专区二区密桃 | 啊啊啊快操我视频| 密乳无码| A一级色女| 亚洲精品成人激情在线| 久草综合网| 超碰97起碰| 七月丁香婷婷| 美女主播色欲91抠b在线播放| 久久久久久99AV无码免费网站| 2001天天操| 国产一区二区三区久久久精品| 秋霞一区二区三区四区五区六区七区| 上海一级黄片| 懂色Av一区二区三区| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 一个人免费视频观看在线WWW| 九九无码| 黄色免费网| 成人A片男人的天堂| 国产成人免费观看在线视频| 清纯唯美综合| 青青草精玖玖69精品| 午夜一级免费毛片| 天天在线91| 成人综合色网| 国产女乱淫真高清免费视频| 日韩精品99999| 国产中文精品一区二区在线观看| 在线97视频| 国产三级中文字幕粉嫩| jiujiujiujingpin| 69视频福利导航| 国产久久视频| 啊啊啊用力在线观看| 综合熟女| 男女激情黄色网址| 另类一区| 九九综合色| 黄色网址久久精品欧美喷水| 精品国产一区二区三区av在线资源| 超碰在线91| 日韩成人电影AV| 亚洲熟妇自偷自拍另欧美| 日韩精品 资源| 99久久久无码| 大香蕉伊人在线成人AV在线观看| 日日夜夜草草草| 97超碰在线资源网站| 九九热AV| 在线黄页看毛片| 天堂日本亚洲欧美| 1024手机看片欧美日韩| 欧美大色交| 操熟女91| 日韩在线观看三级电影| 亚洲日韩视频二区| 亚洲人妻中文高清| 天天日天天色| 欧美日日网| 亚州熟妇精品| 蜜臀久久99'精品久久久| 91色插| 九九热AV| 丰满人妻一区二区三区性色| 中文字幕一区二区韩| 另类专区在线观看| 婷婷六月色| 91女网站| 成人在线午夜视频一区| 校园春色 亚洲| 电家庭影院午夜69久久夜色精品国产69乱| 国产一级舔足在线观看| 国产区91柔拿会所技师| 噜噜吧,噜噜色,噜噜| 欧美综合站| 欧美日韩国产男人| 日韩青久久| 成人青青草原伊人| 乱伦一二三区| 一区二区三区 日韩欧美| 91久久久久久| 婷婷色导航| 秘书高跟黑色丝袜国产91在线| 一本大道青青| 亚洲男人综合| 乱老女人一区二区视频| 亚洲中文字幕妇伦久久| 岛国999| 日本淫乱女一区二区三区视频| 国产大陆天天艹| 日日狠狠久久偷偷色综合免费| 色九九九综合| 国产精品播放| blacked精品一区国产| 日本一本一区二区三区四区五区欧美日韩中文字幕 | 三及片网站| 日韩国产欧美伦理在线| 色欧美天天| 男人的天堂kva| 国产成人精品必看| 亚洲成人一二三区| 欧美日韩国产精品久久色婷婷| 国产日韩精品无码去免费专区国产| 无码伊人久久大杳蕉中文无码| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | silk lablo在线观看一区二区| 少妇天堂| 日本在线激情一区二区三区| 欧美中字二区| 99re在线视频这里只有精品| 91成人高清在线观看| 天天日夜夜爽| 操老熟女AV| n1038 一二三区| 亚洲综合20p| 国产综合永久精品日韩鬼片| 日本大香蕉| 亚洲黑人在线| 国产精品激情久久久久久久| 欧美亚洲丝袜美女电影| 亚洲日精品| 青青操综合网| 性生活久久久久久久久久| 97久久国产| 综合色啪| 热热色综合网| 国产黄色 A 片免费看| 诱惑人妻欧美一区在线播放| 张柏芝国产一区在线观看| 91一起操| 一卡二卡在线播放| 欧美日韩精品一区二区三区高清| 男人干美女| 人人搞人人插人人操| 婷婷99| 99久在线精品99re8a| 成人免费看吃奶视频网站| 国内91熟女人妻丝袜天天精品视频在线 | 中文字幕欧美日韩三级| 五月婷婷激情网| 免费亚洲国产精品久久一区| 乱伦a片视频| 欧美日韩国产电影| 五十路六十路七十路熟婆| 久久综合日韩亚洲欧美| 精品一级毛片在线观看| 少妇无码999| www.狠狠| 色欧洲| 精品人妻一区二区三区-国产| 在线中文字幕视频| 尻女朋友一夜| 中国AV美女| 精品十三区| 青草草免费网站av| 欧美熟爽综合| 国产美女在线精品免费看| 一区二区偷拍拍视频| 天天伊人| 色九九九综合| 日本一本道A级黄色毛片试看60分钟| 91日韩网站| 婷婷五月天小说| JIZZJIZZ亚洲女人被躁| 美女主播色欲91抠b在线播放| 玖玖玖玖精品国产剧情| 久久女女| 97玖玖超碰| 人妻一区视频| 特色a在线上| AV天堂电影网| 女同性恋久久| 蜜桃精品视频一区二区三区| 亚洲色久| 精品久久久久久中文字幕三区| #NAME?| 亚洲综合小说另类图欧美视频激情小说色五月天 | 一级黄色性爱A级片| 欧美色综合图片| 91久久久久久久| 国产精品久久久久久高清无码免费看 | 在线播放一级无码视频| 欧美综合自拍亚洲综合图| 九九在线精品| 久久综合国产精品国产| 天天综合~91| 中文字幕日产av人| 翔田千里Av在线| 91激情国产| 久久熟妇五十路一区| 奇米狠999| www.av家庭乱伦| 天天干2019| 久久一区二区三区入口| 熟女人妻精品一区二区视频| 久久久久密臀一区二区| 色色色999| 为用户提供免费看黄网址在线观看| 九99久久| 国产自产91区13区| 亚欧性爱在线无码| 国产丝袜欧美在线视频| 日本免费二区三区| 国产精品熟女九九九| 97色色婷婷| 色色网91| 少妇久久久久久| 日韩无码第3页| 亚洲性猛交| 97人肏| 免費黃色視頻觀看一| 操操逼视频| 伊色久人大在线| 99热日| 宗合情欲网| 中国东北熟女老太婆内谢| 日韩性爱长视频免费| 一本大道久| 操婢日韩| 精品人妻一区二区三区日产乱码| 青青草在线视频欧美| 黑丝少妇在线观看| 五月激情影院| 亚洲αv一区二区三区| 强被迫伦姧在线观看无码网站| 97视频播放| 久久成人精品| 91欧美综合在线| 性色中出| 欧美日日夜夜| 女优视频第10页| 人妻av在线| 亚洲熟女性高潮久久久| 欧美天天射| 欧美天天干| 美女好片色日本| 欧美淫乱视频| 男人成人黄色视频在线观看免费下载| 国产精品欧美激在线| 久久久工口| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 中出789在线视频| 国产精品欧美激在线| 大香蕉 222| 亚洲日韩青青草色月| 99热在线播放| 五月丁香久久| 神马久久久久眼| 在线黄页看毛片| 亚洲 欧美 91| 日韩草久视频| 性爱综合网| 婷婷成人五月天| 一区二区三区机械有限公司| 色色色网站| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 激情综合av| 99蜜桃臀亚洲成人在线观看| 久久久久亚洲精品| 久久超碰免费的| 天天日日日射| 中文在线视频| 中文字幕免费在线观看| 欧美激情 亚洲色图| 超碰色97| 久久久96| 日本操逼二区| 国产树林里野战在线看| 97电影院超碰| 一区二区三区男女操逼黄色小电影| 偷拍亚洲高清图片| 欧美白嫩女HD| 99热日| 少妇久久久久久久久| 欧美色狠| 再深点灬舒服灬太大了添视频| 国产精品久久久久无码AV会牛| 精品久热| 久久骚少妇| 超碰无码五月97| 在线视频资源| 美女十八禁| 中国人高清www色视频免费| 污污汅18禁网站在线永久免费观看| 国产欧美岛国精品一区| 无码免费一区二区三区啪啪| 日本精品国产视频| 色拍偷亚洲| 日韩91网| 一区二区三区高清天码| 婷婷伊人| 天天综合欧美综合| 91亚洲狠狠色| 性猛交| 国产成人综合在线播放| 九色 人妻 大香蕉| 91激情综合| 日日躁夜夜躁狠狠躁超爽| 精品久久久久久中文字幕视频免费| 波多野结衣被操50分钟免费视频 | 欧美一二三| 中文字幕国产| 国产天天噜一噜久久久| 97精品久久| 免费av大片| 亚洲美女精品| 天天操熟妇| 国产精品原创巨作?v网站| 自慰白浆在线观看| 人人澡人人爽人人精品| 一二三卡欧美日韩人妻免费精品| 1区2区3区视频| 日韩欧美字幕亚洲一区二区| 91精品久久综合熟女| 黄总AV色图| 97视频免费播放| 日日操丁香五月天| 国产av白丝| 久久精品99| 久久久久九九九| 九九色逼| 国产精品3| 18禁在线视频| 9久综合网| 久久久国产精品亚洲精品| 91丨人妻丨国产丨丝袜| 丁香六月综合激情| 久久9999| 强奸国产精品视频| 天天爽夜夜操| 久久久网一区| 精品人成视频在线观看| 中国女人内射6XXXXX| 精品久久久久9999| 亚洲情色 自拍| 美国一区二区三区视频| 性色中出| www.男人天堂| 翔田千里Av在线| 精品久久久久9999| 亚欧美综合网| 91在线色综合| 国产999精品久久久| 日本日逼高清| 久草男人天堂| 国产av强奸美女| 久久一二三四五六七八九区区区| 欧美熟妇亚洲版| 欧美福利视频啊啊啊啊| 五十路熟女工口 | 欧美草草高清日韩视频| 91久久久久久| 欧美少妇大量自拍视频在线观看| 亚洲欧美另类小说| AV 少妇 人妻 偷拍| 天干天干天干天天做| 亚洲密乳AV| 欧美日韩国产电影| 人人看人人插| 天天色踪合| 国产成人99久久亚洲综合| 97AV在线免费观看| 日韩性爱1级片视频| 欧美日韩国产男人| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | Julia在线播放亚洲久久| 色九九久九九| 一区二区三区 丝袜 高跟 美腿 | 日日干日日操五月天伦理视频| 成人一二三区| 夜夜爽77777| 成人a v在线播放免费| 国产久久久9999| 国产精品爆乳懂色蜜乳| 欧美 牲| 在线视频亚洲无码| 欧美亚洲丝袜美女电影| 人人妻人人澡人人爽久久av| 99色视频| 男女猛烈无遮掩视频免费软件| 国产精品久久久久久久久久久久久久久久久久| 日本高清视频xxxx| 亚洲性刺激| 亚洲AV成人无码一区二区三区在线观看| 久久久久久加勒比| 九热大香蕉| 成年人黄色小视频网站| 无码粉嫩白虎一线天b区| 四虎永久在线精品免费网址 | 51一区二区三区| 一本道综合色图| 天天谢天天干| 蜜臀人妻少妇久久在线观看| 国产亚洲美日韩Aⅴ中文字幕无码成人| 综合激情五月丁香| 日韩av不卡在线看| 丝袜狂射91| 99ri视频| 久艾草在线精品视频在线观看| 中文字幕78| 国产动漫操逼视频| 日韩操逼性鲍| 精品无人区麻豆乱码1区2区图片| 综合色图区| 高潮的A片激情扒开一区| 97久久久久| 极品粉嫩一区二区| 免费在线观看国内色片网站网址| 乱欲视频| 亚洲十八禁止| 久久午夜伦| 中文久久爆乳| 91AV入口| 疯操AV| 欧美日韩人妻婷婷一区| 大香交伊人网| 日本东京热加勒比久久| 免费岛国一级片| 亚洲双插| 裸模AV女优| 天天色香欲综合网| 在线岛| 电家庭影院午夜69久久夜色精品国产69乱 | 丝袜美腿操av| 91久久18禁| 香一区二区三区| 国产av激情无码久久天堂| 精品久久97| 超碰在线综合97| 久久天天摸| 黑人精品成人一区二区三区| 亚洲欧洲综合av在线| 淫淫综合网| 国产丸一视频| 91色色综合| 亚欧精品久久久久久久久久久| 色嗨嗨在线| 综合 欧美 亚洲 日本| 久久久精| 色婷婷久久综合超碰| 蜜桃在线观看一区二区三区| 在线免费观看日韩一区| 国产在线播放成人免费| 夜夜欢天天干| 91狠狠综合久久久久久| 91oumei| 亚洲 欧美 91| 亚洲乱码尤物193YW| 2020中文在线一区二区三区| 日韩黄色av中文字幕| WWW操逼| 亲子敌伦对白在线播放| 中文久久| 一级做a爰片性色毛片久久| 91人妻人人澡人人爽人人精品| 九t超碰| 亚洲欧美黄| 97亚洲色图| 九热中文字幕| 一区在线精品中文字幕| 欧亚韩国999| 亚洲蜜臀精品视频久久| 久久精品一区一起草| 久久久久久久久久久久久久久乱码 | 小电影欧美91| 超碰在线1234区| 偷拍亚洲情色| 97久久精品不卡| 精品中文日韩字幕视频| 4虎在线视频| 9 9无尺码天堂网| 熟妇艹鸡八| 香蕉免费一区二区三区不读 | 操一区| AA丁香综合激情| 一二三啪啪专区| 色婷婷在线视频精品导航| 欧美大码在线视频| 啊啊啊 在线观看| 中文字幕91综合| 嗯啊啊啊轻点视频| 欧美色997| 亚洲精品欧洲精品| 99色骚| 欧美体内射精| 亚洲猛交| 欧美极品| 男人天堂网站| 亚洲国产成人精品女人久久久| 亚洲欧美电影| 人人操人人摸avav| 日本熟女中文字幕一区| 秋霞蝌科网日本一区| 99操碰| 任你爽视频| 午夜福利免费精品视频| 久操不卡视频| 蜜桃臀av在线观看| 有码人妻系列| 91精品国久久久久久无码| 中文字幕午夜精品久久久| 国产熟女自拍|