当前位置: 首页 > news >正文

Quicker+豆包+DeepSeek-Harness:构建截图多模态识别推理自动化链路

很多人在工作中都遇到过这类需求:看到一张截图、一份表格、一段网页内容,想快速让 AI 理解并给出结论,但又不想把图片拖进对话框、复制粘贴一大段文字。更麻烦的是,如果这个操作要每天重复几十次,手动处理就成了负担。这时候往往会想:能不能把网页版的 AI 助手变成接口,再配合一个快捷键,截图后直接调用,甚至把结果继续交给多模态模型做二次推理?

这篇文章就围绕一条完整的自动化链路展开:Quicker 作为触发入口,豆包网页版作为多模态理解能力来源,通过 API 封装层把网页能力接口化,再接入 DeepSeek-Harness 完成复杂的多模态推理任务。适合正在做 AI 工具集成、想用 Quicker 提高办公效率,或者对多模态模型调用感兴趣的开发者阅读。学完后,你可以搭建一条“截图 → 智能识别 → 多模态推理 → 返回结构化结果”的完整 pipeline。

1. 为什么要搭建这条多模态链路

1.1 一个典型场景:截图即问答

先设想一个日常场景:你正在整理一份 PDF 中的表格,表格是扫描件,无法直接复制文字。传统做法是打开 OCR 工具识别文字,再把文字复制到 AI 对话框里提问,最后把结果粘贴回笔记。这个过程至少需要三到五步,每步都在不同软件之间来回切换。

如果换成自动化链路呢?按下 Quicker 设定的快捷键,框选图片区域,图片自动上传到 AI 接口,AI 返回识别结果,再交给多模态推理模块做进一步理解,最后结果直接写入剪贴板或弹窗显示。整个流程从“多步手动操作”变成了“一次快捷键触发”。

这就是这条链路的核心价值:把网页版 AI 能力从聊天窗口里解放出来,变成可编程、可组合、可重复使用的接口

1.2 四个关键角色:Quicker、豆包、API 封装、DeepSeek-Harness

在这条链路中,四个组件各有分工:

组件作用类比
Quicker自动化触发层,负责截图、选中文件、绑定快捷键遥控器
豆包网页版提供多模态理解能力,能识别图片、文档中的内容眼睛和初级大脑
API 封装层把网页版交互封装成 HTTP 接口,方便程序调用翻译官
DeepSeek-Harness多模态推理层,负责复杂任务的拆解、推理、输出高级分析员

这四个角色不是孤立存在的。Quicker 负责“触发”,豆包负责“看懂图片”,API 封装层负责“把看懂的结果送出来”,DeepSeek-Harness 负责“做深度推理”。组合在一起,就形成了一条完整的多模态处理流水线。

1.3 整体架构与数据流

整条链路的数据流可以这样描述:

  1. Quicker 动作触发后,先进行区域截图或文件选择。
  2. 图片文件通过 HTTP 请求发送到本地 API 服务。
  3. API 服务拿到图片后,调用豆包网页版的多模态能力,获取原始识别结果。
  4. 原始结果被转发给 DeepSeek-Harness 接口,进行结构化处理或推理。
  5. 推理结果返回给 Quicker,展示给用户,或写入剪贴板、文件。

用 ASCII 简图表示如下:

Quicker 触发截图 ↓ 本地 API 服务(封装豆包网页能力) ↓ 多模态理解(豆包) ↓ DeepSeek-Harness 推理 ↓ 结果返回 Quicker 展示

这个架构并不复杂,但把每个环节打通,需要理解 Quicker 的动作编写方式、HTTP 接口设计、网页版请求的会话处理,以及多模态模型的调用参数。接下来分别讲解。

2. 环境准备与版本说明

2.1 基础软件清单

搭建这条链路需要准备以下环境:

  • 操作系统:Windows 10 或 Windows 11。Quicker 主要运行在 Windows 平台上,macOS 和 Linux 用户可参考思路,但不能直接运行 Quicker。
  • Quicker:安装并登录,建议使用 1.40 以上版本,支持更完善的动作编辑和 HTTP 请求组件。
  • Python:建议 3.9 或 3.10 版本,用于编写 API 封装服务和多模态推理代码。
  • 浏览器:Chrome 或 Edge,用于登录豆包网页版并分析网页请求。
  • Docker:如果 DeepSeek-Harness 需要以容器方式启动,需要安装 Docker Desktop。
  • 代码编辑器:VS Code 或 PyCharm,用于编写和调试 Python 代码。

