ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Xinference 图像模型能力完全指南:Text-to-Image、Image-to-Image、OCR 与整档解析实战

Xinference 图像模型能力完全指南:Text-to-Image、Image-to-Image、OCR 与整档解析实战 Xinference 图像模型能力完全指南Text-to-Image、Image-to-Image、OCR 与整档解析实战【免费下载链接】inferenceSwap GPT for any LLM by changing a single line of code. Xinference lets you run open-source, speech, and multimodal models on cloud, on-prem, or your laptop — all through one unified, production-ready inference API.项目地址: https://gitcode.com/GitHub_Trending/in/inference导读Xinference 的图像Images能力为用户提供了统一的 OpenAI 兼容推理接口既可以从文本提示词生成全新图像Text-to-Image也可以基于一张给定图片生成其变体Image-to-Image还内置了面向图片与 PDF 的 OCR 与整档解析能力。本文将基于 doc/source/models/model_abilities/image.rst 的完整内容结合仓库源码API 路由、RESTful 实现、图像引擎、stable_diffusion 核心展开深度讲解覆盖支持的模型与引擎选型、四种调用方式cURL / OpenAI Client / Xinference Client / Web UI、显存优化CPU offload、文本编码器量化、NF4、GGUF、Lightning LoRA 加速、OCR 与 PDF 整档解析等实战要点帮助你在一套 API 下跑通完整的图像生成与文档理解工作流。一、Images API 概览与端点对照Xinference 的图像 API 提供两种核心交互方式Text-to-image文生图基于一段文本提示词从零开始创建图像Image-to-image图生图在给定图像的基础上生成其变体可结合提示词进行编辑。两种方式都对齐 OpenAI 的图像 API 形态端点为功能OpenAI 兼容端点Text-to-Image API/v1/images/generationsImage-to-image API/v1/images/variations在源码层面这两个端点与 inpainting/v1/images/inpainting、OCR/v1/images/ocr、图片编辑/v1/images/edits以及一套 SD WebUI 兼容接口/sdapi/v1/*、/controlnet/*一起在 xinference/api/routers/images.py 中完成注册。每个端点对应 xinference/api/restful_api.py 中的处理器方法例如create_images第 2394 行、create_variations第 2562 行、create_ocr第 2678 行它们内部都会解析请求体、校验模型访问权限启用鉴权时要求models:readscope、获取已加载模型实例后调用底层text_to_image/image_to_image/ocr等方法并将结果以 JSON 返回。在开启鉴权的部署中这些接口都会注入Security(auth, scopes[models:read])依赖见 xinference/api/routers/images.py需要携带有效的 API Key 才能访问。二、支持的模型矩阵2.1 Text-to-image文生图支持的模型Xinference 内置以下文生图模型sd-turbosdxl-turbostable-diffusion-v1.5stable-diffusion-xl-base-1.0sd3-mediumsd3.5-mediumsd3.5-largesd3.5-large-turboFLUX.1-schnellFLUX.1-devKolorshunyuandit-v1.2hunyuandit-v1.2-distilledcogview4Qwen-ImageGLM-ImageIdeogram4HiDream-O1-ImageHiDream-O1-Image-DevHiDream-O1-Image-Dev-2604Krea-2-RawKrea-2-Turbo2.2 Image-to-image图生图支持的模型Flux.1-Kontext-devQwen-Image-EditGLM-ImageHiDream-O1-ImageHiDream-O1-Image-Dev需要说明的是模型清单以当前仓库内置的 xinference/model/image/model_spec.json 为准仓库会持续更新具体可用列表可通过xinference list或 Web UI 的模型列表查看。内置模型的定义与描述逻辑见 xinference/model/image/core.py 中的ImageModelFamilyV2与match_diffusion()它会先查找用户自定义图像模型get_user_defined_images()再回落到内置模型表并支持按download_hubhuggingface / modelscope自动选择合适的模型源。2.3 HiDream-O1 系列运行说明三个 HiDream-O1 checkpoint 均可在 Hugging Facerevisionmain与 ModelScoperevisionmaster下载需要 NVIDIA CUDA GPU 与 PyTorch 2.10 或更新版本。Flash Attention 为可选能力Xinference 默认关闭以保持兼容性。模型默认采样步数用途与调度器默认值HiDream-O1-Image50文生图、基于指令的编辑、多参考图使用官方默认调度器HiDream-O1-Image-Dev28文生图、编辑、多参考图单参考图编辑使用 flow-matching 调度器文生图与多参考图生成使用 flash 调度器HiDream-O1-Image-Dev-260428仅文生图使用 checkpoint 自带的 float32 加载与采样默认值三、图像引擎Engine选型diffusers、SGLang 与 vLLM3.1 引擎分配规则文生图模型默认运行在diffusers引擎上。在带 NVIDIA GPU 的 Linux 环境中以下模型还可以选用SGLang引擎基于 sglang-diffusion或vLLM引擎基于 vllm-omni以获得更快的推理FLUX.1-devGLM-Image仅 SGLangKrea-2-Raw仅 SGLangKrea-2-Turbo仅 SGLangQwen-ImageQwen-Image-2512Z-ImageZ-Image-Turbosd3.5-medium仅 vLLM在 vLLM 引擎上若 vllm-omni 的 pipeline 支持 request-level batching如 sd3.5-medium、Qwen-Image、FLUX.1-dev可以额外对并发请求做 GPU 端批处理启动时通过max_num_seqs设置最大批大小。引擎的解析与分发逻辑在 xinference/model/image/core.py 的resolve_image_model_engine()第 118 行中实现它根据IMAGE_ENGINES注册表判断某个模型支持哪些引擎未显式指定时返回注册表中的第一个引擎作为默认。IMAGE_ENGINES字典定义于 xinference/model/image/engine_family.py由各引擎模块在加载时注册check_engine_by_model_name_and_engine()则负责匹配引擎与参数如模型格式、量化方式当开启按模型虚拟环境per-model virtual environment时还会走check_engine_by_model_name_and_engine_with_virtual_env()路径。3.2 安装与启动示例先安装带 diffusion 支持的 SGLang或与相同大版本 vLLM 匹配的 vllm-omnipip install sglang[diffusion] pip install vllm-omni0.24.* vllm0.24.*然后用--model-engine指定引擎启动xinference launch --model-name Z-Image-Turbo --model-type image --model-engine SGLang xinference launch --model-name Z-Image-Turbo --model-type image --model-engine vLLM3.3 引擎能力边界需要注意的是GGUF 量化、Lightning 加速、LoRA 与 ControlNet 目前只在diffusers引擎上可用。也就是说如果你要使用 GGUF 低比特量化或 Lightning LoRA 加速应保持在默认的 diffusers 引擎上运行。四、特定模型使用说明4.1 Ideogram4Ideogram4使用 NF4 checkpoint需要 NVIDIA CUDA GPU。其 checkpoint 基于 Ideogram 4 Non-Commercial Model Agreement 分发且仓库是 gated 的——使用前需要先接受许可协议并在所选模型中心完成身份认证。Ideogram4 接受普通文本提示词但序列化的结构化 JSON 描述structured JSON captions能获得最佳质量与控制力。如需从 ModelScope 下载可在单次启动时指定xinference launch --model-name Ideogram4 --model-type image --download_hub modelscope4.2 GLM-ImageGLM-Image通过同一个GlmImagePipeline同时支持文生图与单参考图/多参考图图生图。输出宽高必须都能被 32 整除。diffusers 引擎使用diffusers0.38.0与transformers5.0.0开启按模型虚拟环境时 Xinference 会自动安装这些依赖。Hugging Face 源为zai-org/GLM-ImagerevisionmainModelScope 源为ZhipuAI/GLM-Imagerevisionmaster。从 ModelScope 下载xinference launch --model-name GLM-Image --model-type image --download_hub modelscopeLinux NVIDIA GPU 上也可以使用 SGLang 做文生图xinference launch --model-name GLM-Image --model-type image --model-engine SGLang注意SGLang 引擎目前只暴露文生图能力图生图请使用默认的 diffusers 引擎。五、Quickstart四种调用方式完整示例启动模型后可生成一个MODEL_UID例如FLUX.1-dev然后通过以下任一方式调用。假设 Xinference 服务运行在http://XINFERENCE_HOST:XINFERENCE_PORT。5.1 Text-to-image文生图Text-to-image API 模拟 OpenAI 的 create images API。可用 cURL、OpenAI Client 或 Xinference Python Client 调用cURLcurl -X POST \ http://XINFERENCE_HOST:XINFERENCE_PORT/v1/images/generations \ -H accept: application/json \ -H Content-Type: application/json \ -d { model: MODEL_UID, prompt: an apple, }OpenAI Python Clientimport openai client openai.Client( api_keycannot be empty, base_urlhttp://XINFERENCE_HOST:XINFERENCE_PORT/v1 ) client.images.generate( modelMODEL_UID, promptan apple )Xinference Python Clientfrom xinference.client import Client client Client(http://XINFERENCE_HOST:XINFERENCE_PORT) model client.get_model(MODEL_UID) input_text an apple model.text_to_image(input_text)返回示例{ created: 1697536913, data: [ { url: /home/admin/.xinference/image/605d2f545ac74142b8031455af31ee33.jpg, b64_json: null } ] }生成结果默认落盘到~/.xinference/image/目录返回其中的文件路径也可以通过response_formatb64_json直接返回 base64 编码的图像数据。底层实现上create_images处理器会把请求体解析为TextToImageRequest含prompt、n、size、response_format以及一个可选的kwargsJSON 字符串用于透传额外参数再调用模型的text_to_image()见 xinference/api/restful_api.py。diffusers 引擎中text_to_image()支持批处理调度器image batch scheduler与直连两种路径并把n映射为num_images_per_prompt把size形如1024*1024解析为width/height见 xinference/model/image/stable_diffusion/core.py。5.2 Image-to-image图生图Image-to-image API 模拟 OpenAI 的 create image variation APIcURLmultipart 表单图片以文件字段上传curl -X POST \ http://XINFERENCE_HOST:XINFERENCE_PORT/v1/images/variations \ -F modelMODEL_UID \ -F imagexxx.jpg \ -F promptan appleOpenAI Python Clientimport openai client openai.Client( api_keycannot be empty, base_urlhttp://XINFERENCE_HOST:XINFERENCE_PORT/v1 ) client.images.create_variation( modelMODEL_UID, imageopen(image_edit_original.png, rb), promptan apple )Xinference Python Clientfrom xinference.client import Client client Client(http://XINFERENCE_HOST:XINFERENCE_PORT) model client.get_model(MODEL_UID) input_text an apple with open(xxx.jpg, rb) as f: model.image_to_image(f.read(), input_text)返回示例与文生图一致data[0].url指向生成结果文件。create_variations处理器xinference/api/restful_api.py接收model、image可多个多图时转为 PIL Image 列表、prompt、negative_prompt、n、size、response_format与可选的kwargsJSON。diffusers 引擎的image_to_image()xinference/model/image/stable_diffusion/core.py会处理多参考图 pipeline如 GLM-Image、QwenImageEditPlus、按模型期望把输入转为 4 通道 RGBA 或 3 通道 RGB、支持padding_image_to_multiple对齐如 SD3 图生图要求宽高为 16 的倍数填充后裁剪还原并支持mask_blur等高级参数。提示/v1/images/edits端点create_image_edits还支持多图上传——第一张图作为主输入其余作为参考图传给模型见 xinference/api/restful_api.py 起。六、大图像模型的显存优化CPU Offload 与量化6.1 默认量化策略v0.16.1 起从 v0.16.1 起Xinference默认对 Flux.1、SD3.5 系列等大图像模型开启量化因此只要版本新于 v0.16.1在小显存 GPU 上运行这些大模型基本无需额外配置。v0.16.1 起使用的默认选项如下模型quantize_text_encoderquantizetransformer_nf4FLUX.1-devtext_encoder_2TrueFalseFLUX.1-schnelltext_encoder_2TrueFalsesd3-mediumtext_encoder_3N/AFalsesd3.5-mediumtext_encoder_3N/AFalsesd3.5-largetext_encoder_3N/ATruesd3.5-large-turbotext_encoder_3N/ATrueQwen-Imagetext_encoderN/AFalseQwen-Image-Edittext_encoderN/AFalse6.2 可选的额外启动参数在启动launch时还可以传入以下有用参数--cpu_offload True推理时把模型的各组件卸载到 CPU 以节省显存代价是推理延迟略有上升。模型卸载只会在需要执行某个组件时才把它搬到 GPU其余组件保留在 CPU 上。--quantize_text_encoder text encoder layer借助bitsandbytes库把 T5-XXL 文本编码器加载并量化为 8-bit 精度可继续使用全部文本编码器仅轻微影响性能。--text_encoder_3 None对 sd3-medium推理时去掉占用显存极大的 4.7B 参数 T5-XXL 文本编码器可显著降低显存需求性能损失轻微。--transformer_nf4 True使用 NF4 对 transformer 做量化。--quantize仅对 Mac 上的 MLX 生效。Flux.1-dev 与 Flux.1-schnell 在 Mac 上会切换到 MLX 引擎quantize用于量化模型。Web UI 中同样适用只需在启动模型的附加参数区添加键值对即可例如添加 keycpu_offload、valueTrue来启用 CPU offload。若想关闭某些量化只需把对应选项设为FalseWeb UI 中设置 keyquantize_text_encoder值为False命令行中指定--quantize_text_encoder False即可禁用文本编码器量化。CogView4 的特别提示量化对 CogView4 影响显著。显存受限时建议在 Web UI 中启用 CPU offload 选项命令行加载则指定--cpu_offload True。6.3 量化默认值背后的设计意图从源码看这些默认值是随模型家族定义model family spec一起下发的ImageModelFamilyV2提供了default_model_config与default_generate_config字段create_image_model_instance()会把用户传入的 kwargs 与default_model_config合并后再实例化模型见 xinference/model/image/core.py。因此像transformer_nf4、quantize_text_encoder这类默认行为都集中定义在各模型的内置配置中用户传入同名参数即可覆盖默认值。七、GGUF 文件格式量化GGUF 格式为 transformer 提供了丰富的量化选项。对 Xinference 内部支持 GGUF 的图像模型可在 Web UI 中指定附加选项gguf_quantization或在命令行使用--gguf_quantization。支持的量化模式如下模型支持的 GGUF 量化FLUX.1-devF16, Q2_K, Q3_K_S, Q4_0, Q4_1, Q4_K_S, Q5_0, Q5_1, Q5_K_S, Q6_K, Q8_0FLUX.1-schnellF16, Q2_K, Q3_K_S, Q4_0, Q4_1, Q4_K_S, Q5_0, Q5_1, Q5_K_S, Q6_K, Q8_0sd3.5-mediumF16, Q3_K_M, Q3_K_S, Q4_0, Q4_1, Q4_K_M, Q4_K_S, Q5_0, Q5_1, Q5_K_M, Q5_K_S, Q6_K, Q8_0sd3.5-largeF16, Q4_0, Q4_1, Q5_0, Q5_1, Q8_0sd3.5-large-turboF16, Q4_0, Q4_1, Q5_0, Q5_1, Q8_0Qwen-ImageF16, Q3_K_M, Q3_K_S, Q4_0, Q4_1, Q4_K_M, Q4_K_S, Q5_0, Q5_1, Q5_K_M, Q5_K_S, Q6_K, Q8_0Qwen-Image-EditQ2_K, Q3_K_M, Q3_K_S, Q4_0, Q4_1, Q4_K_M, Q4_K_S, Q5_0, Q5_1, Q5_K_M, Q5_K_S, Q6_K, Q8_0Qwen-Image-Edit-2509Q2_K, Q3_K_M, Q3_K_S, Q4_0, Q4_1, Q4_K_M, Q4_K_S, Q5_0, Q5_1, Q5_K_M, Q5_K_S, Q6_K, Q8_0强烈建议搭配使用 CPU offloadWeb UI 中启用附加选项cpu_offloadTrue命令行指定--cpu_offload True。示例xinference launch --model-name FLUX.1-dev --model-type image --gguf_quantization Q2_K --cpu_offload True使用Q2_K量化后运行 Flux.1-dev 只需约5 GiB显存。对于内部不支持 GGUF 选项的模型或希望自行下载 GGUF 文件的场景可以在 Web UI 指定附加选项gguf_model_path或命令行指定--gguf_model_path /path/to/model_quant.gguf。源码层面gguf_model_path与lightning_model_path一样通过create_image_model_instance()的显式参数传入若未提供路径而给出了gguf_quantizationXinference 会通过ImageCacheManager.cache_gguf()自动按量化档位下载对应 GGUF 文件见 xinference/model/image/core.py。八、Lightning LoRA 推理加速Lightning LoRA 以 LoRA 的形式对模型做蒸馏在保持模型性能的同时显著减少推理步数、大幅提速。目前支持该 LoRA 的模型与版本如下模型支持的 Lightning 版本Qwen-Image4steps-V1.0-bf16, 4steps-V1.0, 8steps-V1.0, 8steps-V1.1-bf16, 8steps-V1.1Qwen-Image-Edit4steps-V1.0-bf16, 4steps-V1.0, 8steps-V1.0-bf16, 8steps-V1.0Qwen-Image-Edit-25094steps-V1.0-bf16, 4steps-V1.0-fp32, 8steps-V1.0-bf16, 8steps-V1.0-fp324 steps 或 8 steps 指的是推理步数num_inference_steps。当指定lightning_version后Xinference 会自动设置推理步数——源码中_gen_config_for_lightning()正是根据 lightning 模型路径中是否含4steps来把num_inference_steps设为 4 或 8见 xinference/model/image/stable_diffusion/core.py。使用时在界面中选择 lightning 版本或通过命令行指定xinference launch --model-name Qwen-Image --model-type image --lightning_version 4steps-V1.0对于自行下载了 lightning LoRA 文件的用户可在界面的 Lightning Model Path 中指定或使用命令行选项--lightning_model_path。参考效果使用4steps-V1.0后推理时间可从原来的 34 秒降至约 3 秒。九、OCR 与整档解析PDFXinference 的图像 API 还提供 OCR 能力接受图片或 PDF 字节返回 OCR 文本。OCR 模型家族的定义与引擎分发见 xinference/model/image/ocr/ocr_family.py各具体实现如 DeepDoc、OvisOCR2、DeepSeek OCR、GOT-OCR2 等位于 xinference/model/image/ocr/ 目录。9.1 图片 OCRcURLcurl -X POST \ http://XINFERENCE_HOST:XINFERENCE_PORT/v1/images/ocr \ -F modelMODEL_UID \ -F kwargs{model_size:large} \ -F imagexxx.jpgXinference Python Clientfrom xinference.client import Client client Client(http://XINFERENCE_HOST:XINFERENCE_PORT) model client.get_model(MODEL_UID, model_sizelarge) with open(xxx.jpg, rb) as f: model.ocr(f.read())返回值为 OCR 结果字符串。9.2 OvisOCR2 使用说明OvisOCR2通过图像 OCR API 暴露能力应使用上面的/v1/images/ocr端点或 Xinference Python Client而不是 OpenAI 兼容的 Chat Completions APIfrom xinference.client import Client client Client(http://XINFERENCE_HOST:XINFERENCE_PORT) model client.get_model(MODEL_UID) with open(document.jpg, rb) as f: markdown model.ocr(f.read())OvisOCR2 使用确定性解码deterministic decoding默认允许最多生成 16384 个新 token其 vLLM 适配器也应用了推荐的图像像素边界限制。视觉区域img srcimages/bbox_*.jpg /占位符会被移除因为 OCR API 不会生成这些裁剪图已知的重复尾缀也会被清理如需保留原始占位符可向model.ocr传入filter_imgtagsFalse。9.3 PDF 分页 OCRPDF 上传会逐页栅格化需要pypdfium2包含在imageextra 中对每页执行 OCR 后合并结果模型返回纯文本时各页文本以空行拼接响应仍为单个字符串与图片一致模型返回结构化结果如使用return_dict风格选项时响应为{pages: [{page: 1, result: ...}, ...]}。两个仅对 PDF 生效的可选kwargs字段pages从 1 开始的页码或页码列表默认处理全部页dpi栅格化分辨率默认 200上限 600。页会逐张栅格化以保证内存占用平稳单次请求最多 OCR 200 页大文档请用pages选取子集单页栅格超过 8000 万像素80 megapixels会被拒绝此时请调低dpicurl -X POST \ http://XINFERENCE_HOST:XINFERENCE_PORT/v1/images/ocr \ -F modelMODEL_UID \ -F kwargs{pages: [1, 2], dpi: 300} \ -F imagexxx.pdf源码层面PDF 路径的默认 DPI 常量DEFAULT_PDF_OCR_DPI 200、整档任务集合WHOLE_DOCUMENT_OCR_TASKS frozenset({parse})以及分页栅格化、结果合并逻辑都定义在 xinference/api/pdf_ocr.py 中并在create_ocr处理器中被调用见 xinference/api/restful_api.py。若请求包含taskparse这类整档任务处理器会要求 PDF 上传并拒绝pages/dpi参数且在上传前先校验栅格化预算超限会直接返回 400。9.4 整档解析DeepDoctaskparse除逐页 OCR 外部分模型还暴露整档解析任务。DeepDoc支持taskparse对整份 PDF 执行完整文档管线——版面分析、表格结构识别、段落合并与阅读顺序重建——并返回有序的文档元素curl -X POST \ http://XINFERENCE_HOST:XINFERENCE_PORT/v1/images/ocr \ -F modelMODEL_UID \ -F kwargs{task: parse} \ -F imagexxx.pdf响应示例{task: parse, elements: [ {type: table, text: tablecaption.../captiontrth.../th/tr/table, image_base64: ..., metadata: {page_number: 2, x0: 20.0, x1: 400.0, top: 50.0, bottom: 200.0, layout_type: table, col_id: 0, positions: [[2, 20, 400, 50, 200]]}} ]}字段说明type检测到的版面类型text、title、table或figuretext元素文本表格场景下是完整 HTMLmetadata中的坐标跨页累积因此top/bottom是文档级而非页级col_id只在管线将元素分配到某列时出现。与逐页任务不同parse需要自行渲染 PDF 并跨页合并因此必须上传 PDF且不接受pages或dpi。两个可选的kwargs字段zoomin渲染缩放比例默认3上限6image_scope哪些元素在image_base64中携带 base64 编码的 PNG 裁剪图table_figure默认仅表格与图片、all或none。每个元素内部都有裁剪图但全部编码会显著增大响应体积因此默认只编码表格与图片无裁剪图的元素会省略该字段。解析预算size limits整档解析的预算比逐页 OCR 更严格。当渲染后发现文档中任何位置都没有文本时DeepDoc 会以 3 倍缩放反复重渲染整个文档直到缩放达到 9——因此zoomin3的请求最终可能以 9 倍渲染。实际生效的三层预算单页预算按最坏情况缩放执行单页峰值不得超过 2 亿像素200 megapixels。A3 页面在zoomin3时没问题但在6时不行。整档预算按请求的缩放所有页面合计不得超过 10 亿像素1 gigapixel默认缩放下约为 221 张 A4同时受 200 页上限约束。重渲染发生时的整档预算升级后的峰值不得超过 60 亿像素6 gigapixels约合 24 GB 页面图像。这是实践中限制长文档的主要因素——默认缩放下约 130 张 A4——且刻意不从前两者推导前两者之积会允许约 160 GB。需要注意单页预算对zoomin不单调——因为重试阶梯不单调DeepDoc 在乘法前先判断zoomin 9所以zoomin2与zoomin6都会升级到 18 倍而zoomin3停在 9 倍。调低zoomin反而可能让单页预算变大。因此当这些限制返回 400 时如果存在合适的zoomin错误信息会直接给出否则会建议拆分文档——请遵循报错信息而不是想当然地认为降低缩放就会有用。在 deepdoc-lib 0.2.2 中对任何能正常渲染的文档该重渲染实际上不可达DeepDoc 每页都会向 box 列表追加内容包括对无产出页追加空列表因此它所守护的len(boxes) 0条件仅在没有任何页面可渲染时成立。文档因此按你请求的缩放进行预算另有独立上限约束重渲染成本防止未来版本使重渲染再次可达。对于解析 worker 容量足够的部署两个整档上限都可以通过环境变量调高单位均为像素XINFERENCE_MAX_PDF_PARSE_TOTAL_PIXELSXINFERENCE_MAX_PDF_PARSE_RETRY_TOTAL_PIXELS渲染出的页面每像素约占用 4 字节因此默认值分别对应约 4 GB 与 24 GB 的页面图像。十、实战建议与注意事项小结接口选型纯文生图用/v1/images/generations需要基于现有图片变体或编辑用/v1/images/variations与/v1/images/edits文档理解用/v1/images/ocr支持pages/dpi的分页 OCR 与taskparse的整档解析。引擎选择追求默认兼容与完整功能GGUF、Lightning LoRA、LoRA、ControlNet留在diffusersLinux NVIDIA GPU 且需提速时按模型支持情况切换SGLang或vLLM并在 vLLM 上用max_num_seqs开启请求级批处理。显存优化三板斧--cpu_offload True、--quantize_text_encoder或--text_encoder_3 None去掉 T5-XXL、--transformer_nf4 Truev0.16.1 起大模型默认已开启量化小显存可直接尝试。GGUF 低显存方案--gguf_quantization Q2_K --cpu_offload True可将 FLUX.1-dev 压到约 5 GiB 显存。OCR 注意事项PDF 分页 OCR 的dpi上限 600、单页 80 MP 上限、单请求 200 页上限整档解析的zoomin上限 6、三层像素预算200 MP/页、1 GP/档、6 GP 重渲染档超限时按错误信息给出的zoomin或拆分文档操作。以上所有能力均通过同一套 RESTful API 与客户端暴露无论底层是 diffusers、SGLang、vLLM 还是 MLX 引擎调用方式保持一致——这正是 Xinference 图像 API 的核心价值所在。更多细节可查阅 xinference/api/routers/images.py、xinference/api/restful_api.py 与 xinference/model/image/ 下的引擎实现。【免费下载链接】inferenceSwap GPT for any LLM by changing a single line of code. Xinference lets you run open-source, speech, and multimodal models on cloud, on-prem, or your laptop — all through one unified, production-ready inference API.项目地址: https://gitcode.com/GitHub_Trending/in/inference创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表