ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

如何把Fara1.5-4B-OptiQ-4bit接入你的应用:OpenAI兼容API完整使用指南

如何把Fara1.5-4B-OptiQ-4bit接入你的应用:OpenAI兼容API完整使用指南
  • 大模型
  • 本地部署
  • 多模态
  • AI Agent
  • 人工智能

【免费下载链接】Fara1.5-4B-OptiQ-4bit

项目地址:https://ai.gitcode.com/hf_mirrors/mlx-community/Fara1.5-4B-OptiQ-4bit
点击查看免费下载

Fara1.5-4B-OptiQ-4bit 是 Fara1.5-4B 的 MLX 混合 4/8-bit 量化版视觉语言模型,可在 Apple Silicon 上本地运行,并暴露OpenAI 兼容 API(http://localhost:8000/v1),几行代码即可让应用具备"看懂截图 + 操控网页"的 computer-use 能力,无需任何云端服务。

1️⃣ 动手前先了解:这个模型能干什么

Fara1.5-4B-OptiQ-4bit 基于 Qwen3.5 架构(Qwen3_5ForConditionalGeneration,见 config.json),定位为computer-use / web-agent 视觉模型:既能聊天,也能接收屏幕截图、理解界面并给出操作建议,适合做 GUI 自动化、网页代理、截图问答等场景。

几个对开发者重要的参数:

特性数值说明
量化方式混合 4/8-bit75 个模块 8-bit + 173 个模块 4-bit(optiq_metadata.json)
实际位宽5.31 bit/weight显存/内存占用大幅降低
权重体积约 3.9 GB磁盘总大小 3.53 GB(model.safetensors.index.json)
上下文长度262,144 tokens见 tokenizer_config.json
视觉塔bf16 独立存放optiq/optiq_vision.safetensors

仓库内关键文件速查:

  • model.safetensors:语言模型权重(混合精度量化后)
  • optiq/optiq_vision.safetensors:视觉塔权重,走视觉路径时必需
  • optiq_metadata.json:逐层 4/8-bit 分配记录
  • kv_config.json:KV Cache 量化配置(8 层注意力层的位宽分配)
  • chat_template.jinja:聊天模板,内置工具调用(tools)格式
  • generation_config.json:生成参数(eos 等)

💡 该模型支持两类加载方式:mlx-optiq(文本 + 视觉 + MTP 全功能)和 mlx-lm(仅文本)。想跑"截图输入"路径,请优先使用带视觉支持的加载方式。

2️⃣ 30 秒启动 OpenAI 兼容服务

步骤 1:安装服务工具

pip install -U optiq

步骤 2:一键启动

optiq serve --model mlx-community/Fara1.5-4B-OptiQ-4bit

步骤 3:验证端点

curl http://localhost:8000/v1/models

如果返回了模型列表,说明服务已就绪,API 基址为http://localhost:8000/v1。🎉

如果希望使用本地仓库部署(离线环境或自定义目录),可先克隆仓库,再把--model指向本地路径:

git clone https://gitcode.com/hf_mirrors/mlx-community/Fara1.5-4B-OptiQ-4bit optiq serve --model Fara1.5-4B-OptiQ-4bit # 指向克隆下来的本地目录

3️⃣ 第一条文本对话:发送 Chat Completions 请求

请求结构与 OpenAI 官方接口完全一致,/v1/chat/completions直接可用:

curl http://localhost:8000/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "mlx-community/Fara1.5-4B-OptiQ-4bit", "messages": [ {"role": "system", "content": "你是一个简洁的助手"}, {"role": "user", "content": "用一句话介绍你自己"} ], "temperature": 0.7, "max_tokens": 512 }'

响应同样是标准的choices[0].message.content结构,方便你直接解析。

4️⃣ 接入你自己的代码:OpenAI SDK 只需改 base_url

如果你已有基于 OpenAI SDK 的代码,只需替换base_url,其余逻辑几乎不用动:

from openai import OpenAI client = OpenAI( base_url="http://localhost:8000/v1", api_key="EMPTY" # 本地服务不校验鉴权时,填占位字符串即可 ) resp = client.chat.completions.create( model="mlx-community/Fara1.5-4B-OptiQ-4bit", messages=[{"role": "user", "content": "帮我总结这个网页的结构"}], ) print(resp.choices[0].message.content)

说明:api_key是 SDK 的必填参数,本地服务如不校验鉴权,传任意占位字符串即可。

5️⃣ 核心能力:把截图发给模型,走 computer-use 视觉路径

Fara1.5 的招牌能力是"看图操作界面"。在消息的content数组中加入image_url部分即可触发视觉路径:

{ "model": "mlx-community/Fara1.5-4B-OptiQ-4bit", "messages": [ { "role": "user", "content": [ {"type": "text", "text": "看这张桌面截图,告诉我下一步该点击哪里?"}, {"type": "image_url", "image_url": {"url": "data:image/png;base64,<截图的Base64>"}} ] } ] }

几个实用要点:

  • image_url.url支持网络图片地址或data:image/...;base64,...形式的 Base64 数据,本地截图建议用 Base64 内嵌,省去额外服务
  • 聊天模板会自动把图片渲染为视觉 token;注意system 消息中不能包含图片(chat_template.jinja)
  • 图像分辨率建议在min_pixels(约 3.1K)到max_pixels(约 12.8M)之间,见 tokenizer_config.json

6️⃣ 进阶用法:流式输出与常用参数

参数作用建议值
stream开启 SSE 流式输出,逐 token 返回前端展示场景设true
temperature采样温度问答 0.3~0.7;写作用 0.7+
max_tokens最大生成长度按业务截断,避免跑满上下文
top_p核采样与 temperature 二选一调节
stop停止词可填 `["
  • 大模型
  • 本地部署
  • 多模态
  • AI Agent
  • 人工智能

【免费下载链接】Fara1.5-4B-OptiQ-4bit

项目地址:https://ai.gitcode.com/hf_mirrors/mlx-community/Fara1.5-4B-OptiQ-4bit
点击查看免费下载
上一篇:Rofi 1.7.7 版本解析:黑屏渲染、窗口丢失与配置兼容性修复背后的实现细节
下一篇:基于 Ragas 对比 Vertex AI Gemini 模型:RAG 问答任务的评估与选型实战

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进