版本需要根据你的实际环境调整。这里以常见环境为例,重点演示配置思路。

2.2 安装 DeepSeek-Harness

DeepSeek-Harness 是一套围绕 DeepSeek 系列模型的推理与工具链组件,主要用于将模型包装成可执行的 Agent 流程。安装方式通常有两种:

方式一:从源码安装

git clone https://github.com/deepseek-ai/DeepSeek-Harness.git cd DeepSeek-Harness pip install -e .

如果在国内网络环境下安装依赖较慢,可以使用国内镜像源:

pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple

方式二:通过 pip 安装

pip install deepseek-harness -i https://pypi.tuna.tsinghua.edu.cn/simple

需要注意的是,DeepSeek-Harness 项目仍处于快速迭代阶段,不同版本的接口、配置项可能不同。安装完成后,建议先查看官方 README 确认当前版本支持的模型列表和调用方式。

2.3 项目目录结构

为了方便管理和复用,建议将链路代码组织成下面的目录结构:

multimodal-pipeline/ ├── app.py # FastAPI 封装服务 ├── quick_actions.py # Quicker 调用的 Python 脚本 ├── harness_client.py # DeepSeek-Harness 调用代码 ├── uploads/ # 临时存放上传图片 ├── requirements.txt # Python 依赖清单 └── config.py # 配置文件(接口地址、超时时间等)

requirements.txt 中需要包含以下核心依赖:

fastapi uvicorn requests python-multipart pillow

安装依赖:

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

3. 核心原理拆解:Quicker 作为自动化触发层

3.1 Quicker 动作的组成

Quicker 是一款 Windows 效率工具,核心单位是“动作”。一个动作可以包含多个步骤,例如:

  1. 截图或选择文件。
  2. 调用命令行或 Python 脚本。
  3. 发送 HTTP 请求。
  4. 展示结果或写入剪贴板。

在 Quicker 的动作编辑器中,你需要把每一步配置为节点。类似流程图,节点从上到下依次执行。

对于“截图并调用接口”这个动作,核心步骤是:

  • 使用“截图”步骤获取屏幕区域图像。
  • 使用“保存截图到临时文件”步骤把图片保存为 PNG 文件。
  • 使用“获取临时文件路径”步骤拿到图片路径。
  • 使用“运行 Python 脚本”步骤调起本地脚本,脚本负责上传图片。

3.2 在 Quicker 中调用 HTTP API

Quicker 本身支持发送 HTTP 请求,你可以在动作中添加“Http”节点。例如,要向本地 API 上传图片,可以按如下方式配置:

  • 请求方式:POST
  • 请求 URL:http://127.0.0.1:8000/api/multimodal
  • 请求体:multipart/form-data
  • 文件字段名:file
  • 文件内容:{截图文件路径}

如果你更习惯用 Python 脚本处理复杂逻辑,可以在 Quicker 中直接调用 Python:

import requests file_path = r"C:\path\to\screenshot.png" resp = requests.post( "http://127.0.0.1:8000/api/multimodal", files={"file": open(file_path, "rb")}, timeout=60, ) print(resp.json())

然后 Quicker 通过“运行 Python 脚本”节点执行该脚本,并读取输出结果。

3.3 为什么需要 API 封装层而不是直接操作浏览器

有读者可能疑惑:Quicker 本身能发起 HTTP 请求,为什么还要单独写一个 API 封装服务?

主要有三个原因:

  1. 会话统一管理。调用豆包网页版需要携带 Cookie 等会话凭证。如果每一个 Quicker 动作都直接拼 Cookie,维护成本高,也容易泄露。集中放在 API 服务中,可以在一个位置统一管理。
  2. 扩展多步处理。API 服务可以串联“豆包识别 → DeepSeek-Harness 推理”等多个步骤,Quicker 只需要调用一个接口即可拿到最终结果。
  3. 复用性更强。除了 Quicker,工作流工具、定时脚本、即时通讯机器人等都可以复用同一个 API 服务。

所以,API 封装层本质上是给“网页版 AI 能力”加了一层可编程入口。

4. 把豆包网页版能力封装成可复用 API

4.1 分析豆包网页版请求

