当前位置: 首页 > article >正文

Windows上的本地化部署通义千问qwen,含API调用流式和非流式调用demo

Ollama是一个强大的工具,可以帮助你在本地轻松部署和管理大语言模型,如qwen。以下是在Windows系统上使用Ollama安装和部署qwen的详细步骤。

一、安装Ollama

(一)下载Ollama(或者用我的网盘链接下载)

通过网盘分享的文件:OllamaSetup0.5.7.exe

链接: https://pan.baidu.com/s/1fE1dad4UBCQsUDZ7c_abVw 提取码: 15gg

  1. 打开浏览器,访问 Ollama官网。

  2. 在下载页面中,选择“Windows”选项卡,点击“Download for Windows ”按钮,开始下载Ollama的安装包。

(二)安装Ollama

  1. 下载完成后,双击下载的.exe安装包文件,启动安装程序。

  1. 按照安装向导的提示完成安装过程。Ollama默认安装路径为C:\Users\<username>\AppData\Local\Programs\Ollama

  2. 安装完成后,

提升完成安装后,有了默认的安装命令,

但我们要安装qwen,其实方法通用,只有ollama上有的都可以安装。

(三)验证Ollama安装

  1. 打开命令提示符或PowerShell,输入以下命令:ollama -h

  2. 如果看到Ollama的版本信息和帮助文档,说明安装成功。

常用命令

ollama serve       启动ollama
ollama create      从模型文件创建模型
ollama show        显示模型信息
ollama run         运行模型
ollama pull        从注册表中拉取模型
ollama push        将模型推送到注册表
ollama list        列出模型
ollama cp          复制模型
ollama rm          删除模型
ollama help        获取有关任何命令的帮助信息

二、配置Ollama(可选)

更改模型存储路径

  1. 如果需要更改Ollama存储下载模型的位置,可以在用户账户中设置环境变量OLLAMA_MODELS

  2. 启动设置(Windows 11)或控制面板(Windows 10),搜索“环境变量”。

  3. 点击“编辑账户环境变量”,编辑或创建一个新的用户账户或者系统变量OLLAMA_MODELS,设置为你希望存储模型的路径。

三、安装大模型

执行命令

ollama run qwen2.5:1.5b

可以根据自己的需求来下载不同参数的模型

发送消息

四、API调用

1、编写 Python 代码(非流式)

以下是一个简单的 Python 脚本示例,用于调用 Ollama 运行的 qwen2.5:1.5b 模型:

import requests
import json

# Ollama API 的地址
url = "http://localhost:11434/api/generate"

# 定义请求的数据
data = {
    "model": "qwen2.5:1.5b",  # 模型名称
    "prompt": "请编写一个关于少年努力的对联",  # 输入的提示信息
    "stream": False  # 是否使用流式响应
}

# 将数据转换为 JSON 格式
data_json = json.dumps(data)

# 设置请求头
headers = {
    "Content-Type": "application/json"
}

# 发送 POST 请求
try:
    response = requests.post(url, headers=headers, data=data_json)
    response.raise_for_status()  # 检查响应状态码
    result = response.json()
    print(result["response"])  # 打印模型的回复
except requests.exceptions.RequestException as e:
    print(f"请求出错: {e}")
except (KeyError, json.JSONDecodeError):
    print("解析响应数据出错")

 

D:\AiPro\wechat\pythonProject\.venv\Scripts\python.exe D:\AiPro\wechat\pythonProject\zimeiti\t2.py 
好的,以下是一副关于少年努力的对联:

上联:
日月光华耀九州,少年志气冲霄汉。

下联:
风霜雨雪砺筋骨,青春汗水润乾坤。

横批:
壮志凌云

这个对联寓意着年轻人要有远大的理想和雄心壮志,即使是在逆境中也要努力奋斗。"日月光华耀九州"代表了国家的繁荣和民族的梦想;"少年志气冲霄汉"体现了年轻人的理想与抱负;"风霜雨雪砺筋骨"强调了在艰难困苦中锤炼意志的重要性;最后"青春汗水润乾坤"表达了通过不懈努力实现梦想的过程。

Process finished with exit code 0

2、编写 Python 代码( 流式 输出

如果你希望使用流式响应,可以将 stream 参数设置为 True,并对响应进行逐行处理:

import requests
import json

url = "http://localhost:11434/api/generate"
data = {
    "model": "qwen2.5:1.5b",
    "prompt": "请编写一个关于少年努力的对联",
    "stream": True
}
data_json = json.dumps(data)
headers = {
    "Content-Type": "application/json"
}

try:
    response = requests.post(url, headers=headers, data=data_json, stream=True)
    response.raise_for_status()
    for line in response.iter_lines():
        if line:
            result = json.loads(line)
            if 'response' in result:
                print(result["response"], end='', flush=True)
except requests.exceptions.RequestException as e:
    print(f"请求出错: {e}")
except (KeyError, json.JSONDecodeError):
    print("解析响应数据出错")

五、代码解释

  • 请求地址:http://localhost:11434/api/generate 是 Ollama 默认的生成 API 地址,你可以根据实际情况进行调整。

  • 请求数据:

    • model:指定要使用的模型名称,这里是 qwen2.5:1.5b

    • prompt:输入给模型的提示信息,即你想要询问的问题。

    • stream:设置是否使用流式响应。如果设置为 True,模型会逐步返回结果;如果设置为 False,则会等待模型生成完整的结果后一次性返回。

  • 请求头:设置 Content-Typeapplication/json,表示请求数据是 JSON 格式。

  • 发送请求:使用 requests.post 方法发送 POST 请求,并将响应结果解析为 JSON 格式。

  • 处理响应:打印模型的回复,如果请求或解析过程中出现错误,会捕获相应的异常并输出错误信息。


http://www.kler.cn/a/529668.html

相关文章:

  • AI视频编码器(3.2) 《Swin Transformer V2: Scaling Up Capacity and Resolution》
  • Python Web框架比较:Flask与FastAPI的特性和应用场景
  • nacos 配置管理、 配置热更新、 动态路由
  • deepseek+vscode自动化测试脚本生成
  • RabbitMQ5-死信队列
  • docker安装nacos2.2.4详解(含:nacos容器启动参数、环境变量、常见问题整理)
  • 通信易懂唠唠SOME/IP——SOME/IP协议简介
  • UE5 蓝图学习计划 - Day 5:复习与整合实践
  • 3D图形学与可视化大屏:什么是材质属性,有什么作用?
  • 【Block总结】Shuffle Attention,新型的Shuffle注意力|即插即用
  • 在C语言中使用条件变量实现线程同步
  • w187社区养老服务平台的设计与实现
  • M|哪吒之魔童闹海
  • 【网络】传输层协议TCP(重点)
  • Python虚拟环境
  • Redis万字面试题汇总
  • 虚幻基础16:locomotion direction
  • 使用ollama在本地部署一个deepseek大模型
  • 面渣逆袭之Java基础篇3
  • LLMs之DeepSeek:Math-To-Manim的简介(包括DeepSeek R1-Zero的详解)、安装和使用方法、案例应用之详细攻略
  • XML DOM 节点
  • 详解Kafka并行计算架构
  • 深入了解 ls 命令及其选项
  • 【AI】探索自然语言处理(NLP):从基础到前沿技术及代码实践
  • unity免费资源2025-2-2
  • 涡旋光特性及多种模型、涡旋光仿真