5分钟学会调用Qwen3-1.7B,小白也能看懂
你是不是也遇到过这样的情况:看到一个很酷的大模型,想马上试试它能干啥,结果点开文档——满屏的“base_url”“api_key”“streaming”“extra_body”,瞬间头大?别急,今天这篇就是为你写的。不讲原理、不堆术语、不绕弯子,从打开浏览器到让Qwen3-1.7B开口说话,全程不超过5分钟,连Python刚装好的新手都能跟着做出来。
我们用的是CSDN星图镜像广场上预置好的Qwen3-1.7B镜像——它已经帮你把模型、服务、Jupyter环境全配好了,你只需要点几下、敲几行代码,就能和这个新一代千问模型对话。下面所有步骤,我都按真实操作顺序写,连截图里那个“8000端口”在哪改,都给你标清楚。
1. 启动镜像,打开Jupyter界面
这一步真的就只是“点一点”。
在CSDN星图镜像广场找到Qwen3-1.7B镜像,点击“启动”按钮。系统会自动分配GPU资源并初始化环境,通常30秒内就能完成。
启动成功后,你会看到一个绿色状态栏,上面写着“运行中”,旁边有个蓝色按钮:“打开Jupyter”。点击它,就会在新标签页中打开Jupyter Lab界面。
注意:这个页面地址就是后续代码里要用的
base_url。比如你看到浏览器地址栏显示的是https://gpu-pod69523bb78b8ef44ff14daa57-8000.web.gpu.csdn.net/lab
那么你的base_url就是https://gpu-pod69523bb78b8ef44ff14daa57-8000.web.gpu.csdn.net/v1
——只需把/lab换成/v1,端口号保持8000不变。
这个细节很多人卡住,不是代码写错了,而是地址没对上。我们后面还会再提醒一次。
2. 新建Notebook,粘贴第一段代码
在Jupyter Lab左侧文件浏览器里,点击右上角“+”号 → 选择“Python File”,然后把它重命名为qwen3_demo.ipynb(后缀.ipynb很重要)。
双击打开这个新文件,在第一个代码单元格里,直接粘贴下面这段代码:
from langchain_openai import ChatOpenAI import os chat_model = ChatOpenAI( model="Qwen3-1.7B", temperature=0.5, base_url="https://gpu-pod69523bb78b8ef44ff14daa57-8000.web.gpu.csdn.net/v1", api_key="EMPTY", extra_body={ "enable_thinking": True, "return_reasoning": True, }, streaming=True, ) chat_model.invoke("你是谁?")再次确认:请把你自己的实际地址替换掉base_url这一行里的网址(只换域名+端口部分,/v1保留)。别复制我这里的示例地址,它只是占位符。
现在,把鼠标放在这个代码块里,按Ctrl+Enter(Windows/Linux)或Cmd+Enter(Mac)运行。你会看到光标变成转圈,几秒钟后,输出区域出现一段文字,类似这样:
我是通义千问Qwen3,阿里巴巴全新推出的大语言模型,具备更强的语言理解与生成能力,支持长上下文、多语言、复杂推理等特性。成功了!你已经完成了Qwen3-1.7B的首次调用。
3. 理解每一行代码在干什么(人话版)
别急着关页面,我们花1分钟搞懂这7行代码到底做了什么。不是为了背,而是为了下次你想改提示词、换参数时,心里有底。
3.1 导入工具:from langchain_openai import ChatOpenAI
这行代码就像打开一个“通用遥控器”。LangChain是一个流行的AI应用开发框架,而ChatOpenAI是它提供的一个标准接口——它本来是为调用OpenAI API设计的,但因为Qwen3-1.7B服务端完全兼容OpenAI的API格式,所以我们可以“借壳”使用,不用学新语法。
小白收获:你不需要专门学Qwen的SDK,用现成、最常用的工具就行。
3.2 创建模型实例:chat_model = ChatOpenAI(...)
这一长串括号里的内容,就是在告诉遥控器:“我要连哪台电视?音量调多大?要不要开字幕?”对应到模型调用里:
model="Qwen3-1.7B":指明你要用的具体模型名称(服务端靠这个识别)temperature=0.5:控制“发挥空间”。0.0=非常保守,只说确定答案;1.0=天马行空,爱怎么答怎么答;0.5是平衡点,适合日常提问base_url=...:就是你刚才复制的那个地址,相当于“电视的IP地址”api_key="EMPTY":Qwen3本地部署默认不校验密钥,填"EMPTY"就行(不是留空,是字符串"EMPTY")extra_body={...}:这是Qwen3特有的两个开关:"enable_thinking": True→ 开启“思考过程”,模型会先在内部一步步推演,再给出最终答案"return_reasoning": True→ 把思考过程也一并返回给你看(后面我们会演示效果)
streaming=True:开启流式输出,文字像打字一样逐字出现,体验更自然
3.3 发送问题:chat_model.invoke("你是谁?")
invoke()就是按遥控器“确认键”。括号里是你输入的问题,字符串格式,支持中文。
小白收获:以后你想问“帮我写一封辞职信”,就改成
invoke("帮我写一封辞职信,语气礼貌简洁"),就这么简单。
4. 让它“边想边说”:看Qwen3怎么推理
前面我们打开了思考开关,但invoke()默认只返回最终答案。想看到它的“草稿纸”上写了啥?换一个方法:
response = chat_model.stream("北京明天天气怎么样?") for chunk in response: print(chunk.content, end="", flush=True)运行这段代码,你会看到输出不是一次性蹦出来,而是像聊天一样,一个字一个字往外“吐”:
我需要查询实时天气信息。不过作为语言模型,我无法直接访问互联网或实时数据库……这就是stream()+extra_body["return_reasoning"]=True的效果:它把内部的推理链(reasoning chain)也当作内容流式返回了。
实际用途:当你发现模型答得不对,就可以回溯它的思考路径,判断是哪一步出错了——是误解了问题?还是知识截止了?还是逻辑跳步了?这对调试和优化提示词特别有用。
5. 更实用的3个例子(直接复制就能跑)
光问“你是谁”不过瘾?来三个真正能帮上忙的场景,每段代码都经过实测,粘贴即用。
5.1 场景一:把长段话缩成一句话摘要
text = """人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。""" result = chat_model.invoke(f"请用一句话概括以下内容,不超过30字:{text}") print(result.content)输出示例:
人工智能是让机器模拟人类智能行为的计算机科学分支。
5.2 场景二:给产品起5个朗朗上口的名字(带解释)
prompt = """你是一家科技公司的品牌顾问。请为一款面向年轻人的AI记账App起5个中文名字,每个名字附10字以内创意说明。格式:1. 名字:XXX;说明:YYY""" result = chat_model.invoke(prompt) print(result.content)输出示例:
- 名字:钱迹;说明:记录每一笔钱的足迹
- 名字:小账本;说明:亲切易记,回归本质
……
5.3 场景三:检查一段文案有没有错别字和语病
draft = "这个产品的功能很强大,他可以自动识别图片里的文字,并且还能翻译成英文,速度很快!" result = chat_model.invoke(f"请逐句检查以下文案的错别字、语法错误和表达啰嗦之处,并给出修改建议:{draft}") print(result.content)输出示例:
“他可以自动识别……” → “它”更规范(指代产品用“它”)
“并且还能……” → “还能”与“并且”语义重复,建议删去“并且”
建议修改为:“这个产品功能强大,可自动识别图片中的文字并翻译成英文,处理速度快。”
这些都不是“玩具案例”,而是你明天就能用在工作里的真实任务。
6. 常见问题快查(5秒解决)
| 问题现象 | 最可能原因 | 一句话解决 |
|---|---|---|
运行报错ConnectionError或Timeout | base_url地址没改对,或端口不是8000 | 回到Jupyter地址栏,把/lab改成/v1,确保端口是:8000 |
输出只有None或空内容 | invoke()返回的是AIMessage对象,不是纯字符串 | 在打印前加.content,如print(result.content) |
| 提示词很长但模型只答了半句 | 上下文超长被截断 | Qwen3-1.7B支持32K上下文,但Jupyter默认单元格有长度限制;可拆成多轮invoke()调用 |
| 想换更“严谨”或更“活泼”的语气 | temperature参数没调 | 把0.5改成0.2(严谨)或0.8(活泼)再试 |
这些问题,我在第一次用的时候全踩过坑。现在列出来,就是希望你少走5分钟弯路。
7. 下一步你可以做什么?
你现在已掌握Qwen3-1.7B最核心的调用能力。接下来,完全可以按兴趣自由探索:
- 想让它持续对话?把
invoke()换成chat_model.invoke([HumanMessage(content="你好"), AIMessage(content="你好!")]),构建消息历史 - 想批量处理100条文本?用Python循环 +
invoke(),比手动复制粘贴快10倍 - 想做成网页让同事一起用?把这段逻辑封装成FastAPI接口,50行代码搞定
- 想换更大更强的版本?CSDN星图上还有
Qwen3-8B、Qwen3-72B镜像,调用方式完全一样,只改model=参数即可
技术从来不是门槛,而是杠杆。你已经拿到了撬动Qwen3的第一根杆子。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。