在开始封装前,需要先了解豆包网页版是如何与服务器通信的。登录豆包网页版后,按 F12 打开开发者工具,切换到 Network 面板,然后上传一张图片进行识别。观察请求列表,你会看到类似下面的请求:

  • 请求类型:POST
  • 请求地址:类似/api/v1/multimodal/chat
  • 请求体:包含图片的 base64 编码、文本提示词、会话 ID 等
  • 请求头:包含 Cookie、User-Agent、Content-Type 等

这部分信息因人而异、也随时可能更新。本文不提供固定的抓包结果,而是给出通用的封装思路:

  1. 复制请求 URL 和请求头关键字段。
  2. 观察请求体结构,找到图片数据所在的字段。
  3. 在 Python 中用requests模拟同样的请求。
  4. 将响应解析为文本结果。

需要特别强调的是,网页版请求分析仅用于个人学习与个人工作流自动化,不应绕过账号鉴权、不应用于批量爬取或大并发请求。实际项目中,如果要用在多用户或生产环境,一定要优先使用官方提供的 API 服务,而不是网页版抓包方案。

4.2 Cookie 与会话处理

网页版请求的核心凭证是 Cookie。Cookie 保存在浏览器中,登录过期后需要重新获取。在封装层中,建议将 Cookie 放在配置文件中:

# config.py COOKIE_STRING = "你的Cookie字符串" DOUBAO_API_URL = "https://你的豆包接口地址" TIMEOUT = 60

需要注意的是,Cookie 属于敏感信息,不应提交到 Git 仓库。建议使用环境变量:

import os COOKIE_STRING = os.getenv("DOUBAO_COOKIE", "")

当 Cookie 过期时,接口会返回登录失效或权限不足的错误,此时需要重新登录网页版并刷新 Cookie。

4.3 编写 FastAPI 封装服务

下面编写一个 FastAPI 服务,它接收图片文件,调用豆包网页版接口进行多模态理解,返回结果文本。

# app.py import base64 import os import time import requests from fastapi import FastAPI, File, UploadFile from fastapi.responses import JSONResponse app = FastAPI(title="Multimodal Pipeline API") DOUBAO_API_URL = os.getenv("DOUBAO_API_URL", "") DOUBAO_COOKIE = os.getenv("DOUBAO_COOKIE", "") def call_doubao_multimodal(image_bytes: bytes, prompt: str = "请详细描述这张图片的内容") -> str: """ 调用豆包网页版多模态接口。 这里以模拟请求为例,实际字段需要根据抓包结果调整。 """ if not DOUBAO_API_URL or not DOUBAO_COOKIE: return "请先配置 DOUBAO_API_URL 和 DOUBAO_COOKIE 环境变量" image_base64 = base64.b64encode(image_bytes).decode("utf-8") headers = { "Cookie": DOUBAO_COOKIE, "Content-Type": "application/json", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)", } payload = { "type": "multimodal_chat", "content": prompt, "image": image_base64, "session_id": f"pipeline-{int(time.time())}", } try: resp = requests.post(DOUBAO_API_URL, json=payload, headers=headers, timeout=60) resp.raise_for_status() data = resp.json() # 这里根据真实接口返回值解析文字结果 return data.get("reply") or data.get("text") or resp.text except Exception as e: return f"调用豆包接口失败:{e}" @app.post("/api/multimodal") async def multimodal(file: UploadFile = File(...)): image_bytes = await file.read() result = call_doubao_multimodal(image_bytes) return JSONResponse(content={"result": result}) @app.get("/health") async def health(): return {"status": "ok"}

启动服务:

uvicorn app:app --host 127.0.0.1 --port 8000

这里的代码是链路演示,实际部署时需要根据豆包网页版的真实接口格式调整请求体字段。

4.4 运行接口并用 curl 验证

服务启动后,可以用 curl 验证接口是否正常工作。准备一张测试图片,例如test.png,执行:

curl -X POST http://127.0.0.1:8000/api/multimodal \ -F "file=@test.png"

如果配置正确,返回结果类似:

{"result": "图片中是一张产品功能架构图,包含四个层级……"}

如果返回的是错误信息,则需要检查 Cookie 是否过期,或者请求字段是否与网页版实际请求一致。

5. 接入 DeepSeek-Harness 实现多模态推理

5.1 DeepSeek-Harness 能做什么

豆包网页版返回的通常是“描述性文本”,适合直接问答,但遇到复杂任务时——比如“识别这张图表,并统计增长率最高的月份”——就需要进一步的推理能力。

