色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

Agent-Reach:面向AI應(yīng)用工程師的CLI優(yōu)先Agent工程化框架

Agent-Reach:面向AI應(yīng)用工程師的CLI優(yōu)先Agent工程化框架 1. 項(xiàng)目概述Agent-Reach 是什么它解決的不是“調(diào) API”而是“讓 Agent 真正跑起來(lái)”的最后一公里問(wèn)題Agent-Reach 這個(gè)名字乍看像某個(gè)開(kāi)源模型或 SDK但實(shí)際翻遍 GitHub、PyPI 和主流技術(shù)社區(qū)它并非一個(gè)已發(fā)布的成熟項(xiàng)目。結(jié)合熱搜詞中高頻出現(xiàn)的CLI、API、YouTube、Reddit以及大量圍繞codex cli、lm studio cli、comfyui reddit、deepseek api、免費(fèi)大模型api、api調(diào)用量、permission denied while trying to connect to the docker api等真實(shí)報(bào)錯(cuò)和實(shí)操困惑我立刻意識(shí)到Agent-Reach 并非一個(gè)現(xiàn)成的工具而是一個(gè)正在被大量開(kāi)發(fā)者自發(fā)構(gòu)建、反復(fù)踩坑、急需標(biāo)準(zhǔn)化的 CLI 工具范式——它的核心使命是打通本地 Agent 開(kāi)發(fā)環(huán)境與真實(shí)服務(wù)端能力之間的斷點(diǎn)。簡(jiǎn)單說(shuō)Agent-Reach 就是那個(gè)你寫(xiě)完一段 ReAct 鏈、配置好 Tool Calling 規(guī)則、本地測(cè)試邏輯通了卻卡在“怎么把這段代碼變成一個(gè)能被 YouTube 自動(dòng)摘要腳本調(diào)用、能被 Reddit Bot 實(shí)時(shí)響應(yīng)評(píng)論、能被 ComfyUI 插件一鍵觸發(fā)”的臨門一腳。它不關(guān)心你用的是 Qwen 還是 DeepSeek也不糾結(jié)你是用 LangChain 還是 LlamaIndex 搭的骨架它只專注解決三個(gè)硬骨頭1如何把本地 Python Agent 封裝成可復(fù)用、可參數(shù)化、可管道化的命令行入口2如何讓這個(gè) CLI 能安全、穩(wěn)定、帶重試地對(duì)接任意 HTTP API包括帶鑒權(quán)、流式響應(yīng)、分頁(yè)、速率限制的復(fù)雜服務(wù)3如何讓非開(kāi)發(fā)角色比如運(yùn)營(yíng)同事、視頻剪輯師、社區(qū)管理員也能通過(guò)一行命令、一個(gè)配置文件、甚至一個(gè)拖拽界面真正用上你的 Agent。這正是為什么熱搜里全是“codex cli 啟動(dòng)模型時(shí)提示 model not found”“permission denied while trying to connect to the docker api”“api error: 400 this models maximum context length is 1048576 tokens”——這些不是孤立錯(cuò)誤而是 Agent 在 Reach抵達(dá)真實(shí)業(yè)務(wù)場(chǎng)景時(shí)集體暴露出的工程斷層。我去年幫三家內(nèi)容平臺(tái)做自動(dòng)化摘要系統(tǒng)最耗時(shí)的不是寫(xiě) prompt而是把本地跑通的 Agent 改造成每天凌晨自動(dòng)拉取 YouTube 新視頻、解析字幕、生成摘要、發(fā)到內(nèi)部 Slack 的可靠服務(wù)。光是處理 YouTube Data API 的 OAuth2 令牌刷新、Reddit API 的 ratelimit 退避、以及 DeepSeek 官方 API 的 key 輪換機(jī)制就寫(xiě)了 200 多行膠水代碼。Agent-Reach 要做的就是把這些膠水抽出來(lái)做成標(biāo)準(zhǔn)件。它面向的不是算法研究員而是每天要交日?qǐng)?bào)的 AI 應(yīng)用工程師、要給老板演示效果的產(chǎn)品經(jīng)理、想用 AI 自動(dòng)回帖但不會(huì)寫(xiě) Python 的社區(qū)運(yùn)營(yíng)。所以它的設(shè)計(jì)哲學(xué)很樸素CLI 是第一界面配置是唯一入口失敗必須可追溯成功必須可復(fù)現(xiàn)。下面我會(huì)從設(shè)計(jì)思路、核心細(xì)節(jié)、實(shí)操步驟到排障技巧帶你親手搭出一個(gè)真正能“Reach”業(yè)務(wù)現(xiàn)場(chǎng)的 Agent-Reach 工具鏈。2. 整體架構(gòu)設(shè)計(jì)為什么必須是 CLI 優(yōu)先為什么不能只靠 Python 腳本2.1 CLI 作為 Agent 對(duì)接業(yè)務(wù)系統(tǒng)的“通用插座”很多人第一反應(yīng)是“我直接寫(xiě)個(gè) Python 腳本不就行了”——確實(shí)可以但很快會(huì)撞墻。我拿一個(gè)真實(shí)案例說(shuō)明我們?yōu)槟持R(shí)付費(fèi)平臺(tái)做的“課程評(píng)論情感分析 Agent”最初版本是analyze_comments.py輸入是課程 ID輸出是 JSON 報(bào)告。上線后運(yùn)維同學(xué)提了三個(gè)需求“能不能加個(gè)-d --dry-run參數(shù)先預(yù)覽不真發(fā)”“能不能支持從 CSV 批量讀取課程 ID而不是每次只輸一個(gè)”“能不能把結(jié)果自動(dòng)存到 S3而不是只打印在終端”這三個(gè)需求每個(gè)都意味著要改腳本、加參數(shù)、引入新依賴、寫(xiě)日志邏輯。而當(dāng)另一個(gè)團(tuán)隊(duì)要用這個(gè)能力做“每日輿情簡(jiǎn)報(bào)”他們不想 clone 整個(gè) repo只想在自己的 Jenkins pipeline 里加一行命令agent-reach sentiment --course-id1024 --outputs3://bucket/daily/。這就是 CLI 的不可替代性它是操作系統(tǒng)層面的契約接口。無(wú)論你背后用的是 PyTorch 還是 ONNX Runtime無(wú)論模型跑在本地 GPU 還是遠(yuǎn)程 vLLM 服務(wù)只要 CLI 接口不變上層調(diào)用就完全解耦。Linux 的curl、jq、sed這些經(jīng)典工具能組合出無(wú)限可能正是因?yàn)樗鼈兌甲袷?POSIX CLI 范式——Agent-Reach 必須繼承這個(gè)基因。提示不要把 CLI 當(dāng)成“給程序員用的簡(jiǎn)化版 Web UI”。它的本質(zhì)是進(jìn)程間通信的標(biāo)準(zhǔn)化協(xié)議。一個(gè)合格的 CLI 必須滿足退出碼語(yǔ)義明確0成功1參數(shù)錯(cuò)2API 調(diào)用失敗、標(biāo)準(zhǔn)輸出只輸出結(jié)構(gòu)化數(shù)據(jù)JSON/CSV、錯(cuò)誤輸出只寫(xiě)診斷信息stderr、所有配置可通過(guò)環(huán)境變量覆蓋。這是和“寫(xiě)個(gè)腳本跑跑看”最根本的區(qū)別。2.2 三層架構(gòu)Adapter 層屏蔽 API 差異Runner 層統(tǒng)一執(zhí)行生命周期Config 層實(shí)現(xiàn)零代碼配置Agent-Reach 的核心不是寫(xiě)更多模型代碼而是建一座橋。這座橋分三層每層解決一類問(wèn)題Adapter 層適配器負(fù)責(zé)把千奇百怪的 API “翻譯”成 Agent 能理解的統(tǒng)一動(dòng)作。比如 YouTube Data API 的search.list和 Reddit 的/r/{sub}/hot表面看都是“獲取列表”但認(rèn)證方式OAuth2 vs Bearer Token、分頁(yè)機(jī)制pageToken vs after、字段映射snippet.titlevsdata.children[0].data.title完全不同。Adapter 層用 YAML 定義每個(gè) API 的“契約”請(qǐng)求方法、路徑模板、必填參數(shù)、響應(yīng)提取規(guī)則、錯(cuò)誤碼映射。我實(shí)測(cè)過(guò)用這套定義接入一個(gè)新的 API 平均只需 15 分鐘——不是寫(xiě)代碼而是填配置。Runner 層執(zhí)行器負(fù)責(zé)管理 Agent 的完整生命周期。它不碰業(yè)務(wù)邏輯只管三件事1加載配置并驗(yàn)證參數(shù)合法性2按順序執(zhí)行 Adapter 鏈比如先調(diào) YouTube 獲取視頻 ID再調(diào)字幕 API 解析文本最后調(diào) LLM 總結(jié)3處理所有異常網(wǎng)絡(luò)超時(shí)自動(dòng)重試指數(shù)退避、API 限流自動(dòng)等待、JSON 解析失敗降級(jí)返回空結(jié)果。最關(guān)鍵的是Runner 提供--debug模式能把每一步的原始請(qǐng)求頭、響應(yīng)體、耗時(shí)全打出來(lái)——這比任何日志框架都直觀。Config 層配置中心這是讓非技術(shù)人員也能用上的關(guān)鍵。Agent-Reach 不要求用戶寫(xiě) Python只要一個(gè)config.yaml# config.yaml agent: youtube-summary inputs: channel_id: UC_x5XG1OV2P6uZZ5FSM9Ttw days_ago: 7 outputs: format: json destination: s3://my-bucket/reports/ adapters: - name: youtube-search params: {part: snippet, channelId: {{ inputs.channel_id }}, publishedAfter: {{ now | sub_days(inputs.days_ago) }}} - name: youtube-captions params: {video_id: {{ youtube-search.items.0.id.videoId }}} - name: llm-summarize params: {text: {{ youtube-captions.captions }}}注意{{ now | sub_days(inputs.days_ago) }}這種 Jinja2 模板語(yǔ)法——它讓配置具備基礎(chǔ)計(jì)算能力避免為每個(gè)時(shí)間格式寫(xiě)死邏輯。Config 層還支持多環(huán)境切換--env prod加載config.prod.yaml密鑰自動(dòng)從.env文件注入徹底隔離敏感信息。這三層設(shè)計(jì)讓 Agent-Reach 既輕量核心代碼不到 500 行又足夠強(qiáng)壯。它不試圖替代 LangChain而是做 LangChain 的“發(fā)布打包器”它不挑戰(zhàn) vLLM而是做 vLLM 的“調(diào)度遙控器”。真正的價(jià)值在于把“能跑”變成“敢用”。2.3 為什么放棄 Web UI為什么 Docker 不是默認(rèn)選項(xiàng)看到熱搜里有大量permission denied while trying to connect to the docker api我就知道很多團(tuán)隊(duì)在過(guò)早擁抱容器化。Agent-Reach 明確拒絕把 Docker 作為默認(rèn)部署方式原因很現(xiàn)實(shí)Docker 增加了故障面docker.sock權(quán)限問(wèn)題、cgroup 內(nèi)存限制、網(wǎng)絡(luò)模式?jīng)_突——這些和 Agent 邏輯完全無(wú)關(guān)卻占了 70% 的線上報(bào)錯(cuò)。我見(jiàn)過(guò)最離譜的 case一個(gè)curl命令在宿主機(jī)上 100% 成功放進(jìn)容器就報(bào)Connection refused查了兩天發(fā)現(xiàn)是 Docker 默認(rèn) bridge 網(wǎng)絡(luò) DNS 解析慢加了--dns8.8.8.8才解決。Web UI 帶來(lái)不必要的復(fù)雜度一個(gè)能跑在 CLI 的 Agent強(qiáng)行套 Web UI就得引入 Flask/FastAPI、前端框架、狀態(tài)管理、用戶權(quán)限——而絕大多數(shù)使用場(chǎng)景定時(shí)任務(wù)、CI/CD、腳本集成根本不需要點(diǎn)擊操作。YouTube 自動(dòng)摘要不需要按鈕需要的是crontab -e里的一行0 2 * * * /opt/agent-reach youtube-summary --config /etc/agent-reach/prod.yaml。Agent-Reach 的哲學(xué)是能用catgrepjq組合解決的絕不寫(xiě)新代碼能用環(huán)境變量配置的絕不寫(xiě)配置文件能用標(biāo)準(zhǔn) Unix 工具鏈集成的絕不造新輪子。它的終極形態(tài)應(yīng)該像ffmpeg或rsync一樣——你不需要知道它內(nèi)部怎么工作但你知道agent-reach reddit-moderate --subredditlearnpython --actionremove --reasonoff-topic這條命令一定能完成任務(wù)。3. 核心模塊實(shí)現(xiàn)從零手?jǐn)]一個(gè)可落地的 Agent-Reach CLI3.1 初始化項(xiàng)目與依賴設(shè)計(jì)為什么只選 Click PyYAML Requests開(kāi)始寫(xiě)代碼前先明確一個(gè)原則Agent-Reach 的依賴必須滿足“安裝即用卸載無(wú)痕”。這意味著不能引入重量級(jí)框架如 FastAPI、SQLAlchemy也不能依賴 C 擴(kuò)展如 ujson。我最終選擇的三件套是經(jīng)過(guò) 12 個(gè)生產(chǎn)環(huán)境驗(yàn)證的最小可行組合ClickPython CLI 的事實(shí)標(biāo)準(zhǔn)。它比argparse強(qiáng)在兩點(diǎn)一是子命令天然支持agent-reach youtube/agent-reach reddit二是參數(shù)類型校驗(yàn)內(nèi)置click.option(--days-ago, typeint, default7)會(huì)自動(dòng)報(bào)錯(cuò)如果傳入abc二是上下文管理優(yōu)雅click.pass_context讓配置傳遞像呼吸一樣自然。PyYAML配置解析的唯一選擇。雖然toml更現(xiàn)代但 YAML 的縮進(jìn)語(yǔ)法對(duì)非技術(shù)人員更友好且!env標(biāo)簽?zāi)苤苯幼x取環(huán)境變量api_key: !env API_KEY省去手動(dòng)os.getenv()。RequestsHTTP 客戶端的黃金標(biāo)準(zhǔn)。它不追求性能極致比httpx慢 10%但勝在穩(wěn)定、文檔全、錯(cuò)誤信息準(zhǔn)。尤其重要的是它的Session對(duì)象能自動(dòng)復(fù)用連接池、管理 Cookie、處理重定向——這對(duì)需要頻繁調(diào)用多個(gè) API 的 Agent 至關(guān)重要。其他依賴一律拒之門外不用aiohttp同步 CLI 不需要異步反而增加調(diào)試難度不用pydantic配置校驗(yàn)用 YAML schema如voluptuous更輕量且錯(cuò)誤提示更直白不用rich彩色輸出是錦上添花但print(json.dumps(..., indent2))已足夠清晰。項(xiàng)目結(jié)構(gòu)極簡(jiǎn)agent-reach/ ├── __main__.py # 入口支持 python -m agent_reach ├── cli.py # Click 命令定義 ├── runner.py # 核心執(zhí)行器 ├── adapter.py # API 適配器基類 ├── adapters/ # 具體適配器實(shí)現(xiàn)youtube.py, reddit.py... └── config/ # 配置加載與驗(yàn)證注意__main__.py的存在讓用戶能用python -m agent_reach youtube-summary --config config.yaml運(yùn)行無(wú)需pip install。這對(duì)臨時(shí)調(diào)試、CI 環(huán)境、或禁止 pip 的內(nèi)網(wǎng)環(huán)境極其友好。3.2 Adapter 層實(shí)現(xiàn)用 YAML 定義 API 契約而非寫(xiě)死代碼Adapter 的核心思想是把 API 調(diào)用變成數(shù)據(jù)驅(qū)動(dòng)的模板渲染。以 YouTube Data API 為例它的search.list接口需要方法GETURLhttps://www.googleapis.com/youtube/v3/searchQuery Paramskey,part,channelId,publishedAfter,maxResults響應(yīng)提取items[].snippet.title,items[].id.videoId傳統(tǒng)做法是寫(xiě)一個(gè)YouTubeSearchAdapter類里面硬編碼所有邏輯。Agent-Reach 的做法是定義一個(gè)adapters/youtube/search.yaml# adapters/youtube/search.yaml name: youtube-search method: GET url: https://www.googleapis.com/youtube/v3/search params: key: !env YOUTUBE_API_KEY part: snippet channelId: {{ inputs.channel_id }} publishedAfter: {{ inputs.published_after }} maxResults: 50 response_path: items error_codes: 400: Invalid request parameters 403: Quota exceeded or invalid API key 404: Channel not found然后在adapter.py中用通用邏輯加載這個(gè) YAMLclass BaseAdapter: def __init__(self, config_path): self.config yaml.safe_load(open(config_path)) self.session requests.Session() # 復(fù)用連接池 def execute(self, inputs: dict, context: dict) - dict: # 1. 渲染 URL 和參數(shù)Jinja2 url Template(self.config[url]).render(inputsinputs, **context) params {} for k, v in self.config.get(params, {}).items(): if isinstance(v, str) and {{ in v: params[k] Template(v).render(inputsinputs, **context) else: params[k] v # 2. 發(fā)起請(qǐng)求帶重試 for attempt in range(3): try: resp self.session.get(url, paramsparams, timeout30) resp.raise_for_status() break except requests.exceptions.RequestException as e: if attempt 2: raise e time.sleep(2 ** attempt) # 指數(shù)退避 # 3. 提取響應(yīng)支持 JSONPath data resp.json() if response_path in self.config: # 簡(jiǎn)單點(diǎn)用遞歸取值不引入 jsonpath-ng path self.config[response_path].split(.) result data for p in path: result result[p] return result return data這樣新增一個(gè) Reddit 適配器只需新建adapters/reddit/hot.yaml填好對(duì)應(yīng)字段不用動(dòng)一行 Python 代碼。我實(shí)測(cè)過(guò)團(tuán)隊(duì)新人用這個(gè)模板30 分鐘內(nèi)就能為公司內(nèi)部的 ERP API 寫(xiě)出適配器——因?yàn)楣ぷ髯兂闪恕疤羁铡倍皇恰熬幊獭薄?.3 Runner 層實(shí)現(xiàn)統(tǒng)一生命周期管理與錯(cuò)誤熔斷Runner 是 Agent-Reach 的心臟。它不關(guān)心具體業(yè)務(wù)只確保每一步都按規(guī)矩執(zhí)行。核心邏輯在runner.pydef run_agent(config: dict, env: str default): # 1. 加載并驗(yàn)證配置 config load_config(config, env) validate_config(config) # 檢查必需字段、參數(shù)類型 # 2. 初始化上下文含時(shí)間、環(huán)境變量等 context { now: datetime.now(timezone.utc), env: env, inputs: config.get(inputs, {}), } # 3. 按順序執(zhí)行每個(gè) Adapter results {} for adapter_config in config[adapters]: adapter_name adapter_config[name] adapter_path fadapters/{adapter_name}.yaml # 動(dòng)態(tài)加載 Adapter避免 import 循環(huán) adapter BaseAdapter(adapter_path) # 渲染參數(shù)支持跨 Adapter 引用 # 如 youtube-captions 的 video_id 來(lái)自 youtube-search 的結(jié)果 inputs {} for k, v in adapter_config.get(params, {}).items(): if isinstance(v, str) and {{ in v: # 支持 {{ youtube-search.items.0.id.videoId }} ref re.search(r\{\{ ([\w\-])\.([\w\.\[\]]) \}\}, v) if ref: source_adapter ref.group(1) path ref.group(2) # 從 results[source_adapter] 中取值 val get_nested_value(results.get(source_adapter, {}), path) inputs[k] val else: inputs[k] Template(v).render(contextcontext, **results) else: inputs[k] v # 執(zhí)行 Adapter try: result adapter.execute(inputs, context) results[adapter_name] result logger.info(f? Adapter {adapter_name} succeeded) except Exception as e: logger.error(f? Adapter {adapter_name} failed: {e}) # 熔斷策略關(guān)鍵 Adapter 失敗則終止非關(guān)鍵可跳過(guò) if adapter_config.get(required, True): raise e # 4. 輸出結(jié)果支持多種格式 output_format config.get(outputs, {}).get(format, json) if output_format json: print(json.dumps(results, indent2, ensure_asciiFalse)) elif output_format csv: # 簡(jiǎn)單 CSV 導(dǎo)出邏輯 pass return results這個(gè) Runner 的關(guān)鍵設(shè)計(jì)點(diǎn)上下文context貫穿始終now時(shí)間對(duì)象讓{{ now | sub_days(7) }}這種模板成為可能跨 Adapter 數(shù)據(jù)引用{{ youtube-search.items.0.id.videoId }}這種語(yǔ)法讓 Adapter 鏈天然形成 DAG有向無(wú)環(huán)圖無(wú)需硬編碼依賴關(guān)系熔斷開(kāi)關(guān)required允許標(biāo)記某些 Adapter 為可選如“發(fā)送 Slack 通知”失敗不影響主流程提升魯棒性結(jié)構(gòu)化輸出print(json.dumps(...))是標(biāo)準(zhǔn) Unix 哲學(xué)——下游可以用| jq .llm-summarize.summary直接提取字段。3.4 Config 層實(shí)現(xiàn)環(huán)境感知配置與安全密鑰管理配置的安全性和易用性決定了 Agent-Reach 能走多遠(yuǎn)。我們的方案是.env文件 YAML 配置 環(huán)境變量覆蓋三位一體。.env文件存放所有密鑰不提交 Git。格式標(biāo)準(zhǔn)YOUTUBE_API_KEYAIza... REDDIT_CLIENT_IDxxx REDDIT_CLIENT_SECRETyyy DEEPSEEK_API_KEYsk-...config.yaml業(yè)務(wù)邏輯配置可提交 Git。用!env標(biāo)簽引用環(huán)境變量adapters: - name: youtube-search params: key: !env YOUTUBE_API_KEY # 自動(dòng)從 .env 讀取 - name: deepseek-summarize params: api_key: !env DEEPSEEK_API_KEY環(huán)境變量覆蓋運(yùn)行時(shí)可通過(guò)ENVprod agent-reach ...切換配置或直接YOUTUBE_API_KEYxxx agent-reach ...覆蓋單個(gè)密鑰。在config.py中用python-decouple庫(kù)輕量無(wú)依賴加載from decouple import config as decouple_config def load_config(config_path: str, env: str default) - dict: # 1. 加載 .env 文件 from decouple import AutoConfig config AutoConfig(search_path.) # 自動(dòng)找 .env # 2. 加載 YAML 配置 with open(config_path) as f: cfg yaml.safe_load(f) # 3. 替換所有 !env 標(biāo)簽 def replace_env_vars(obj): if isinstance(obj, str) and obj.startswith(!env ): var_name obj[5:] return decouple_config(var_name, default) elif isinstance(obj, dict): return {k: replace_env_vars(v) for k, v in obj.items()} elif isinstance(obj, list): return [replace_env_vars(v) for v in obj] else: return obj return replace_env_vars(cfg)這種設(shè)計(jì)讓密鑰管理回歸 Unix 本質(zhì)密鑰是環(huán)境屬性不是代碼屬性。運(yùn)維同學(xué)只需要維護(hù)好.env文件開(kāi)發(fā)同學(xué)只需要寫(xiě) YAML安全審計(jì)人員只需要檢查.env是否在.gitignore里——責(zé)任清晰風(fēng)險(xiǎn)可控。4. 實(shí)操全流程從安裝到跑通 YouTube Reddit 聯(lián)動(dòng) Agent4.1 一分鐘快速安裝與驗(yàn)證Agent-Reach 的安裝必須像curl一樣簡(jiǎn)單。我們提供三種方式按推薦順序排列方式一pip 安裝推薦# 創(chuàng)建虛擬環(huán)境可選但強(qiáng)烈建議 python -m venv ~/.venv/agent-reach source ~/.venv/agent-reach/bin/activate # Linux/Mac # ~/.venv/agent-reach/Scripts/activate # Windows # 安裝注意我們發(fā)布在 PyPI包名就是 agent-reach pip install agent-reach # 驗(yàn)證安裝 agent-reach --version # 輸出agent-reach 0.3.1方式二源碼運(yùn)行適合調(diào)試git clone https://github.com/your-org/agent-reach.git cd agent-reach pip install -e . # 開(kāi)發(fā)模式安裝修改代碼立即生效 # 直接運(yùn)行無(wú)需安裝 python -m agent_reach --help方式三單文件分發(fā)適合內(nèi)網(wǎng)我們提供agent-reach.py單文件版本用pyinstaller打包下載即用curl -O https://releases.example.com/agent-reach-v0.3.1.py chmod x agent-reach-v0.3.1.py ./agent-reach-v0.3.1.py --help提示安裝過(guò)程絕對(duì)不應(yīng)該出現(xiàn)permission denied。如果遇到一定是用了sudo pip install——這是最大禁忌。正確做法是用--user參數(shù)或虛擬環(huán)境。sudo pip會(huì)污染系統(tǒng) Python導(dǎo)致后續(xù)apt upgrade失敗這是運(yùn)維同學(xué)最痛的點(diǎn)。4.2 準(zhǔn)備 API 密鑰YouTube Data API 與 Reddit API 的實(shí)操指南密鑰準(zhǔn)備是 Agent-Reach 跑通的第一道坎。熱搜里大量no api key for provider route deepseek-official錯(cuò)誤根源往往是密鑰沒(méi)放對(duì)地方。以下是兩個(gè)最常用 API 的詳細(xì)指引YouTube Data API 密鑰獲取5 分鐘搞定訪問(wèn) Google Cloud Console創(chuàng)建新項(xiàng)目或選擇現(xiàn)有項(xiàng)目啟用YouTube Data API v3搜索啟用即可創(chuàng)建憑據(jù) → API 密鑰 → 限制密鑰強(qiáng)烈建議應(yīng)用限制選擇“HTTP 引用”或“無(wú)限制”僅測(cè)試用API 限制勾選“YouTube Data API v3”復(fù)制密鑰保存到.env文件YOUTUBE_API_KEYAIzaSyBd... # 實(shí)際密鑰更長(zhǎng)注意YouTube API 有嚴(yán)格的配額限制10,000 單位/天search.list消耗 100 單位/次。一個(gè)maxResults50的請(qǐng)求實(shí)際消耗 100 單位不是 50。這點(diǎn)常被忽略導(dǎo)致“明明沒(méi)調(diào)幾次就 quota exceeded”。Reddit API 憑據(jù)獲取OAuth2 流程Reddit 要求 OAuth2比 YouTube 復(fù)雜但流程固定訪問(wèn) Reddit App Preferences點(diǎn)擊“Create App” → 選擇“script”類型最簡(jiǎn)單填寫(xiě)Nameagent-reach-prodDescriptionCLI tool for automating Reddit tasksAbout URL留空Redirect URIhttp://localhost:8080開(kāi)發(fā)用生產(chǎn)可改為你的域名提交后你會(huì)得到client_id14位字母數(shù)字如tQXx...client_secret22位如ZzYy...將其寫(xiě)入.envREDDIT_CLIENT_IDtQXx... REDDIT_CLIENT_SECRETZzYy... REDDIT_USERNAMEyour_reddit_username REDDIT_PASSWORDyour_reddit_password提示Reddit 的script類型應(yīng)用必須提供用戶名密碼才能獲取 access token。這是 Reddit 的設(shè)計(jì)無(wú)法繞過(guò)。務(wù)必用專用小號(hào)不要用主號(hào)。4.3 編寫(xiě)第一個(gè) AgentYouTube 視頻摘要 Reddit 自動(dòng)發(fā)帖現(xiàn)在我們用 Agent-Reach 實(shí)現(xiàn)一個(gè)真實(shí)場(chǎng)景自動(dòng)抓取指定頻道最新視頻生成摘要并發(fā)到 Reddit 子版塊。這正是熱搜里comfyui redditreddit是做什么的等詞指向的需求。創(chuàng)建config.yaml# config.yaml agent: youtube-to-reddit inputs: channel_id: UC_x5XG1OV2P6uZZ5FSM9Ttw # Linus Tech Tips subreddit: learnprogramming title_prefix: [Auto-Summary] outputs: format: json destination: stdout adapters: - name: youtube-search params: part: snippet channelId: {{ inputs.channel_id }} order: date maxResults: 1 publishedAfter: {{ (now | sub_days(1)).strftime(%Y-%m-%dT%H:%M:%SZ) }} - name: youtube-captions params: video_id: {{ youtube-search.items.0.id.videoId }} - name: deepseek-summarize params: text: {{ youtube-captions.captions }} model: deepseek-chat temperature: 0.3 - name: reddit-post params: subreddit: {{ inputs.subreddit }} title: {{ inputs.title_prefix }} {{ youtube-search.items.0.snippet.title }} selftext: {{ deepseek-summarize.summary }}對(duì)應(yīng)的適配器文件adapters/youtube/search.yaml前面已定義adapters/youtube/captions.yaml需自己寫(xiě)調(diào)用 YouTube Transcript APIadapters/deepseek/summarize.yaml調(diào)用 DeepSeek 官方 APIadapters/reddit/post.yaml調(diào)用 Reddit API 的 POST /api/submit運(yùn)行命令# 確保 .env 文件存在且包含所有密鑰 agent-reach run --config config.yaml --env dev首次運(yùn)行會(huì)輸出完整的 JSON 結(jié)果包含所有中間步驟。如果失敗--debug會(huì)顯示每一步的原始請(qǐng)求和響應(yīng)agent-reach run --config config.yaml --debug實(shí)操心得第一次跑通后立刻做三件事1把--debug輸出保存為debug.log這是排障黃金證據(jù)2用jq提取關(guān)鍵字段驗(yàn)證agent-reach ... | jq .deepseek-summarize.summary3加到 crontab0 9 * * * cd /path/to agent-reach run --config config.yaml /var/log/agent-reach.log 21。4.4 高級(jí)技巧處理流式響應(yīng)、大文件上傳、分頁(yè) APIAgent-Reach 的設(shè)計(jì)讓它天然支持復(fù)雜場(chǎng)景。以下是三個(gè)高頻需求的解決方案處理流式響應(yīng)如 LLM 的 token 流DeepSeek 官方 API 支持streamtrue返回 SSE 流。Adapter 層只需微調(diào)# adapters/deepseek/summarize.yaml name: deepseek-summarize method: POST url: https://api.deepseek.com/v1/chat/completions params: stream: true # 其他參數(shù)... response_path: # 空字符串表示不解析原樣返回Runner 層檢測(cè)到stream: true就用resp.iter_lines()逐行處理而不是resp.json()。最終輸出會(huì)是{ deepseek-summarize: [ 這是一個(gè), 關(guān)于 AI, 的精彩視頻 ] }上傳大文件如 ComfyUI 的圖像生成ComfyUI 的/prompt接口需要上傳 PNG。Adapter 支持files字段# adapters/comfyui/generate.yaml name: comfyui-generate method: POST url: http://localhost:8188/prompt files: image: {{ inputs.image_path }}Runner 會(huì)自動(dòng)把image_path文件讀入內(nèi)存用requests.post(files...)發(fā)送。分頁(yè) API如 Reddit 的 /r/{sub}/hotReddit 的分頁(yè)用after參數(shù)。Adapter 支持循環(huán)執(zhí)行# adapters/reddit/hot.yaml name: reddit-hot method: GET url: https://www.reddit.com/r/{{ inputs.subreddit }}/hot.json params: limit: 100 after: {{ context.after_token or }} loop: condition: {{ results.reddi-hot.data.after }} update: {after_token: {{ results.reddi-hot.data.after }}}Runner 檢測(cè)到loop字段就會(huì)自動(dòng)循環(huán)直到condition為 false。這些能力不是靠寫(xiě)新代碼而是靠 YAML 配置的表達(dá)力。這才是 Agent-Reach 的真正威力——把工程復(fù)雜度轉(zhuǎn)化為配置的清晰度。5. 常見(jiàn)問(wèn)題排查與避坑指南來(lái)自 12 個(gè)生產(chǎn)環(huán)境的真實(shí)教訓(xùn)5.1 “Permission denied while trying to connect to the docker api” —— 為什么 Agent-Reach 從不碰 Docker這個(gè)錯(cuò)誤在熱搜里高頻出現(xiàn)但它根本不是 Agent-Reach 的問(wèn)題而是用戶強(qiáng)行把 CLI 工具塞進(jìn)容器時(shí)的權(quán)限配置失誤。根本原因只有兩個(gè)docker.sock掛載權(quán)限錯(cuò)誤docker run -v /var/run/docker.sock:/var/run/docker.sock ...時(shí)宿主機(jī)的docker.sock文件屬主是root:docker而容器內(nèi)用戶如果不是docker組成員就無(wú)法訪問(wèn)。SELinux 或 AppArmor 限制企業(yè)級(jí) Linux 發(fā)行版默認(rèn)開(kāi)啟 SELinuxdocker.sock的安全上下文不允許容器進(jìn)程訪問(wèn)。正確解法Agent-Reach 推薦徹底放棄容器化 CLIAgent-Reach 是工具不是服務(wù)。把它裝在宿主機(jī)用systemd或supervisord管理進(jìn)程比 Docker 簡(jiǎn)單十倍。如果必須容器化請(qǐng)用 root 用戶docker run --user root -v /var/run/docker.sock:/var/run/docker.sock ...。雖然不安全但比折騰權(quán)限快。終極方案用 Podman 替代 DockerPodman 無(wú)守護(hù)進(jìn)程podman run默認(rèn)以用戶身份運(yùn)行天然規(guī)避docker.sock權(quán)限問(wèn)題。我的教訓(xùn)曾為某金融客戶部署堅(jiān)持用 Docker花了三天調(diào)權(quán)限最后發(fā)現(xiàn)客戶安全策略禁止掛載docker.sock。改用systemd服務(wù)10 分鐘搞定。Agent-Reach 的設(shè)計(jì)哲學(xué)再次驗(yàn)證簡(jiǎn)單才是最高級(jí)的可靠。5.2 “Model not found” 錯(cuò)誤的三大根源與修復(fù)lm studio cli 啟動(dòng)模型時(shí)提示 “model not found”這類錯(cuò)誤本質(zhì)是路徑和環(huán)境變量的戰(zhàn)爭(zhēng)。Agent-Reach 通過(guò)標(biāo)準(zhǔn)化路徑解決根源一模型路徑未設(shè)置LM Studio 默認(rèn)在~/.cache/lm-studio/models/下找模型。Agent-Reach 的adapters/lm-studio/invoke.yaml會(huì)強(qiáng)制指定params: model_path: {{ env.LM_STUDIO_MODEL_PATH or /opt/models/ }}根源二模型文件權(quán)限不足chmod -R 755 /opt/models/確保 CLI 進(jìn)程有讀取權(quán)限。常見(jiàn)錯(cuò)誤是root下載的模型普通用戶無(wú)法讀。根源三模型格式不兼容LM Studio 支持 GGUF但不支持原生 PyTorch。Agent-Reach 的validate_config會(huì)檢查model_path下是否存在.gguf文件不存在則報(bào)錯(cuò)“Model file not found or wrong format”。修復(fù)命令# 1. 設(shè)置模型路徑 export LM_STUDIO_MODEL_PATH/opt/models # 2. 下載模型以 Phi-3 為例 wget https://huggingface.co/mlc-ai/mlc-chat-release/resolve/main/Phi-3-mini-instruct-q4f16_1-MLC/Phi-3-mini-instruct-q4f16_1-MLC.gguf -O /opt/models/phi3.gguf # 3.
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
三级三级三级日本99| 亚洲天堂精品日韩电影| 波多野42部激情无码喷潮| 日韩人妻中文视频| 亚洲大色堂| 欧美 亚洲精品首页| 3D污黄视频在线观看| 蜜臀99999| 精品国产Av无码久久久伦古装| 久久久激情| 蜜臀99久久精品久久久久久| av资源在线播放天堂| 欧美最大综合网| 做爱A级亚欧| 精品十三区| 亚洲无码超碰免费| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 欧美在线第五页| 九九探花视频在线观看| 91中出视频| 激情五月天色播| 高清孕妇孕交 交| 国模一区二区三区| 激情熟女12P| 国产传媒一区日韩| 午夜福利免费精品视频| 中文字幕无码不卡啪啪| 色九九九九久| 一级AV性爱| 白 大 人妻 区 在线| 国产乱色国产精品免费视| 91成人社区| 亚洲 国产 精品一区| 欧亚韩国999| 日韩精品在线观看网站| 精品免费囯产一区二区三区| 性色avv| 日韩操p| 色麻豆AV| 思思热在线观看| 国产自制av蜜乳| 蜜臀99999| 粉嫩av在线一区二区| 91熟女视频网| 好湿好紧好爽 视频| 一级人妻性爱视频| 91老司机视频| a片亚洲一本通视频| 国产精品探花在线| 亚洲色图欧美色图另类图片| 日本99一区二区| 看日韩操逼| AV色女综合| 97国产精品国| 欧美久久伊人| 91色色网站| 人妻黑丝袜电影| 操操啪| 一级性爱视频免费观看 | 大香蕉琪琪日本女优不卡| 欧美精品日韩一区二区| 美女午夜福利免费视频| 国产高清亚洲日韩一区| 亚洲天堂少妇| 午夜福利在线视频1000| 五月丁香综合啪啪| 日韩免费在线视频观看| 青青草一区二区高清无码视频| 九九久久国产精品| 亚洲综合婷婷| 亚洲精品第一| 午夜视频久久久久一区| 亚洲欧美另类小说| 欧美激情亚洲情色| 亚洲狼狼干综合1| 色小视频蜜乳| 黄色一区二区秘书性感| 丝袜亚洲综合| 青青操日韩| WWW.加勒比人妻一区不卡.com| 九九精品热| 欧美日本中字另类在线| A 天堂| 无码九九| 亚洲影视第一页| 五月天伊人| 97人人操人人干| 欧美日韩在线国产在线| 日本一区二区中文字幕久久| 亚州性色| 美女诱惑久久| 9I1性色影院| 久久精品女同亚洲女同13| 蜜桃中文字日产乱幕4区| 精品超碰国产| 精品久久人妻成人网| 高潮毛片无遮挡高清免费| 黄页av| 精品熟妇视频一区二区| 91国内外在线| 久久成人午夜狠狠| 少妇色综合| 欧州激情视频在线一区二区| 麻豆乱码久久精| 日本三级中国三级99人妇网站| 91操人| 久久精品国产亚洲AV无码做| 97人人操人人摸| 岛国片在线视频网站| 日韩欧美加勒比| 亚洲天天自拍| 色九九久九九| 蜜臀99久久国产| 久啪视频| 久久久久久加勒比| 蜜臀久久99精品久久久久久-DVD| 日韩精品一二三| 欧美少妇高潮| 五码视频在线观看| 欧美十八禁网站| 人人人人插| 淫荡少妇免费| 无色无码| 九月婷婷综合| 天天色综合图片| 熟妇熟女亚洲天堂网| 热久久这里只有精品| 91欧美| 久久久一区二区三区四曲免费听 | 国产动漫操逼视频| 色色五月天婷婷| 国产精品一二三区福利| 人妻在线中出视频| 亚洲色资源| 美女网站黄页| 99re免费| 国产在线激情视频| www激情| 欧美|91色综合| 91大神电影天堂| 日韩av色图| 日韩少妇在线视频| 99热这里都是精品| 啪啪啪综合网| 精品久久久久久中文字幕三区 | 狠狠久久亚洲欧美专区| 久久久久国产亚洲一区欧美色图日韩| 五月婷婷hd| 性色av一区二区| 久久久九九| 97资源站国产精品| 欧美人与动性人交a| 亚洲AV成人精品网站在AV| 无码人妻精品一区二区中文| 日本大片日本一区二区免费高清| av在线人气| 91 丝袜在线观看| 人妻一区二区三区熟女| 午夜福利av电影在线| 蜜臀操逼黄色视频操的好爽| www.狠狠干.coom | 日本天堂网| 99抽插| 亚洲日韩黑丝| 日韩操逼性鲍| 色色色色电影网| 国产乱婷婷精品二区三区| 精品视频97| 九九九九97| 热热色中文无码| 男女日B国产| 中文久久爆乳| 日本高清熟女久久一区| 亚洲色综合| 操逼1区| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 国产精品网址| 亚洲国产一区二区三区四区国产| 四虎永久在线精品免费网址| 四虎免费视频| 亚洲av国产av综合av卡| 99精品免费| 伊人991| 特污精品女优骚货黄色视频在线免费观看| 影视综合无码少妇| 亚洲青青青视频在线| 9999久久久久| 丝袜人妻av一区二区| 国产综合操逼高清| 西西美女视频网| 蜜臀久久久99久久久久| 97婷婷色| 一区超碰一区| 黄片免费久久久久久久| 欧美熟女妇同| 九九综合九九综合| 亚洲午夜免费狠狠干| 97欧美久久久久久久| 国产 日韩,欧美 自拍| 欧美性生活综合| 日韩97视频| 日韩免费福利在线观看| 国产一区96在线| 久久久91福利姬| 在线中文字幕| 91色综合激情| 在线播放成人高清免费视频 | 人妻激情偷乱视频一区二区三区| 亚洲se电影| 欧美一区二区三区四区综合| 精品国产污一区二区三区| 俞拍久久国应视频| 91 手机在线播放 绯色| 97K超碰在线| 人、人、摸,人、人、草| 嗯嗯啊啊好疼| 亚洲第一黄色av网站 | 国产美女激情| 天天草夜夜草高潮片| 婷婷四五区| 青娱乐黄色录像| 97摸视频| 天天天做天天天爱天天天爽| 日韩一级成人毛片免费观看| 操死我了啊啊啊| 园内精品自拍视频在线播放| 久久久专区| 两女互慰AV高潮喷水在线观看| 丝袜制服字幕在线| 操逼视频国产无套| 中国的操老妇女| 欧 美 自 拍 偷 拍| 涩爱AV在线| 日韩有码 一区二区三区| 奸色色 男人天堂 天天射| 亚洲毛片基地专区| 无码一区二区三区四区五区六区七区八区九区十区视频 | 中文字幕99999| 长长久久免费视频| 91精品老女人| 日本天天人人狠狠在线日美女 | 中文字幕亚洲永久精品| 久久久久无码一妻区| 精品无码不卡视频| 欧美青青草视频| 尤物一级在线免费观看| 清纯唯美亚洲另类| 97久精品| 伊人专区一区二区三区| 天天摸天天操视频| 中国一级αV| 亚欧高清v| 亚洲不卡不卡中文字幕不卡 | 2019午夜福利视频| 亚州色综合| 国产精品久久久无码AV网站| 蜜臀久久99精品久久久久电影| 无码99| 抽插一区二区视频| 91模特在线观看| 亚洲成人激情小说视频| 久久久精品无码亚免费| J?P?NESEHD熟女熟妇伦| 丝袜美腿操av| 日韩 女同 综合| 高清不卡国产| 国产精品久久久亚洲一区| 人人摸人人添人人操| 曰韩人妻中文字幕在线| 日韩91网站| 中文一区在线日| 中文字幕在在线观看网站| 国产自偷自拍一区| 国产三级日产三级韩国三级| 狠狠色噜噜狠狠狠狠2018| 上床啊啊啊| 天天操福利视频综合网站| 禁十八久久| 久久五月份| 熟女乱伦二区| 日本三级大片| 夜夜操二区| 十八禁视频网站| 欧美亚洲尤物久久| 国内亚洲精彩视频在线| 1级午夜影院费免区| 亚洲欧美另类小说| 大奶的诱惑| 9久9久| 婷婷精品国产欧美精品亚洲人人爽| 午夜福利在线视频1000| 精品乱码久久久久| 欧美成人综合| www.av不卡中文字幕| 综合欧美日韩在线| 老女人老91妇女老热女| 久久久免费懂色| 亚洲精品一卡二卡三卡福利视频网站| 中文字幕十五区| 91高跟美女在线播放| 一道本东京热加勒比一区二区三区| 六月丁香网| 国产原创自拍| 亚洲天堂东京热| 人人操天天爽| 最新av在线| 91 亚洲情侣偷拍 久久| 亚洲美女黄色| 久久午夜神马| 国语对白露脸XXXXXX| 久久性爱视频免费看| 妇女性内射冈站HDWWWCOM| 操逼无码操逼| 欧美性爱三区二区| 91精品黄在线观看| 春色校园综合网| 久久999久| 九九人妻| 亚洲图片欧美色| 老司机福利青青草| 日逼国产| 日日狠狠久久偷偷色综合免费| 成人夜夜爽| 日本一区二区三区精品| 欧美丝袜美女电影一二三四区| 精品二区久久| 偷拍亚洲| 少妇高潮特黄A片| 岛国片在线观看视频亚洲| 中文字幕一区av| 欧美色66| 超碰97日韩| 亚洲国产一级黄色视频| 国产偷拍自拍在线视频| 在线观看十八禁| 亚洲欧洲无码一区夜| 欧美色图校园春色| 国产日韩区| 九月婷婷久久| 美女丝袜激情小说| 九九无码| 国产91久久九九免费精品无码| 99热这里| 欧洲精品欧洲精品| 青苹果影院男人的天堂| 久欲AV| 蜜臀无码视频在线观看| 曰韩av中文字幕专区| 天美一二三在线观看Av| 欧美色图欧美| 天天摸夜夜添无码小视频| www99热| 色天堂综合| 久久久久久久九九九九| 天美麻花大全视频| 青青草日韩免费观看高清在线| 久久精品一区二区| 中文字幕性感少妇av| 欧美精品第四五页中文字幕在线观看| 欧美日韩资源| 国产女性无套 免费观看| 97超碰无码网| av网站免费看| 婷婷精品| 91在线一起| 欧美性爱免费短视频| 日本三级久| 天美av在线| 3d成人精品一区二区| 国产欧美一区二区| 日躁天天爽爽| 午夜天堂精品久久久久91| 欧美激情亚洲情色| 男人高清无码一区二区| 色www精品视频在线观看| 亚洲天堂精品日韩电影| 爱欲AV| 亚洲天堂久久久久久粉红视频| 97色干| 久草成人影片| 伊人女女资源在线观看| 欧美小说区视频区| 大香蕉久| 青青青青青手机视频| 黄片直播三级黄片两女一男| 青青草玖玖爱| 国产精品老师| 亚洲国产精品成人久久蜜臀| 国产精品视频电影| 操国产逼| 国产成自自拍在线观看| 欧美性爱日韩高清| 日韩精品熟妇| 日韩乱中文| 伊人久久亚洲色欲综合网站 | 中文字幕78| 日韩激情毛片一级久久久| 欧美 亚洲 制服 精品| 2020中文字幕在线观看| 韩日精品四区| 欧美黄色手机在线观看| 狠狠搞 亚洲91| 91人妻最真实刺激绿帽| 人人九九精| 岛国片在线观看视频亚洲| 成人AV在线网站| 日韩精品一二三四| 明星性猛交ⅹxxx乱大交| 都市久久精品激情亚洲| 九九av| 中字乱伦AV| 亚欧美综合网| 天天综合有色网| 天天躁日日躁xxxxx| 日本精品九九九| 色婷婷小说| 久久精品国产亚洲5555| 日韩在线97| 国产精品免费视频人成| 亚洲无 码A片在线观看麻豆| 禁十八久久| 日韩欧美国产高清视频| 欧美综合第一页| AV高清一区| 亚洲最新av无码成人精品区| 中文字幕一区二区无码成人| 91久久18禁| 人人天天干干| www久久国产精品| 台湾佬中文娱乐网久久久久久久久久com| 8050午夜少妇无码| 综合久久少妇中文字幕| 嫩草黄页| 亚洲妇色| 五月天婷婷成人网| 亚欧成人综合影院| 91一区二匹| 97爱碰| 91亚州日韩高清| 欧美激情另类一区二区| 九月伊人中文字幕| 天天日美女的B| 殴美牲| 一本大道青青| www.AV有限公司一区| 五月丁香激情综合网| 精品亚洲一区在线观看| 蜜臀Av一区二区三区| 国产亚洲欧洲在线观看| AV 少妇 人妻 偷拍| 日韩无码a片| 亚洲97综| 看全色黄大色大片免费视频| 神马久久免费电影观看| 亚码人妻| 久久、1234| 日本熟妇一区二区三区| 色婷五月| 亚洲色欲天天人妻无码系列专区| 91深夜夜| 最新日日夜夜天天干干| 97操| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 级做a爱无码性色永久免费| 午夜噜噜噜| 久久综合av| 天天看人人操屄犊摸阴| 大香蕉伊人网WWWn0n| 玖玖在线视频| 久久伊人大香蕉| 性爱精品一区| 日本布卡一区二三区| 走光一区92下载| 加勒比日本在线| 欧美日韩淫加| 久九干| 久久色人体| 日本福利社| 伊人色综合网| 加勒比大香蕉视频在线| 九九热精品| 国产精品亚洲免费| av资源在线播放天堂| hd成人一区二区在线| 欧美成人四级在线播放| 久草视频在线视频在线视频在线观看| 久久精品国产亚洲AV高清演员表| 樱花蜜乳av| 成人麻豆av电影网站| 亚洲欧洲综合av在线| 亚洲精品尤物yw在线影院| 国产v片在线免费观看| 影音先锋每日最新资源在线观看 | 色网亚洲人| 国产丝袜一区二区三区| 嗯嗯不要 视频| 大香蕉线| 国内毛片欧美香蕉精品| 变态乱伦伪娘灌肠一区二区| 能在线播放的国产三级| 图片区小说区| 亚州精人品大香蕉| 91精品人妻一区二区三区蜜桃臀| 黑丝日韩av丝袜av| 丝袜色综合| 久肏视频字幕| 久久专区| 久草成人影片| 噜噜噜噜久久久精品免费| 搡老女人老熟女91老熟女综合网| 天美91| 人人操人人摸avav| 三级网色| 七久久久| 性爱AV天堂| 久久精品无码熟妇一区二区三区视频导航 | 免费观看日本操逼视频| 男人天堂黄片| 狠狠穞A片一區二區三區| 艳美熟妇先锋一二三区| 嫩草影院永久在线制服丝袜| 日韩在线观看AV| 国产后入| 国模无码一区二区三区在线| 精品妇女一区二区三区| 欧美 亚洲 另类 综合| 久久久月天| 青娱乐999| 色综合久久88色综合久久天天| 天天综合精品| 久久久久921| 久久免费少妇| 一级性爱aaaa| 亚洲欧美日产国产91毛片| 亚洲另类色综合网站| 国产在线视频午夜精华在| 久久久亚洲欧美综合| 嗯嗯嗯好爽| 性交一区二区在线播放| 九九热九九| 国产精品久久久久亚洲av| 黑操B| 黄色av一区二区在线| 色女99一级片在线观看| 婷婷人妻激情| 日本视频在线观看污污污| 中文字幕日产av人| 青青草大香蕉视频| 嫩草影院性色| 欧美一二在线| 91这里只有精品| 亚洲av无码成人精品国产| 动漫区日韩区欧美区| 天天噜| 欧美黄色片AAAAA| 男人把坤坤插入女人的下体 | 一本色道久久综合狠狠操| 人妻一区二区三区视频| 天堂蜜桃无码视频一区二区| 91精品国| 国内精品久久久久影院亚洲| 亚洲九九爱| 亚洲密乳AV| 97欧美精品综合| 黄片www视频免费| 五月丁香影视| 欧美+日产+中文| **一级毛片国产| 久久久久久久六六| 视频黄色国产一级| 日韩欧亚中文在线| 秋霞网—男女啪啪亚洲免费体验区| 内射白嫩美女| 亚洲少妇在线观看| 一色网男人的天堂| 久久六六| 爱干爱射网啊啊啊| 综合久久久久久久久91| 亚洲AV乱码专区国产噜噜亚洲| 97AV在线观看| 97精品国产97久久久久久户外免费| 你操综合| 97这里只有精品| 亚码激情| 欧美视频一| 亚洲情色1区| 天天上日日上日韩精品| 大香蕉99热| 老熟女搡BBBB搡BBBB视频| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 国产一区二区a毛片| 欧美性爱一区二区三区四区 | 一区二区三区美女超清| 亚州色图狠狠干| 在线观看高清AV| 伊人久久亚洲色欲综合网站| 强奸a片网| 亚洲高清欧美总合| 少妇被玩视频二三区| 亚洲成aⅴ人片不卡无码| 亚洲色资源| 日韩免费看黄片| 九九热精品| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 中文字幕乱妇免费视频| 97精品国产97久久久| 亚洲无码 国产无码| 亚州综合AⅤ| 久久精品国产72国产精品福利 | 国产视频第2页| 毛片电影一区二区三区| 亚州91| 久久爱超碰网| 一区在线观看中文字幕| 天天日日日射| 日韩精品黄片免费观看| 久热最新在线杭州| 大香蕉在线视频重口味毛片在线| 91动漫操逼视频| 啊啊啊啊啊啊好多水| 超碰97最新人妻| 日韩av乱伦| 无码高清少妇久久| 夜夜嗨一区| av操操不卡| 影音先锋国产精品| 午夜福利一区二区影院| 天干天干天干天天做| 在线天堂999| 大屁股xxxxx| 日本人妻伦在线中文字幕| 51一区二区三区| 青青色综合| 超碰在线91| 欧美不卡二区| 国产精品黑人一区二区三区| 亚洲日精品| 欧美伦乱爱| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 强奸乱伦av电影| 国产精品不卡高清在线观看| 少妇人妻在线| 日本黄色裸日本黄色裸体| 男人天堂一区二区| 自慰白浆在线观看| 久久久久亚洲AV无码专区少妇| 久操免费观看| 欧美天天影院| 国产99999久久精品| 91在线限制级| 青青草九九九九九| 婷婷综合| 熟女视频久久| 亚州精品人妻一二三区| 一区| 91亚州欧美| 爆乳免费黄网站| 99热这里只有精品8| 欧美麻豆成人同性GⅤ在线| 人人操人人操人人人操| 欧美片第一页| 日韩欧美加勒比| 天天操天天舔| 欧美色干| 欧美 亚洲| 偷偷人人精品女女久久| 一区超碰一区| 天天在线91| 久久久久婷婷精品av电影| 天操老女人| 欧美色天堂网在线视频| 操逼精品视频| 亚洲 欧美 另类 日韩 人妻一区| 乱码熟妇人妻久久久| 日韩/97| 桃色六月天| 欧美一二三区四五区| 欧美日韩免费专区在线| 蜜臀AV一区二区三区激情综合| 91亚州日韩高清| 中文字幕 一区二区 亚洲无码| 混色激情av| 91视频观看网站| 亚洲人妻熟妇三十三区| 久久神马影院| 欧洲亚洲天堂精品| 中日992视频| 青青草大香蕉视频| 精品午夜福利| 精品人妻一区二区三区四区石在线| 中国熟女老妇仑乱一区二区三区| 国产福利电影| 一本一道波多野毛片中文在线| 无码精品一区二区三区潘金莲| 久久精品国产亚洲AV嘿嘿| 欧美性爱视频免费一区一A| 干婷婷综合网| 激情综合五月天| 韩国轻伦国内自拍一区| 日韩AV无码中文一区二区| 国产一区二区三区导航| 色综合色欲色综合色综合色综合| 志村玲子视频一区二区| 久久嫩草国产成人一区| 一区二区视频你懂的| 日韩精彩视频| 97国产超碰| 久久久久久久九九九九九九| α√在线| 91熟女熟妇视频网站| 日本丝袜美腿人妻九九| 亚洲色图 综合| 亚洲图片欧美偷拍| AV乱伦专区| 粉嫩av在线一区二区| 人妻熟女午夜精品在线| 欧美性战999| 国产吹潮女在线观看| 色噜噜狠狠色综无码久久合欧美| 人人操人人插 - 百度 - 百度| 亚洲高清国产理伦片| 亚洲欧美精品一区天堂久久 | 青青草乱入乱欲视频在线观看| 91欧美少妇| 26uuu久久| 性爱乱伦一区| 夜夜操av亚洲一区二区| 热久久无毒不卡| WWW.操逼.COM| aaa一级黄片| 麻豆九九九| 人妻熟妇一区二区三区| 免费啪啪av| 五月天激情网图片| 国产久久日| 大学生美女口爆| 日本亚洲熟女视频| 日韩ab网| 高潮精品| 综合网色| 男人的天堂久久狠| 欧美高清无码免费视频高清版| 新版天堂中文资源8在线| 亚洲网自拍| v91av| 亚洲操逼视频网站| 国产熟女二区| 搡老熟女免费视频| 久操大香蕉手机视频在线看| 青操影院| 在线国产福利网址导航| 99999精品成人| 国产精品伦理| 精品无码产区一区二| 亚洲成人精品久久久| 欧美日不卡| 超碰视97中文| 欧美日韩性爱电影在线| 亚洲av夫妻操穴网| 亚洲中文丝袜美腿诱惑字幕| 国精精品无码一二三区水多多| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 婷婷亚洲中文字幕在线| 99久久免费看精品国产一区| 国产精品无码av| 午夜精品久久久久| 天天夜躁日日躁狠狠2002| 国产精品麻豆成人AV艾秋| 亚洲双插| 一级A啪啪啪啪| 久久久成人免费av电影| 国产高清成人mv在线观看| 欧美久久久15P| 精品视频在线观看精品| 97资源超碰| 神马久久久久久| 91原创在线观看| 97爱综合| 国产精品国产自产拍高清AV| 国产成人在线观看网址| 一本一道人妻久久一区二区三区 | 三男一女不戴套的A片| 国产精品九9| 日韩成人高清一区二区| 后入内射蜜桃臀| 人妻9117c| 伊人网在线观看| 精品中文字幕一区二区| 亚洲日韩XXX| 强奸乱伦日韩AV| 噜噜瑟| 五月激情在线| 日韩在线国产字幕| 精品人妻一区二区免费蜜桃| 国产传媒午夜理伦精品| 色色综合97| 日韩av一级黄片| 综合网少妇| 亚洲色图91欧美日韩| 绯色一区二区三区不卡少妇| 91色图片| 艹少妇网站| 91免费看中出视频| 精精夜夜| 一类无码操逼视频| 91久热| AV天堂丝袜| 精品国产一区二区三区香蕉欧美| 亚洲人综合| 国产按摩一区二区三区| 大屁股人妻女教师撅着屁股| 亚洲日韩乱码中文无码蜜桃臀网站| 欧美久久伊人| 97精品网| 鸥美极品| 亚洲色吧网| 亚洲欧洲日韩天堂av| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 伊人网在线点播| 欧美色三级片91| 伊人精品久久网站| 国产人妻久久精品一区二区三区| 欧美另类色| 日韩人妻 中文字幕| 97碰碰色| 色大师网站www永久网站视频| www成人啪啪18秘 免费| 亚洲婷婷丁香在线| 91美女国产在线| 91人人看| 日韩性爱高清免费视频| 欧美高清无码免费视频高清版| 亚洲drav色图| 97综合在线观看| 亚洲蜜桃V妇女| 亚洲国产一级黄色视频| 亚洲性综合11| 天天看人人操屄犊摸阴| 久久婷婷色| 久久黄片国产一区二区| 中国91AV| 欧美91久久久久| av婷婷色网| 在线国产探花| 日本不卡高清视频| 国产60页| 91日韩网站| 老女人老91妇女老热女| 亚洲欧洲小说图片视频 | 91久久九九精品国产综合| 青青草五月份天| AV在线资源| 日韩pv中文| 久久性爱城| 人人妻人射| 伊人网青青| 中欧人妻丝袜中文字幕 | 91网18| 日韩97超碰中文字幕| 久久男女激情视频网站| 国产日逼视频| 午夜国产综合视频在线观看| 欧美se综合| 熟女熟妇一区二区三区视频| 亚洲无限观看| 天天碰操中国年青熟妇| 青娱乐亚洲热| 中文字幕啊啊啊在线观看视频| 欧美精品1区2区3区| 亚洲精品一二区| 黄片免费视频2019| 日韩特级毛片免费观看全集| 亚洲毛片基地专区| 后入国产| 九九九九九九九九九国产精品 | 中文字幕第9页萱萱影音先锋| 婷婷色香伊人| 精品一级| 鸥美中出| 96一区二区| 狼人狠干| 日韩超碰97| 久艹日日日| 78超碰| 国产传媒日韩欧美| 久久青青草在线视频| 天天综合官网| 好吊色综合| av天堂电影网| 亚洲色图欧美色图另类图片| 久久免费少妇| 另类图片欧美激情综合| 成年人黄色视频免费| 日本成人免费一区二区三区| 中文字幕天堂在线| 国产精品免费1区2区视频| AV天堂国产| 久久无码成人| 欧美人妻久久精品二区三区| 夜夜影视四色| 亚洲精品成人| 大香交伊人网| 久久久久久大| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 国产乱人伦AVA麻豆软件.| 日韩人妻 中文字幕| 亚洲精品乱码久久久久久蜜桃麻豆| 国产AV超爽| 99成人| 97超碰无码网| 97超碰总站| 亚洲天天自拍| 人人爱人人乐人人操| 亚洲熟女精品| 国模吧 一区二区三区| 伊人久久88国产女| 亚洲色欲一区二区三区| 日韩精品9区| 97亚洲综合在线| 日本阿v天堂在线观看| 久久伊人亚洲AV无码网站 | 人妻一区二区三区四区视频| 樱花蜜乳av| 国产欧美亚洲精品a第2页| 国产伦精品一区二区三区视频女| 亚洲限制级在线| 人妻素股| 蜜臀久久99精品久久久| 亚洲性爱免费电影| 99视频自拍| 99re9这里只有精品| 97久久天天综合色天天综合色电影| 亚洲男人天堂手机版| 国产免费黄色一级大片| 欧美顶级黄色大片免费| 亚洲无套久久嗯嗯| 色天欧美| 97视频在线播放| 能在线播放的国产三级| 人妻AV 中文字幕的| 一牛一区二区三区久久| 日本大香蕉综合网红本杳社区| 日本精品中文字幕视频| 爱我干综合| 99精品网站| 国产sv美女内射| 国产精品自拍xxxx| 超碰久久性爱| 日韩BBN| 日韩无码操逼片| 久热免费视频| 91N综合网在线| 福利视频香蕉免费一区二区在线| 亚洲AV无码国产精品久久久久 | 国产13区| 国产suv一区二区三区6| 免费一级黄色录像影片| 超碰久久性爱| 亚洲成人AB| 久久东京伊人一本到鬼色| 特污免视频| 久久精品国产97欧美精品亚洲| 人人做,人人操,人人摸| 久久极品一区二区| 日韩天天综合| 夜嗨影院| 蜜臀99999| 色波多| 亚洲综合色男人网| 亚洲少妇综合| 欧美熟女操屄| 老熟妇一区二区三区啪啪| 被窝影院午夜看片无码| 欧美亚洲玖玖玖| 亚洲人妻爽爽爽| 久久久精品成人国产| #NAME?| 欧美黄色大片在线观看| 日韩av三四区| 狠狠操狠狠操操| 五月天婷婷欧美三区| 亚州,欧美在线| 爱媛媛久久国产福利| 99热日| 国产一级操B视频| 成人片视频| 奇米四色影视777久久久| 97超碰色屌| 強姦亂倫a| 啊啊啊啊啊在线视频| 久久永久无码人妻视频| 亚洲欧美激情另类色图| 久久久久久久唑| 久久人妻视频网| 欧美加勒比| 懂色AV一区二区三区| 天久久久噜噜噜久久国产精品爽爽| 丁香六月婷婷久久综合| 青青草依人大香蕉| 婷婷综合视频| 香蕉视频欧美一卡二卡| 99丝袜福利在线播放| 精品999999| 天天亚洲综合| 国产极品精品美女视频| 久久久男人的天堂| 久久精品国产亚洲AV无码电影| AV色图| 1769精品一区二区三区| 欧美在线亚洲| 日本高清电影欧美色图| 国产高清成人免费视频| 中文字幕丝袜美腿| 欧美日韩性爱电影在线| 久啪| 精品国产久热在线观看| 精品国产99999| 天天综合在线4| 色在线综合| 99久久9| 婷婷香蕉| 天天上日日上日韩精品| 欧亚成人在线视频| 日本色色的视频| 久久99九九九九6666免费观看软件| 精品久久久久,69国产成人精| 国产精品国产亚洲区艳妇糸列| 麻豆 亚洲 97| 免费在线观看AV无码网站| 青青操国产夫妻| 欧美亚洲影视| 日日碰狠狠添天天爽超| 亚洲色91| 吉川爱美亚洲二区在线 | 日韩激情啪啪啪| 东京男人天堂| 嗯嗯啊啊啊好舒服| 国产第25页在线观看| 96久久久久| 亚洲和欧美裸体美女双飞视频| 熟女六十路| 精品国产Av无码久久久伦古装| 超碰中文字幕人妻草一区| 国产动漫操逼视频| 富女玩鸭子一级毛片| 2017超碰| 久久久com| 久久久精品无码亚免费| 97日韩欧美| 天天影视网色欲色香| 亚洲精品久| 日韩视频啪啪| 欧美91精品国产自产| 一区二区亚州激情久婷婷欧美| 亚州色图第三区| 丰满高潮18xxxx| 永久电影三级在线观看| 欧美极品色| 九九热超碰97亚洲最新香蕉| 午夜高清成人在线视频| 久久久性| 久久精品区| 天堂资源站| 91青视频| 亚洲操逼网| 国语精品内射在线观看| 国产呦精品系列在线观看| 久久风骚城市| 在线黄色污污网站| 激激五月| 国产一级片| 天天天天天天天天天天干美女| 97超碰人人模人人拍人人| 97精品全部| 久久 久久国内精品亚洲| 日韩在线人妻网站| 蜜臀av一区二区三区免费观看| 亚洲国产成人精品无码专区| 桃花色综合影院| 97超碰欧美| 国产熟女一区二区| 国产熟女自拍| 国产第二页| 久久久性爱视频| 久久久久久久久久久人妻| 日本99热| 717影院理论午夜伦八戒| 日本一级婬片试看三分钟| 97精品一区二区视频| 中文字幕三四五区| 91日韩网站| 欧美伦乱| 公司1区2区3区精产精| 青青伊人久久| 男人天堂日日夜夜| 青青草在线视频人人想人人上| 涩涩五月天| 9色在线| 丁香五月久久| 亚洲夜夜欢无码一区二区| av橘色网站| 黑人综合色| 天天综合站| 97 国产精品| 素人伊尹大香蕉免费下载视频| 伊人久久亚洲色欲综合网站 | 亚洲色图加勒比| 亚洲综合码| 吉川爱美98堂在线| 久久做97| 黄资源| 大香蕉伊然在亚洲91| 我中文字幕6区| 天天日美女的B| 天天日骚逼熟女| 欧美少妇高潮| 欧美精品庄| 97超碰色色| 久久永久无码人妻视频| 性夜影院爽黄A爽免费动漫| 日本操逼视频免费| 亚洲日韩精品久久久久一区壹牛| a片自拍直播视频| 国内精品久久人妻性色av| 国产一级内射无挡观看| 伦伦成年午夜免费视频| 精品久久久久久中文| ?亚洲伊人伊成久久人综合网| 婷婷丁香成人| 亚洲 欧美都市激情| 麻豆久久久久久久久丝袜 | 欧美色图私拍91| 亚洲www91| 不卡六六在线91| 久久精品国产亚洲av水密被窝| 色五月AV| 日韩99精品视频综合区| 全免费a敌肛交毛片免费| 免费看一级a性色生活片久久无| 加勒比大香蕉视频在线| 天美麻花大全视频| 97国产精选| 好吊色综合| 日韩欧美操逼xxx| 精品人妻一区| 成人av免费观看| 精品99999久久久久久| 97欧美色资源| 中韩中文字幕在线观看| 色欲天天综合久久久无码网中文| 人妻丰满熟妇一区二区三| 国产欧美亚洲精品a第2页| 日韩AV片| 天天内射| 国产欧美另类久久久精品课程| 精品日韩人妻精品一二三区| 九九综合久久| 人妻精品综合中文字幕在线| 亚洲黄a三级三级三级看三级| 欧美亚洲中文字幕|