华为云盘古气象大模型对接使用完全指南:从数据准备到API调用的全流程实战
1. 盘古气象大模型:重新定义天气预报的速度与精度
在气象预报领域,传统数值天气预报方法依赖超级计算机求解复杂的物理方程组,一次全球预报往往需要数小时的计算时间。华为云盘古气象大模型的问世彻底改变了这一格局——它将AI引入天气、海洋等前沿科学领域,融合了AI数据建模和AI方程求解方法,从海量数据中提取数理规律,利用神经网络编码微分方程。盘古大模型可在几秒钟内完成全球未来10天的天气预测,精度超过传统数值预报方法,计算速度提升10000倍以上,为防灾减灾争取宝贵的黄金时间。
盘古气象大模型属于华为云盘古科学计算大模型体系的一部分。该模型提供基础模型与工具链,支持客户自助训推,打通AI预报的最后一公里。在实际应用中,盘古气象大模型已与多个气象机构深度合作:深圳市气象局与华为云联创的智霁模型提供未来7天深圳及周边地区空间分辨率3公里的预报产品;重庆市气象局发布的天资·12h模型基于盘古全球气象大模型,采用全球与区域大模型嵌套融合架构;在泰国,盘古大模型将台风路径预测时间从5小时缩短到10秒。
需要先登录华为云控制台,点击:华为云控制台,还没有账号,点击:注册并关联,已有账号点击:登录后关联
本文将从零开始,手把手带你完成从账号准备、数据工程、模型训练、部署到API调用的全流程对接,让你快速将盘古气象大模型的能力集成到自己的业务系统中。
2. 准备工作:账号、服务订购与访问授权
2.1 账号注册与实名认证
使用华为云盘古气象大模型的第一步是注册华为云账号并完成实名认证。访问华为云官网,点击注册按钮,按照指引填写手机号、邮箱等信息完成注册。注册成功后,需进行实名认证——企业用户可选择企业认证,个人开发者可选择个人认证。实名认证是后续订购服务和使用API的必要前提。
2.2 订购盘古大模型服务
盘古大模型服务是华为云对外交付的整体解决方案,也是订购与计费的对象。它定义了可使用能力的范围与边界:模型资产(盘古/三方)与开发工具(ModelArts Studio平台)都在这一服务范畴内统一交付、统一使用。
进入华为云控制台,搜索盘古大模型或科学计算大模型,进入产品页面。盘古大模型为用户提供了服务试用,用户可根据所需提交试用申请,申请通过后方可试用盘古大模型功能。正式使用前,需要完成服务的订购操作。订购时需选择模型资产(如盘古气象大模型)、训练资源和推理资源。支持用户使用已订购的付费模型或免费模型进行训练,将训练后的模型部署后再进行推理。
2.3 配置服务访问授权
为了能够正常地存储数据、训练模型,需要配置盘古访问OBS(对象存储服务)的权限。在ModelArts Studio大模型开发平台中,进入管理控制台,找到访问授权配置页面,为盘古服务授予对OBS桶的读写权限。这一步骤至关重要,因为后续的数据集存储、训练输出、推理结果都将存放在OBS中。
2.4 创建并管理工作空间
平台支持用户自定义创建工作空间,并进行空间的统一管理。工作空间是隔离不同项目或团队的逻辑单元。登录ModelArts Studio大模型开发平台,在我的空间模块中单击进入所需空间,或创建新的工作空间。建议为气象大模型项目单独创建一个工作空间,以便于资源隔离和权限管理。
3. 数据工程:构建气象类数据集
盘古科学计算大模型仅支持接入气象类数据集。数据是模型训练的基础,构建高质量的气象数据集是获得精准预报结果的关键前提。
3.1 气象类数据集格式要求
气象类数据集需要按照平台规定的格式进行组织。数据通常采用NetCDF格式,这是一种广泛应用于气象和海洋学领域的自描述数据格式。数据集需包含高空变量和表面变量两大类:高空变量包括重力位势(Geopotential)、比湿(Specific humidity)、温度(Temperature)、u风(U-component of wind)、v风(V-component of wind)等;表面变量包括10米u风、10米v风、2米温度、海平面气压等。
高空变量需覆盖多个气压层次,包括1000hPa、925hPa、850hPa、700hPa、600hPa、500hPa、400hPa、300hPa、250hPa、200hPa、150hPa、100hPa、50hPa等。时间维度上,通常需要0点、6点、12点、18点四个时次的数据。
3.2 ERA5数据获取实操
ERA5是欧洲中期天气预报中心(ECMWF)发布的全球气象再分析数据集,是训练气象大模型常用的数据源。以下以获取2021年7月16日的高空变量数据为例:
- 注册并登录数据下载平台(如CDS或ADS)
- 在高空变量数据下载页面中:
- Product type选择Reanalysis
- Variable选择Geopotential、Specific humidity、Temperature、U-component of wind、V-component of wind
- Pressure level选择所需气压层次
- Year选择2021,Month选择July,Day选择16
- Time选择00:00、06:00、12:00、18:00
- Geographical area选择Whole available region
- Format选择NetCDF(experimental)
- 单击Submit Form,基于页面提示单击Download下载数据
对于海洋相关应用,盘古还支持Mercator海洋数据获取。以下载2021年6月30日深海变量数据为例:选择需要的深海层(如0.49m)、时间范围、变量(海温、海盐、海流经向速率、海流纬向速率、海平面高度等)。若文件大小超过限制,可单击Automate复制对应的Python API,使用python进行数据下载。
3.3 数据导入、加工与发布
将存储在OBS服务中的数据导入至平台统一管理,用于后续加工或发布操作。在ModelArts Studio平台中,进入数据工程模块,选择导入数据,指定OBS路径。平台支持对气象类数据集进行加工操作,如数据清洗、格式转换、缺失值处理等。加工完成后,对气象类数据集进行发布操作,发布后的数据集方可用于模型训练。
4. 模型训练:从预训练到微调
4.1 科学计算大模型训练流程与选择建议
ModelArts Studio大模型开发平台提供了科学计算大模型的全流程开发支持,涵盖了从数据处理到模型训练、部署、调用的各个环节。训练流程主要包括:创建科学计算大模型训练任务、查看训练状态与指标、发布训练后的模型。
盘古科学计算大模型提供了多种规格的模型,用户可根据实际需求选择。主要的气象模型规格包括:
- Pangu-AI4S-Global-Weather v1.1.4:时间分辨率1小时,1个训练单元起训及1个实例部署
- Pangu-AI4S-Global-Weather v1.2.4:时间分辨率3小时
- Pangu-AI4S-Global-Weather v1.3.4:时间分辨率6小时
- Pangu-AI4S-Global-Weather v2.1.4:时间分辨率6小时,预报准确度更高
- Pangu-AI4S-Global-Weather v4.1.4:相比于旧版本精度提升30%,至少8个推理单元部署
- Pangu-AI4S-Regional-Weather v1.1.4:时间分辨率1小时,用于区域中期天气要素预测
对于大多数业务场景,建议从预训练模型开始,使用自有数据对模型进行微调(Fine-tuning),以适应特定区域或特定气象要素的预报需求。微调所需的数据量相对较少,训练成本更低。
4.2 创建训练任务
登录ModelArts Studio大模型开发平台,进入所需空间。在左侧导航栏中选择模型开发 > 模型训练。单击创建训练任务,按照界面指引选择模型规格、训练数据集、资源配置(训练单元数量)等参数。训练过程中可实时查看训练状态与指标。
4.3 发布训练后的模型
科学计算大模型训练完成后,需要执行发布操作。发布的模型将进入模型资产库,可供后续部署使用。模型发布后,即可进入部署环节。
5. 模型部署:将模型变为可调用的服务
5.1 创建科学计算大模型部署任务
模型训练完成后,可以启动模型的部署操作。部署流程如下:
- 登录ModelArts Studio大模型开发平台,进入所需空间
- 在左侧导航栏中选择模型开发 > 模型部署
- 单击界面右上角创建部署
- 在选择模型页面,从模型广场或模型资产中选择已发布的气象大模型
- 参考参数说明完成部署参数设置
- 结果存储路径:用于存放模型推理结果的OBS路径
- 输入数据:根据模型选择相应的OBS文件路径。天气模型选择ERA5数据
- 预报天数:支持选择以起报时间点为开始
- 推理单元:根据模型规格选择所需推理单元数量
- 登录华为云管理控制台
- 单击右上角的用户名,在下拉列表中单击我的凭证
- 单击访问密钥
- 单击新增访问密钥,进入身份验证页面
- 根据提示完成身份验证,下载密钥文件(credentials.csv),妥善保管
- data_dirs:由json体转换的字符串,格式为{"model_tag":"obs://path/to/data/"}
- start_time_begin/end:起报时间区间,格式为YYYYMMDDHH
- forecast_lead_hours:预报未来小时数,范围1-720小时(30天)
- num_ensembles:集合预报数量,范围2-10。集合预报是指对初始场加入一定程序的扰动,生成一组由不同初始场预报的天气预报结果,提供对未来天气状态的概率信息,更好地表达预报的不确定性
- ensemble_noise_method:集合预报的加噪方式,可选perlin。perlin噪音通过对输入数据(比如空间坐标)进行随机扰动,让模拟出的天气接近真实世界中的变化
- 请求体大小不超过12MB
- 每次请求预测时间不超过40秒(APIG网关限制)
- 客户端须注意本地时间与时钟服务器的同步,避免请求消息头Sdk-Date的值出现较大误差。API网关会校验时间值与网关收到请求的时间差,若超过15分钟将拒绝请求
- 在Postman中新建POST请求,填入模型调用路径
- 选择认证方式——Token认证或AK/SK认证
- 在Body中选择raw选项,填写JSON格式的请求Body
- 单击Send发送请求
- 区域精准预报:深圳市气象局与华为云联创的智霁2.0提供未来7天深圳及周边地区3公里分辨率的预报产品。智霁1.0在大范围暴雨落区预报和台风路径预报方面具有优势
- 致灾降水预报:重庆市气象局与华为云共同研发的天资·12h大模型,聚焦成渝地区致灾降水精准预报。模型采用全球与区域大模型嵌套融合架构,融合成渝地区地面气象要素格点产品、高精度地形及雷达拼图等数据
- 新能源功率预测:深圳能源携手华为云联合发布的新能源功率预测系统,基于盘古大模型深度融合气象领域能力,实现中短期风、光、水电的发电量预测
- 海洋预报:盘古海洋智能预报大模型依托昇腾算力及ModelArts Studio平台,实现数据清洗、模型训练到推理发布全流程闭环,支持自助训推与区域微调
5.2 部署参数配置要点
部署时需配置以下关键参数:
部署任务创建后,系统将启动模型部署。部署成功后,模型将变为一个可调用的在线服务,提供标准的RESTful API接口。
6. 调用科学计算大模型:两种方式详解
盘古科学计算大模型支持两种调用方式:使用能力调测(体验中心)调用和使用API调用。
6.1 方式一:体验中心可视化调用
体验中心是ModelArts Studio平台提供的可视化调试工具。用户无需编写代码,只需在界面上填写起报时间、预报时长等参数,即可触发模型推理并查看结果。这种方式适合快速验证模型效果、调试参数或进行演示。
6.2 方式二:API编程调用
API调用是将盘古气象大模型集成到业务系统中的主要方式。调用API有两种认证方式:Token认证和AK/SK签名认证。
6.2.1 Token认证
Token认证是一种较为简便的认证方式。用户通过用户名和密码获取临时Token,然后在API请求的Header中携带Token进行鉴权。Token有效期通常为24小时,过期后需重新获取。
6.2.2 AK/SK签名认证
AK/SK认证通过AK(Access Key ID)和SK(Secret Access Key)加密调用请求。经过认证的请求总是需要包含一个签名值,该签名值以请求者的访问密钥(AK/SK)作为加密因子,结合请求体携带的特定信息计算而成。
AK/SK的获取步骤:
密钥文件包含租户名(User Name)、AK(Access Key Id)、SK(Secret Access Key)。
6.2.3 Python SDK调用完整示例
以下提供使用Python语言通过AK/SK签名认证方式调用盘古气象大模型的完整代码示例。首先需要安装必要的依赖:
pip install requests
下载华为云API签名SDK(apig_sdk)并在开发工具中完成SDK配置。完整代码如下:
# -*- coding: utf-8 -*-
import requests
import json
from apig_sdk import signer
# 1. 配置AK/SK
ak = "你的AccessKeyId"
sk = "你的SecretAccessKey"
# 2. 获取部署后的API调用地址
# 在ModelArts Studio的模型部署详情页面获取
url = "https://{在线服务的调用地址}/predictions/{模型名称}"
# 3. 构造请求Body
# 参数说明请参考API参考文档
request_body = {
"data_dirs": "obs://path/to/your/input/data/", # 输入数据OBS路径
"start_time_begin": "2024070100", # 起报时间区间起点(YYYYMMDDHH)
"start_time_end": "2024070200", # 起报时间区间终点(YYYYMMDDHH)
"start_time_interval_hours": 6, # 起报时间间隔小时数[1,24]
"forecast_lead_hours": 168, # 预报未来小时数[1,720],默认168
"draw_figures": "true", # 是否输出结果图片
"num_ensembles": 5, # 集合数量[2,10],提供概率预报
"ensemble_noise_method": "perlin", # 集合预报加噪方式
"ensemble_noise_perline_scale": 0.3, # Perlin加噪scale(0,0.5)
"ensemble_noise_perline_octave": 4, # Perlin加噪octave[1,10]
"ensemble_noise_perlin_x": 0.5, # x经度方向尺度[0,1)
"ensemble_noise_perlin_y": 0.5 # y纬度方向尺度[0,1)
}
# 4. 创建签名请求
sig = signer.Signer()
sig.Key = ak
sig.Secret = sk
# 5. 构造并发送请求
request = signer.HttpRequest()
request.method = "POST"
request.scheme = "https"
request.host = "{服务域名}"
request.uri = "/{API路径}"
request.headers = {"Content-Type": "application/json"}
request.body = json.dumps(request_body)
# 对请求进行签名
sig.Sign(request)
# 发送请求
response = requests.post(
url,
headers=request.headers,
data=request.body
)
# 6. 处理响应
if response.status_code == 200:
result = response.json()
print("预报任务已提交,任务ID:", result.get("task_id"))
# 使用任务ID轮询查询结果
# GET /tasks/{task_id}
else:
print("请求失败:", response.status_code, response.text)
关于请求参数的重要说明:
API调用还需注意以下约束:
6.2.4 查询推理结果
模型推理是异步任务。提交预报请求后会返回task_id,需要通过GET请求查询任务状态和结果:
GET /tasks/{task_id}
当任务状态为成功时,响应体中包含预报结果数据。结果通常存储在部署时指定的OBS路径中,也可通过API直接获取。
6.2.5 使用Postman调用
对于快速测试,可以使用Postman调用API:
Postman请求Body示例:
{
"data_dirs": "{\"Pangu-AI4S-Global-Weather\":\"obs://my-bucket/input/era5/202407/\"}",
"start_time_begin": "2024070100",
"start_time_end": "2024070200",
"start_time_interval_hours": 6,
"forecast_lead_hours": 168,
"draw_figures": "true",
"num_ensembles": 5
}
7. 实际应用场景与案例
盘古气象大模型已在多个实际场景中得到验证和应用:
8. 常见问题与最佳实践
8.1 如何选择合适的时间分辨率?
盘古气象大模型提供1小时、3小时、6小时、24小时等多种时间分辨率。对于需要精细刻画天气演变过程的应用(如短临预报、航空气象),建议选择1小时或3小时分辨率。对于中期预报(7-10天),6小时分辨率是性价比较高的选择。v4.1.4版本精度提升30%但需要至少8个推理单元,适合对精度要求极高的场景。
8.2 如何优化推理成本?
推理成本主要取决于推理单元数量和推理时长。建议:选择合适的模型规格(并非精度越高越好);合理设置预报时长(forecast_lead_hours),按需预报而非一味追求长时效;利用集合预报(num_ensembles)时根据实际需求设置集合数量,并非越多越好。
8.3 数据准备有哪些注意事项?
确保数据格式符合平台要求(NetCDF格式);数据的时间覆盖范围和变量完整性要满足模型输入要求;高空变量需覆盖足够的气压层次;数据存储路径需在OBS中,且盘古服务有访问权限。
9. 总结
本文系统梳理了华为云盘古气象大模型从账号准备、数据工程、模型训练、部署到API调用的完整对接流程。盘古气象大模型凭借秒级预报、超越传统精度的能力,正在重塑气象预报的技术范式。无论你是气象科研人员、AI工程师还是行业应用开发者,都可以通过本文的指引快速上手,将这一强大的AI预报能力集成到自己的业务中。
随着盘古大模型持续迭代(如v4.1.4版本精度提升30%),以及更多区域模型和海洋模型的推出,盘古科学计算大模型的应用边界将不断拓展,在防灾减灾、新能源、农业生产、交通运输等领域发挥越来越重要的作用。
Q&A:快速解答你的疑问
Q1:盘古气象大模型和传统数值天气预报有什么区别?
A:传统数值预报依赖超级计算机求解物理方程组,一次全球预报需数小时;盘古气象大模型基于AI技术,可在几秒钟内完成全球未来10天预报,速度提升10000倍以上,精度超越传统方法。
Q2:调用盘古气象大模型API需要准备什么?
A:需要华为云账号(已实名认证)、已订购的盘古大模型服务、已部署的模型服务(获取调用地址)、认证凭证(Token或AK/SK)。
Q3:如何获取AK/SK用于API签名认证?
A:登录华为云控制台,点击右上角用户名 > 我的凭证 > 访问密钥 > 新增访问密钥,完成身份验证后下载credentials.csv文件。
Q4:集合预报中的num_ensembles参数是什么意思?
A:集合预报是对初始场加入扰动,生成一组由不同初始场预报的结果,提供对未来天气的概率信息。num_ensembles取值范围2-10,值越大预报的不确定性信息越丰富,但计算成本也越高。
Q5:盘古气象大模型支持哪些输入数据格式?
A:主要支持NetCDF格式的气象数据,包括高空变量(重力位势、温度、u/v风、比湿等)和表面变量(10米风、2米温度、海平面气压等)。数据需存储在OBS中并通过data_dirs参数指定路径。
Q6:部署盘古气象大模型需要多少推理单元?
A:不同模型规格要求不同。例如v1.x版本通常1个推理单元即可部署,而v4.1.4高精度版本至少需要8个推理单元。具体请参考模型规格说明。



