在服务器上跑起来一个LLM并向外提供服务
在服务器上跑起来一个LLM并对外提供服务需要几步?
第一步:在服务器上跑起来一个LLM。
我们假设是x86+CUDA的硬件基础设施,有一个或多个节点可供使用。
照着这里走一遍,安装prebuilt wheels,无需选用docker或build from source的方式。好了,现在我们已经安装好vLLM了!
第二步:在Huggingface上选择相应的模型。
小型实验中推荐30B(运行时激活3B)的Qwen3(FP8量化版本);生产环境可以使用225B(运行时激活22B)的Qwen3(FP8量化版本)。Tips: 只有Ada(RTX40)和Hopper(H)架构及以后的NVIDIA GPU才支持FP8量化。
选择好了不着急下载,运行下面这行命令让vLLM帮我们把dirty work都干了就好!
vllm serve <model_org/model_name> --port 14690
# 例如,要运行上面的30B(4A)Qwen3,只需
# vllm serve Qwen/Qwen3-30B-A3B-Thinking-2507-FP8 --port 14690如果一切正常,那么在本地计算机的14690端口应当会正常开始运行服务。
第三步:搭一个Open WebUI前端。
跑起来一个Open WebUI,只需要下面这行命令,使用docker
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main有几个参数是可以更改的
-v open-webui:/app/backend/data 可以将open-webui改为你想要的在主机上存储该容器数据的目录
-p 3000:8080 可以将3000改为你想要的在主机上的端口,不能与vllm提供服务的端口一样在浏览器中输入http://<服务器IP>:<Open WebUI端口>进行初始化。初始化完成后,在管理页面将OpenAI API配置为vLLM暴露的地址,一般是http://127.0.0.1:<vLLM端口>。
第四步:使用Cloudflare Tunnel将服务(只需暴露Open WebUI端口,切勿暴露vLLM端口,否则容易被扫描和恶意利用)暴露到公共互联网上。
参考这个教程即可。
最后一步:访问和使用
假设在第四步中你使用的域名为aka.shahe.org,那么通过https://aka.shahe.org就可以访问Open WebUI和愉快开始使用~