# -*- coding: utf-8 -*- """ GPU 设备模型 定义 GPU 设备的数据结构。 """ from dataclasses import dataclass from typing import Optional @dataclass class GPUDevice: """ GPU 设备信息 Attributes: index: 设备索引(对应 nvidia-smi 中的 GPU ID) name: 设备名称(如 "NVIDIA GeForce RTX 3090") memory_total: 显存总量(MB),可选 available: 设备是否可用 """ index: int name: str memory_total: Optional[int] = None available: bool = True def __str__(self) -> str: status = "available" if self.available else "unavailable" mem_info = f", {self.memory_total}MB" if self.memory_total else "" return f"GPU[{self.index}]: {self.name}{mem_info} ({status})"