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

强制重装及验证onnxruntime-gpu是否正确工作

#工作记录

我们经常会遇到明明安装了onnxruntime-gpu或onnxruntime后,无法正常使用的情况。

一、强制重新安装 onnxruntime-gpu 及其依赖

# 强制重新安装 onnxruntime-gpu 及其依赖
pip install --force-reinstall --no-cache-dir onnxruntime-gpu==1.18.0 --extra-index-url https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/onnxruntime-cuda-12/pypi/simple/

 

二、验证onnxruntime-gpu的安装

验证安装和GPU支持

并确保 GPU 支持正常工作:

# 导入 onnxruntime 模块,不使用别名
import onnxruntime
# 打印 onnxruntime 的版本号,确保已正确安装
print(onnxruntime.__version__)
# 导入 onnxruntime 模块,并使用别名 'ort',方便后续调用
import onnxruntime as ort
# 检查设备
print("Device:", ort.get_device())  # 应输出 'GPU'
# 检查可用的执行提供程序
providers = ort.get_available_providers()
print("Available providers:", providers)  # 应包含 'CUDAExecutionProvider'
# 如果 GPU 支持正常,可以进一步测试推理
if 'CUDAExecutionProvider' in providers:print("GPU support is enabled.")
else:print("GPU support is not enabled. Please check your CUDA and cuDNN installation.")

输出应如下: 

(Cosyvoice) PS C:\Users\love> python
Python 3.11.11 | packaged by Anaconda, Inc. | (main, Dec 11 2024, 16:34:19) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> # 导入 onnxruntime 模块,不使用别名
>>> import onnxruntime
>>> # 打印 onnxruntime 的版本号,确保已正确安装                                                                           >>> print(onnxruntime.__version__)
1.21.1
>>> # 导入 onnxruntime 模块,并使用别名 'ort',方便后续调用
>>> import onnxruntime as ort
>>> # 检查设备
>>> print("Device:", ort.get_device())  # 应输出 'GPU'
Device: GPU
>>> # 检查可用的执行提供程序
>>> providers = ort.get_available_providers()
>>> print("Available providers:", providers)  # 应包含 'CUDAExecutionProvider'
Available providers: ['TensorrtExecutionProvider', 'CUDAExecutionProvider', 'CPUExecutionProvider']
>>> # 如果 GPU 支持正常,可以进一步测试推理
>>> if 'CUDAExecutionProvider' in providers:
...     print("GPU support is enabled.")
... else:
...     print("GPU support is not enabled. Please check your CUDA and cuDNN installation.")
...
GPU support is enabled.

 

 

 


http://www.mrgr.cn/news/99126.html

相关文章:

  • 【Rust 精进之路之第8篇-工具赋能】深入 Cargo:依赖管理、构建配置与工作空间 (Workspace)
  • 【TeamFlow】4 团队管理系统
  • 2.1 基于委托的异步编程方法
  • 2020 年 7 月大学英语四级考试真题(组合卷)——解析版
  • 计算机视觉cv2入门之视频处理
  • 硬件工程师笔记——电子器件汇总大全
  • AI书籍大模型微调-基于亮数据获取垂直数据集
  • 【Rust 精进之路之第11篇-借用·实践】切片 (Slices):安全、高效地引用集合的一部分
  • 车载测试用例开发-如何平衡用例覆盖度和测试效率的方法论
  • Linux学习——TCP
  • 【Flutter】使用LiveKit和Flutter构建实时视频聊天应用
  • LicheeRV Nano 与Ubuntu官方risc-v 镜像混合
  • [OpenGL]使用OpenGL实现基于物理的渲染模型PBR(下)
  • kotlin知识体系(六) : Flow核心概念与与操作符指南
  • (mac)Grafana监控系统之监控Linux的Redis
  • 【Rust 精进之路之第13篇-生命周期·进阶】省略规则与静态生命周期 (`‘static`)
  • 【SpringBoot】99、SpringBoot中整合RabbitMQ实现重试功能
  • Linux 生产者消费者模型
  • (done) 吴恩达版提示词工程 1. 引言 (Base LLM 和 Instruction Tuned LLM)
  • C++:详解命名空间