DeepSeek-Harness 在这条链路中承担推理角色。它可以基于多模态输入,进行任务拆解、工具调用、结构化输出。它的特点是不只做“看图说话”,而是把大模型和多模态输入组合成一个可执行的推理流程。

5.2 编写多模态推理调用代码

由于 DeepSeek-Harness 的接口版本更新较快,这里给出通用调用思路。通常你需要先初始化客户端,再传入图片和问题:

# harness_client.py import requests import json HARNESS_API_URL = "http://127.0.0.1:7891/v1/chat/completions" HARNESS_MODEL = "deepseek-vl2" def run_harness_inference(image_url: str, text_prompt: str) -> str: """ 调用 DeepSeek-Harness 的推理接口。 示例代码为通用 OpenAI 兼容格式,具体以实际部署的服务为准。 """ payload = { "model": HARNESS_MODEL, "messages": [ { "role": "user", "content": [ {"type": "text", "text": text_prompt}, {"type": "image_url", "image_url": {"url": image_url}}, ], } ], } try: resp = requests.post( HARNESS_API_URL, data=json.dumps(payload), headers={"Content-Type": "application/json"}, timeout=120, ) resp.raise_for_status() data = resp.json() return data["choices"][0]["message"]["content"] except Exception as e: return f"DeepSeek-Harness 推理失败:{e}"

这段代码的亮点是使用了 OpenAI 兼容的消息格式,许多基于 vLLM、FastAPI 包装的模型服务都能识别这种结构。如果你的部署方式不同,请根据实际接口文档调整。

5.3 将 Quicker、豆包 API、DeepSeek-Harness 串成完整链路

现在把前几节的代码组合起来,形成一个完整的链路。

# quick_actions.py import os import sys import requests import json API_BASE_URL = "http://127.0.0.1:8000" HARNESS_API_URL = "http://127.0.0.1:7891/v1/chat/completions" HARNESS_MODEL = "deepseek-vl2" def upload_and_reason(image_path: str, question: str = "请识别图中内容并输出要点") -> str: # 第一步:调用本地 API,让豆包理解图片 with open(image_path, "rb") as f: resp = requests.post( f"{API_BASE_URL}/api/multimodal", files={"file": f}, timeout=60, ) resp_data = resp.json() doubao_result = resp_data.get("result", "") # 第二步:将豆包输出作为提示词,交给 DeepSeek-Harness 做推理 payload = { "model": HARNESS_MODEL, "messages": [ { "role": "user", "content": ( f"以下是对一张图片的多模态识别结果:\n{doubao_result}\n" f"请基于这个结果回答问题:{question}" ), } ], } harness_resp = requests.post( HARNESS_API_URL, data=json.dumps(payload), headers={"Content-Type": "application/json"}, timeout=120, ) harness_data = harness_resp.json() return harness_data["choices"][0]["message"]["content"] if __name__ == "__main__": image_path = sys.argv[1] question = sys.argv[2] if len(sys.argv) > 2 else "请整理图片中的关键信息" result = upload_and_reason(image_path, question) print(result)

在 Quicker 中配置“运行 Python 脚本”节点,传入截图路径和问题参数,即可一键执行整条链路。

5.4 运行效果与输出说明

当你用 Quicker 截取一张包含销售数据表格的图片时,执行链路后的输出可能类似:

根据图片内容,各季度销售额如下: Q1: 120 万 Q2: 156 万 Q3: 98 万 Q4: 210 万 其中 Q4 增长最快,环比增长约 114%。

整个过程只需要一次快捷键触发,不需要手动打开任何 AI 页面。这就是自动化链路带来的直接效率提升。

6. 高频报错与排查清单

6.1 API 返回 529 overloaded

api error: 529 overloaded. this is a server-side issue, usually temporary这类报错说明服务端负载过高,属于临时性错误,通常不是本地代码问题。

排查思路如下:

  • 检查是否在请求高峰期调用。
  • 在代码中加入重试机制,等待几秒后重试。
  • 降低单次请求图片的尺寸,减小服务端压力。
  • 切换非高峰时段测试,确认是否稳定复现。

示例重试逻辑:

import time def call_with_retry(func, max_retries=3, delay=5): for i in range(max_retries): try: return func() except Exception as e: if "529" in str(e) and i < max_retries - 1: time.sleep(delay) continue raise e

6.2 Docker API 连接失败

如果在启动 DeepSeek-Harness 相关容器时遇到类似failed to connect to the docker api at npipe:////./pipe/dockerdesktoplinuxen的报错,说明 Docker 服务没有启动或不正常。

