本节导读:环境就绪后,本节带你完成Llamafile的"第一次对话"——从命令行交互模式到浏览器图形界面,再到OpenAI兼容API调用,三种使用方式一次讲透。
Llamafile有两种典型运行形态:
main程序),适合快速验证;--server 参数后,在本地启动HTTP服务(默认端口8080),同时提供Web聊天界面与OpenAI兼容API,适合日常使用和程序集成。llamafile ├── 直接运行 ──→ 终端对话模式(CLI REPL) └── --server ──→ HTTP服务 ├── 浏览器打开 http://127.0.0.1:8080 → Web聊天界面 └── POST /v1/chat/completions → OpenAI兼容API
# Linux / macOS chmod +x qwen2.5-7b-instruct-q4_k_m.llamafile # 首次赋权 ./qwen2.5-7b-instruct-q4_k_m.llamafile # 进入终端对话 # Windows .\qwen2.5-7b-instruct-q4_k_m.llamafile
启动后会看到模型加载进度。加载完成后出现 > 提示符,直接输入问题回车即可对话:
> 用一句话介绍你自己 我是一个开源的大语言模型,运行在你自己的电脑上,数据不出本机。
常用交互指令:输入 /exit 或按 Ctrl+C 退出;生成过程中按 Ctrl+C 可中断当前输出。
./qwen2.5-7b-instruct-q4_k_m.llamafile --server
看到 please browse http://127.0.0.1:8080 字样即启动成功。浏览器打开该地址,即可使用内置Web聊天界面——支持多轮对话、对话历史管理、生成参数调节面板。
Llamafile服务模式暴露OpenAI兼容端点,任何为OpenAI API编写的代码只需替换base_url即可:
from openai import OpenAI client = OpenAI(base_url="http://127.0.0.1:8080/v1", api_key="sk-no-key-needed") resp = client.chat.completions.create( model="local", messages=[ {"role": "system", "content": "你是一个简洁的中文技术助手。"}, {"role": "user", "content": "什么是内存映射?"} ], temperature=0.7, ) print(resp.choices[0].message.content)
等价的curl调用:
curl http://127.0.0.1:8080/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "messages": [{"role": "user", "content": "你好"}], "temperature": 0.7 }'
Windows下超过4GB的模型通常拆分为"引擎+权重"两部分,用 -m 指定权重路径:
./llamafile.exe -m qwen2.5-14b-q4_k_m.gguf --server
| 操作 | 方式 | 说明 |
|---|---|---|
| 启动对话模式 | ./model.llamafile |
终端REPL交互 |
| 启动服务模式 | ./model.llamafile --server |
Web界面+API |
| 修改监听端口 | --port 9090 |
避免端口冲突 |
| 允许局域网访问 | --host 0.0.0.0 |
手机等设备访问(注意安全) |
| 指定外部权重 | -m model.gguf |
多文件llamafile |
| 退出对话 | /exit 或 Ctrl+C |
— |
Q1:启动服务后浏览器打不开页面?
依次检查:端口是否被占用(换 --port);防火墙是否拦截;确认终端日志出现 please browse 字样而非报错信息。
Q2:API调用返回连接拒绝?
确认客户端访问的地址端口与服务监听一致;若从其他机器访问,服务需以 --host 0.0.0.0 启动。api_key 任意非空字符串即可(本地服务默认不校验)。
Q3:模型加载很慢正常吗?
首次加载需把权重读入内存,机械硬盘上40GB级模型可能需要数分钟。SSD与更大内存(启用内存映射缓存)可显著改善。
--host 0.0.0.0 会把模型服务暴露给局域网,公共网络环境慎用,或配合防火墙限制来源IP;Llamafile把"用上大模型"的门槛压缩到了一次双击:对话模式适合快速验证,服务模式(Web界面+OpenAI兼容API)适合日常使用与程序集成。下一节将深入参数配置,解决"跑得慢、占内存、答得偏"三大问题。
关键词:Llamafile, 首次运行, 服务模式, Web界面, OpenAI兼容API, 本地大模型
难度:入门
预计阅读:20分钟