这是一个开箱即用的实时视觉分析演示,通过摄像头实时捕获画面并使用 SmolVLM 或 SmolVLM2 视觉语言模型进行智能分析。项目采用纯前端实现,配合 llama.cpp 后端,无需复杂的深度学习框架配置。
# 克隆仓库
git clone https://github.com/ggml-org/llama.cpp.git
cd llama.cpp
# 编译(根据你的平台选择)
make
# 或使用 CMake
cmake -B build
cmake --build build --config Release
选择方式 A:SmolVLM(第一代)
llama-server -hf ggml-org/SmolVLM-500M-Instruct-GGUF -ngl 99
选择方式 B:SmolVLM2(第二代,推荐)
llama-server -hf ggml-org/SmolVLM2-500M-Instruct-GGUF -ngl 99
💡 参数说明:
-hf- 从 Hugging Face 自动下载模型-ngl 99- 启用 GPU 加速(适用于 NVIDIA/AMD/Intel GPU)- 首次运行会自动下载模型文件(约 500MB)
# 克隆本项目
git clone https://github.com/quyangminddock/SmolVLMDemo.git
cd SmolVLMDemo
# 在浏览器中打开 index.html
# macOS
open index.html
# Linux
xdg-open index.html
# Windows
start index.html
http://localhost:8080(默认)在配置面板中修改"系统指令"可以改变模型的输出格式:
示例 1(默认):Describe what you see briefly. 示例 2(中文):用中文简短描述你看到的内容 示例 3(JSON):Describe the scene in JSON format with keys: objects, actions, colors 示例 4(计数):Count how many people and objects you see
开启 AR 模式后,界面会叠加 TensorFlow.js Coco-SSD 的实时目标检测结果,在画面中用高光边框标注识别到的物体。
📖 更多关于 SmolVLM 的信息,请访问 Hugging Face Model Card
确保:
检查:
curl http://localhost:8080/health 测试服务优化建议:
-ngl 99 参数)llama.cpp 支持多种多模态模型:
查看完整列表:llama.cpp multimodal docs
修改启动命令中的模型名称即可。
欢迎提交 Issue 和 Pull Request!
如果这个项目对你有帮助,请考虑给个 ⭐ Star!
本项目采用 MIT 许可证 - 详见 LICENSE 文件