解决步骤:

  1. 打开 Docker Desktop,等待状态变为 Running。
  2. 执行docker ps验证 Docker 是否可用。
  3. 如果使用 WSL2 后端,检查 WSL 虚拟化是否正常。
  4. 重启 Docker Desktop 后再次尝试。

6.3 无法连接 API,socket 被关闭

cannot connect to api: the socket connection was closed unexpectedly通常表示后端服务崩溃或连接被强制断开。

可能原因和解决方式:

问题现象常见原因解决思路
连接被重置服务端超时关闭连接增加请求超时时间
服务端崩溃内存不足、模型加载失败查看服务日志,释放内存
请求体过大图片 base64 过长压缩图片后上传
访问地址错误API 地址配置错误检查 base_url 和端口

6.4 多模态识别结果不准确

如果豆包返回的结果是“图片看不太清楚”或者识别结果明显错误,常见原因是图片模糊、分辨率过低,或图片中包含过多无关信息。

建议:

  • 截图时尽量只保留目标区域。
  • 将图片转换为 JPG 格式,必要时放大分辨率。
  • 调整提示词,明确识别目标,例如“请只识别表格中的金额列”。
  • 对图片做预处理,如自动对比度增强、去噪。

7. 工程化最佳实践

7.1 接口命名与版本管理

本地 API 服务虽然只给自己用,也建议遵循 RESTful API 命名规范:

  • 使用名词复数表示资源,例如/api/multimodal
  • 携带版本号,例如/api/v1/multimodal
  • 返回统一格式:{"code": 0, "message": "success", "data": {...}}

统一返回格式的好处是,调用方只需解析固定字段,不考虑不同接口的差异。

7.2 会话凭证安全

Cookie 是整条链路的关键凭证,一旦泄露,别人可以冒用你的身份调用网页服务。因此必须做到:

  • 不把 Cookie 写死到代码里。
  • 使用环境变量或本地配置文件保存,并加入.gitignore
  • 定期更换 Cookie,避免长期有效。
  • 只将服务绑定到127.0.0.1,不要暴露到公网。

在 FastAPI 中限制访问来源:

import uvicorn if __name__ == "__main__": uvicorn.run(app, host="127.0.0.1", port=8000)

7.3 重试、限流与熔断

调用外部网页接口时,服务端随时可能限流或报错。建议在代码中加入三层保护:

  • 重试:遇到超时、529 等临时错误时重试。
  • 限流:控制每秒调用次数,不要高频请求。
  • 熔断:连续失败达到阈值时,暂停调用一段时间,避免加重服务端负担。

简单实现示例:

import time class SimpleCircuitBreaker: def __init__(self, max_failures=5, cooldown=30): self.max_failures = max_failures self.cooldown = cooldown self.failures = 0 self.opened_at = None def allow(self): if self.opened_at and time.time() - self.opened_at > self.cooldown: self.failures = 0 self.opened_at = None return True if self.failures >= self.max_failures: return False return True def record_failure(self): self.failures += 1 if self.failures >= self.max_failures: self.opened_at = time.time()

在正式项目中,你可以使用tenacity这类成熟的 Python 重试库简化逻辑:

pip install tenacity
from tenacity import retry, stop_after_attempt, wait_fixed, retry_if_exception_type @retry(stop=stop_after_attempt(3), wait=wait_fixed(5)) def call_external_api(): resp = requests.post(..., timeout=30) resp.raise_for_status() return resp.json()

7.4 性能优化建议

整条链路的耗时主要来自两部分:图片上传与识别、模型推理。可以从几个方向优化:

  • 限制图片大小,统一压缩到合适尺寸再上传。
  • 将豆包识别结果缓存到本地,避免重复识别同一图片。
  • 使用异步请求,多个图片同时处理时减少等待时间。
  • DeepSeek-Harness 部署时使用 GPU,并调整推理并发参数。

缓存示例:

import hashlib import os CACHE_DIR = "./cache" def get_cache_key(image_bytes: bytes): return hashlib.md5(image_bytes).hexdigest() def read_cache(image_bytes: bytes): key = get_cache_key(image_bytes) cache_file = os.path.join(CACHE_DIR, f"{key}.json") if os.path.exists(cache_file): with open(cache_file, "r", encoding="utf-8") as f: return json.load(f) return None def write_cache(image_bytes: bytes, result): os.makedirs(CACHE_DIR, exist_ok=True) key = get_cache_key(image_bytes) cache_file = os.path.join(CACHE_DIR, f"{key}.json") with open(cache_file, "w", encoding="utf-8") as f: json.dump(result, f, ensure_ascii=False)

