You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python查询电脑GPU的具体型号名称(如RTX 3090)

Python查询本地GPU纯型号名称实现方案

以下方案均会自动过滤GPU厂商、产品线前缀(如NVIDIA、GeForce、Radeon等),仅返回RTX 3090这类具体型号字符串,可根据自己的运行环境选择对应实现。

  • 方案1:适配所有安装官方NVIDIA驱动的设备(无第三方Python依赖)
    直接调用系统自带的nvidia-smi工具读取信息,是N卡设备最稳定、最准确的方案,不需要额外安装任何Python库:

    import subprocess
    
    def get_nvidia_gpu_model():
        try:
            output = subprocess.check_output(
                ["nvidia-smi", "--query-gpu=name", "--format=csv,noheader"],
                text=True,
                stderr=subprocess.DEVNULL
            ).strip()
            gpu_models = [item.strip() for item in output.split("\n") if item.strip()]
            # 单卡返回字符串,多卡返回型号列表
            return gpu_models[0] if len(gpu_models) == 1 else gpu_models
        except (subprocess.CalledProcessError, FileNotFoundError):
            return None
    
    # 调用测试
    if __name__ == "__main__":
        print(get_nvidia_gpu_model())
        # 单卡输出示例:RTX 3090
    

    注:nvidia-smi返回的名称默认不带NVIDIA厂商前缀,不需要额外做字符串清洗。

  • 方案2:已安装PyTorch环境的通用方案
    如果你本地已经配置了PyTorch深度学习环境,不需要额外调用系统命令,直接用Torch内置接口即可查询:

    import torch
    import re
    
    def get_gpu_model_via_torch():
        if not torch.cuda.is_available():
            return None
        gpu_models = []
        for idx in range(torch.cuda.device_count()):
            raw_name = torch.cuda.get_device_name(idx)
            # 清洗掉厂商、产品线前缀,仅保留纯型号
            pure_model = re.sub(r"^(NVIDIA|GeForce)\s*", "", raw_name).strip()
            gpu_models.append(pure_model)
        return gpu_models[0] if len(gpu_models) == 1 else gpu_models
    
  • 方案3:Windows系统全GPU适配方案(支持N卡/A卡/Intel核显/Arc独显,无CUDA依赖)
    不需要安装显卡完整开发环境,直接调用Windows系统自带的WMI接口查询硬件信息,适配所有类型GPU:

    import subprocess
    import re
    
    def get_gpu_model_windows():
        try:
            output = subprocess.check_output(
                ["wmic", "path", "win32_VideoController", "get", "name"],
                text=True,
                stderr=subprocess.DEVNULL
            )
            gpu_models = []
            for line in output.split("\n"):
                line = line.strip()
                if not line or line == "Name":
                    continue
                # 清洗厂商、产品线前缀和冗余后缀
                pure_model = re.sub(
                    r"^(NVIDIA|AMD|Intel\(R\)|Intel)\s*(GeForce|Radeon|UHD|Iris|Arc)?\s*",
                    "",
                    line
                ).strip()
                pure_model = re.sub(r"\s*/\s*PCIe.*$", "", pure_model).strip()
                gpu_models.append(pure_model)
            return gpu_models[0] if len(gpu_models) == 1 else gpu_models
        except (subprocess.CalledProcessError, FileNotFoundError):
            return None
    

提示:如果设备是核显+独显双显卡配置,上述函数会返回所有识别到的GPU型号列表,按需筛选目标独显型号即可。

内容的提问来源于stack exchange,提问作者Alex Leontaridis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 21:39:15