章节 01
基于Clean Architecture的多模态LLM推理服务:Qwen3.5-2B的FastAPI实现(导读)
本项目是基于Clean Architecture设计原则的多模态大语言模型推理服务,通过FastAPI框架提供REST API接口,利用llama.cpp在CPU上运行量化的Qwen3.5-2B视觉语言模型。核心特色包括严格的架构分层、完整的工程实践(如请求持久化、图像存储、速率限制)及多模态推理能力,为生产环境部署多模态LLM提供高质量参考实现。
正文
采用Clean Architecture架构,通过FastAPI和llama.cpp在CPU上提供多模态Qwen3.5-2B视觉语言模型推理服务,支持SQLite持久化和完整的REST API。
章节 01
本项目是基于Clean Architecture设计原则的多模态大语言模型推理服务,通过FastAPI框架提供REST API接口,利用llama.cpp在CPU上运行量化的Qwen3.5-2B视觉语言模型。核心特色包括严格的架构分层、完整的工程实践(如请求持久化、图像存储、速率限制)及多模态推理能力,为生产环境部署多模态LLM提供高质量参考实现。
章节 02
该项目旨在构建生产就绪的多模态LLM推理服务,核心遵循Clean Architecture设计原则,确保架构纯净性与可维护性。
章节 03
提供四大端点:POST /inferences(创建推理,支持multipart上传)、GET /inferences(分页查询历史)、GET /inferences/{id}(详情)、GET /inferences/{id}/image(原始图像)。
推理记录(提示、响应、参数等)存SQLite,上传图像存文件系统并通过UUID关联,支持审计追踪与结果回溯。
内置速率限制(默认30次/分钟)、图像大小限制(最大10MB,最长边768像素)、MIME类型白名单(PNG/JPEG/WebP)。
章节 04
所有设置可通过环境变量/.env覆盖,包括模型选择、上下文窗口、线程数、GPU层数等,适配开发/生产环境。
默认CPU运行,提供CUDA/Vulkan后端启用指南(重新安装llama-cpp-python并设置CMAKE_ARGS),通过MODEL_N_GPU_LAYERS控制GPU加载层数加速推理。
Qwen3.5-2B采用Gated DeltaNet与稀疏Gated Attention混合架构,KV缓存增长接近常数,增加MODEL_N_CTX无二次内存膨胀问题。
章节 05
该项目展示了将LLM封装为生产就绪服务的全流程:从架构设计到部署配置,从错误处理到性能优化,每个细节均经过深思熟虑。对于希望在自有基础设施部署多模态LLM的团队,本项目提供了高质量参考实现,可直接复用或作为定制开发的基础。