有手就行的大模型教程:如何在个人电脑上部署盘古大模型

文摘   2024-10-26 09:00   北京  

有手就行的大模型教程:如何在个人电脑上部署盘古大模型

前言

在当前的人工智能浪潮中,大型预训练模型如盘古等,因其卓越的性能和广泛的应用前景而备受关注。然而,这些模型的部署并非易事,尤其是在个人电脑上。由于其庞大的参数量和计算需求,通常需要高性能的硬件支持。尽管如此,对于热衷于AI研究与实践的个人用户而言,了解如何在个人设备上部署这类大模型具有重要的学习价值。本文旨在探讨这一过程,为读者提供一个从理论到实践的指南,帮助大家理解大模型部署的基本原理,以及如何克服资源限制,实现个人电脑上的初步应用尝试。

注意:本教材基于github的https://github.com/ecmwf-lab/ai-models
以及个人安装实践撰写,不保证适用范围

如遇到其他机器安装bug,一概不能解决

安装步骤

需要材料:一部安装了anaconda的有独显的笔记本电脑,一个会打字的猴子
前置条件

  • • 阅读anaconda安装帖子https://blog.csdn.net/weixin_73800108/article/details/137296446

  • • Python 3.10(它可能适用于不同的版本,但已在 Linux/MacOS 上使用 3.10 进行了测试)。

  • • 用于访问输入数据的 ECMWF 和/或 CDS 帐户(有关详细信息,请参见下文)。

  • • 使用 GPU 计算以获得最佳性能(强烈建议)。

好下面我们正式开始

打开anaconda prompt
键入以下命令

conda create -n ai-models python=3.10  
conda activate ai-models  
conda install cudatoolkit  
pip install ai-models  

碰到询问你yes or no就输y

第二步,安装盘古挂件

pip install ai-models-panguweather  

第三步。下载预训练资料

ai-models --download-assets --assets assets-panguweather panguweather

这一步博主遇到了错误如下

File "D:\anaconda\envs\ai-models\lib\site-packages\onnxruntime\capi\_pybind_state.py", line 32, in <module>  
  from .onnxruntime_pybind11_state import *  # noqa  
ImportError: DLL load failed while importing onnxruntime_pybind11_state: 动态链接库(DLL)初始化例程失败。  

将报错喂给神奇海螺,神奇海螺建议我再装一次onnxruntime库

于是你需要键入以下

conda install -c conda-forge onnxruntime

然后再次下载预训练数据,文件较大需要耐心等待下载

ai-models --download-assets --assets assets-panguweather panguweather

下载完成后,会出现下图

Image Name

再一行就会叫你输入api链接和api

这里需要一个ec账号下载ec的气压数据,博主马上注册了一个账户,结果发现全部都白瞎

报错如下:

ecmwfapi.api.APIException: "ecmwf.API error 1: User 'decadeneo@outlook.com' has no access to services/mars"

api填进去后显示我权限不足,有权限的同学可以直接键入或者跳过

没ec账号的同学直接可以跳过这步

那么博主以前用来下载era5数据的cds账号就派上用场了
键入如下代码进行推理

ai-models --input cds --date 20220920 --time 0000 --assets assets-panguweather panguweather  

会出现如下提示

Image Name

输入了对应的api信息后就开始数据下载之旅

下载完毕后则直接进入推理阶段

Image Name

推理完十天的预报,花了39分58秒

奇怪了,官网上说一分钟就完事了,难道4060不行?

运行完的文件就在当前文件夹下

Image Name

官网参数说明,以下是各项功能的说明:

帮助与信息选项

  • • --help: 显示帮助信息,介绍所有可用的命令行选项。

  • • --models: 列出所有已安装的模型。

  • • --debug: 开启调试模式,会在控制台上打印额外的信息,有助于问题排查。

输入源选项

  • • --input INPUT: 指定模型的输入来源,可以是mars(欧洲中期天气预报中心的数据库)、cds(气候数据存储库)或file(本地文件)。

  • • --file FILE: 设置具体的输入文件路径。选择此选项将使--input参数默认为file

  • • --date DATE: 设置模型分析的日期,默认情况下为昨天。

  • • --time TIME: 设置模型分析的时间,默认值为1200(即中午12点)。

输出目标选项

  • • --output OUTPUT: 定义模型输出的目的地,可以选择filenone

  • • --path PATH: 设置用于写入模型输出的文件路径。

运行参数

  • • --lead-time HOURS: 设置预测的小时数,缺省值为240小时(10天)。

预训练数据管理

  • • --assets ASSETS: 指定包含模型数据的目录路径,默认为当前目录,也可以通过设置环境变量$AI_MODELS_ASSETS来覆盖。

  • • --assets-sub-directory: 启用将数据组织在<assets-directory>/<model-name>子目录中的功能。

  • • --download-assets: 如果数据不存在,则下载它们。

其他选项

  • • --fields: 打印模型作为初始条件所需的字段列表。

  • • --expver EXPVER: 设置模型输出的实验版本。

  • • --class CLASS: 设置模型输出的class元数据。

  • • --metadata KEY=VALUE: 在模型输出中添加额外的元数据。

这些选项允许用户精细地控制模型的运行环境,输入输出,以及执行过程中的各种参数,非常适合需要高度定制化操作的场景。

小结

通过本文的介绍,我们了解到在个人电脑上部署盘古大模型并非不可行,但确实需要克服一系列挑战,包括但不限于计算资源的限制、各种bug的应付。虽然直接运行完整版的大模型可能超出大多数个人电脑的能力范围,但通过合理的技术选择和配置调整,例如使用轻量化版本的模型或在云服务上进行部分处理,个人用户仍然可以体验到大模型的部分功能,并在此基础上进行创新性的探索。这不仅丰富了个人的学习经历,也为未来AI技术的普及和个性化应用开辟了新的可能性。

PS: 作为气象版主打个广告,和鲸近期出了气象大模型workshop,白嫖免费算力学习大模型,马上行动吧

活动链接是:

https://www.heywhale.com/home/competition/667bbcf588e27c06995f5816


气python风雨
主要发一些涉及大气科学的Python文章与个人学习备忘录
 最新文章