7.5 隐私与合规

多模态识别涉及图片内容,可能包含敏感信息。在工程化使用时,务必注意:

  • 不要处理与工作无关的隐私图片。
  • 识别结果不要共享给无关人员。
  • 如果图片属于公司内部资料,要确认是否符合信息安全规范。
  • 使用第三方网页服务时,只上传确有必要的图片,处理完后及时删除临时文件。

在代码中增加临时文件清理逻辑:

import os import tempfile import shutil tmp_dir = tempfile.mkdtemp() try: # 处理流程 pass finally: shutil.rmtree(tmp_dir, ignore_errors=True)

8. 总结与下一步学习建议

这条链路的核心在于“打通”:Quicker 解决触发问题,API 封装层解决接口化问题,豆包解决多模态理解问题,DeepSeek-Harness 解决推理问题。四个工具单独使用都不困难,难的是把流程串起来,并考虑重试、安全、缓存这些工程细节。

如果你跟着文章的思路从头搭建一遍,应该能掌握几个关键技能:在 Quicker 中编排自动化动作、用 FastAPI 封装外部网页能力、用 Python 编写多模态调用代码,以及如何排查接口调用过程中的常见报错。

接下来可以继续深入的方向包括:把链路接入了即时通讯机器人,实现“群聊发图自动识别”;接入定时任务,批量处理文件夹中的图片;或者引入向量数据库,把识别结果存档后可检索。无论往哪个方向扩展,核心思想都是一致的:把 AI 能力从对话框里拿出来,嵌入到日常工作的每一个角落。

http://www.cnnetsun.cn/news/4327171.html

相关文章:

  • AI风险工程化治理:从模型评估、数据脱敏到输出过滤的落地实践
  • AI编程Agent省钱真相:从工具选择到工程化落地
  • 运维人的智能班长,解析 AI Agent 如何接管重复性故障处理
  • VMware Workstation Pro虚拟机安装与使用全流程详解
  • 度小满金融秋招研发岗笔试题复盘:算法与金融科技考点全解析
  • 小模型部署实战:从API接入到本地推理与批量任务落地指南
  • HyperMesh 2022有限元前处理入门:从几何清理到网格划分实战
  • Unity C#进阶:Action与Func委托的简化使用
  • Cosmos 3后训练实战:VLM推理与合成数据生成全流程
  • VMware Workstation Pro 完整指南:从下载安装到创建第一台虚拟机
  • VMD-SSA-LSTM光伏功率预测MATLAB实现:从分解到优化全流程
  • Java面试八股文+项目场景题一周高效刷题攻略
  • MBED下STM32 OLED驱动与多级菜单库设计实战解析
  • ESP32桌面HUD时钟:手势切换与自动转屏的番茄钟设计
  • HarmonyOS 多设备短视频开发 : 17 — Navigation 路由与 NavPathStack
  • JIT-Agent:动态生成智能体框架,让大模型自主规划工具与执行路径
  • 把JD贴进IDE两分钟开始面试?AI与IDE结合的真价值
  • CEF 90.5.9 集成指南:版本解析、依赖文件与踩坑笔记
  • PrivaZer深度清理:擦除隐私痕迹并释放C盘空间
  • 惠普 (HP) HyperX 暗影精灵MAX 16英寸游戏笔记本电脑 16-ah1xxx,16-ah1000原装出厂Windows11系统恢复镜像
  • FreeToken引擎实战:8GB显存跑35B大模型的部署与调优
  • springboot+vue 家谱管理系统源码 带小程序后台
  • claude-obsidian结合Obsidian Canvas:5步构建可视化知识地图的完整指南
  • 多Agent统一工作平台深度解析:从核心概念到Hermes Studio实战
  • cdai:基于意图解析的智能目录切换 CLI 工具设计实现
  • 零售业来了个新Agent:专查商品采销库存错配
  • freellmapi揭秘:从免费大模型API聚合到自建轻量网关实践
  • 专业肺结节CT数据集构建与分割模型调优实战
  • Python环境搭建与Jupyter实操:AI辅助调试到报告导出全流程指南
  • 毕业论文格式排版像做致谢?书霸AI帮你把感谢写得体体面面