在人工智能技术飞速发展的今天,大型语言模型(LLM)已成为技术创新的核心驱动力。
本文将手把手教你使用高性能推理引擎vLLM部署Qwen大模型,并提供Python和Java两种语言的实现代码,帮助不同技术背景的开发者快速上手。
我们使用的云主机配置如下(可根据预算调整):
| 配置项 | 参数 | 最低要求 |
|---|---|---|
| GPU类型 | RTX 4090 [24G] | RTX 3090 [24G] |
| GPU数量 | 1 | 1 |
| CPU核数 | 8核 | 4核 |
| 内存 | 15GB | 8GB |
| 系统盘 | 200GB | 100GB |
| 带宽 | 32Mbps | 10Mbps |
conda create -n vllm python=3.12.7 conda activate vllm
pip install –upgrade pip pip install vllm==0.7.3 # 约20分钟
验证安装:
pip show vllm
mkdir -p /data/models/Qwen/Qwen3 && cd /data/models/Qwen/Qwen3 modelscope download –model Qwen/Qwen3-0.6B –local_dir /data/models/Qwen/Qwen3
CUDA_VISIBLE_DEVICES=0 nohup python3 -m vllm.entrypoints.openai.api_server –model /data/models/Qwen/Qwen3 –served-model-name=Qwen3-0.6B –dtype=bfloat16 –trust-remote-code –device=cuda –max-model-len=1024 –tensor-parallel-size=1 –gpu-memory-utilization=0.85 –enable-reasoning –reasoning-parser deepseek_r1 –port 8801 –api-key token- &
curl 调用:
curl http://js2.blockelite.cn:8801/v1/models -H “Authorization: Bearer token-”
Python调用:
import requests url = “http://js2.blockelite.cn:13789/v1/models"; headers = {”Authorization“: ”Bearer token-“} response = requests.get(url, headers=headers) print(response.json())
Java调用:
@Bean
public RestTemplate restTemplate() {
RestTemplate template = new RestTemplate(); template.getInterceptors().add((request, body, execution) -> { request.getHeaders().add("Authorization", "Bearer token-"); return execution.execute(request, body); }); return template;
} @GetMapping(path = ”/qwen/chat“, produces = ”application/json;charset=UTF-8“)
public Map<String, Object> qwenChat() {
returnthis.restTemplate.postForObject("http://js2.blockelite.cn:13789/v1/models", Map.class);
}
PostMan 调用:
Python调用:
from openai import OpenAI
client = OpenAI( base_url=”http://js2.blockelite.cn:8801/v1";, api_key=“token-” )
response = client.chat.completions.create( model=“Qwen3-0.6B”, messages=[ { “role”: “system”, “content”: “你出身在一个中医世家,你也是一位德高望重的老中医”}, { “role”: “user”, “content”: “我最近睡眠不好,你能给我一些建议吗?”} ] ) print(response.choices[0].message.content)
Java调用:
@Bean
public RestTemplate restTemplate() {
RestTemplate template = new RestTemplate(); template.getInterceptors().add((request, body, execution) -> { request.getHeaders().add("Authorization", "Bearer token-"); return execution.execute(request, body); }); return template;
} @PostMapping(path = “/qwen/chat”, produces = “application/json;charset=UTF-8”)
public Map<String, Object> qwenChat(@RequestBody UserMessageDTO dto) {
ModelChatEntity modelEntity = new ModelChatEntity().setModel("Qwen3-0.6B"); modelEntity.getMessages().add(new ModelChatEntity.Message().setRole("system").setContent("你出身在一个中医世家,你也是一位德高望重的老中医")); modelEntity.getMessages().add(new ModelChatEntity.Message().setRole("user").setContent("我最近睡眠不好,你能给我一些建议吗?"));
returnthis.restTemplate.postForObject("http://js2.blockelite.cn:13789/v1/chat/completions", modelEntity, Map.class);
}
- 环境准备:基于某云的云主机配置(RTX 4090),测试基本上够用了,而且比较实惠,可以按小时、天、月租用硬件;
- 安装 vLLM:在安装vLLM时有个坑,就是基于默认的配置,在启动大模型时报一个错,一直启动失败,后来版本降到0.7.3时才解决;
- 下载大模型:根据实际需要下载不同公司不同的尺寸的大模型,在些为了快速测试,我选用了阿里的千问3大模型 0.6b,不过,大概也要30分钟左右,要看具体网络环境了;
- 调用大模型:主要使用了Java写了调用示例,为了测试简单选用了Spring MVC的RestTemplate,当然,Spring也顺应形势,快速添加了Spring AI子项目,生产环境建议采用。
感谢你们的阅读和喜欢,作为一位在一线互联网行业奋斗多年的老兵,我深知在这个瞬息万变的技术领域中,持续学习和进步的重要性。
为了帮助更多热爱技术、渴望成长的朋友,我特别整理了一份涵盖大模型领域的宝贵资料集。
这些资料不仅是我多年积累的心血结晶,也是我在行业一线实战经验的总结。
这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。如果你愿意花时间沉下心来学习,相信它们一定能为你提供实质性的帮助。
yyds!全网独一份的AI大模型学习教程资源!!为了成为更好的 AI大模型 开发者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/224734.html