巨灾超越概率(简化测算)
用县级暴雨重现期表和台风登陆事件表,按一个地点的保额、易损性、免赔和限额模拟 1 万年,给出超越概率曲线和年均损失。
官方技能第 1 版 · 2026/11/13 发布这是旧版本
- 官方技能,由智元数据编写和维护
- 只调用智元数据的 REST 接口
- 1 个取数脚本,只用 Python 3 自带的库
- API Key 从环境变量 WI_API_KEY 读取
- 依赖的数据集
- 2
- 一次对话
- —
- 安装次数
- 8
- 近 7 天调用
- 32
01怎么用
三步,让你的 Agent 用上这些数据
安装和设置只做一次。以后直接向你的 Agent 提问就行。
01
发安装语句
复制页头的安装语句,发给 你的 Agent。它会下载技能,装进自己的技能目录。可以在页头切换你用的 Agent。
02
设置 API Key
在终端里运行下面的命令,再启动 你的 Agent。
export WI_API_KEY=你的 API Key
创建 API Key03
直接提问
02依赖的数据集
这些数据集都要有授权
技能用到的数据集都要有授权才能查询。缺授权时,Agent 会告诉你缺哪一个。
自然灾害县级暴雨重现期
county-rainstorm-return-period
一行是一个县区的年最大日降水重现期。包含 2、5、10、20、50、100 年一遇的日降水量,Gumbel 分布的 2 个参数,县内格点数、所用年数和拟合优度(概率图相关系数)。覆盖全国 2899 个县区,用 1961 至 2022 年的 0.1 度格点逐日降水算出;每个格点用 L 矩法拟合 Gumbel 分布,县取县内格点参数的中位数,县内没有格点的 141 个县用最近的格点。用来判断工程所在县多大的日降水算几年一遇,给暴雨和洪涝风险定级,作为巨灾测算的危险性输入。
2,899 行 · 20 个字段登录后查看授权
自然灾害全国台风登陆记录
typhoon-landfall
一行是一个台风在中国沿海的一次登陆。包含台风编号、中文名、登陆日期、登陆地点和它的行政区划代码、登陆时的强度等级。覆盖有记录以来在中国大陆、香港、澳门、台湾登陆的台风,同一个台风多次登陆时各占一行。用来统计沿海各县市台风登陆的次数和强度,评估工程项目和企业财产的风灾风险。
839 行 · 13 个字段登录后查看授权
03技能内容
装进 Agent 的,全在这里
SKILL.md 可以看预览,也可以看原文。参考文件由平台按当前数据生成,需要时才读。
- 常驻约 143 token
- name 和 description,Agent 一直带着
- 触发后约 668 token
- 用到这个技能时读入 SKILL.md 正文
- 按需约 7,184 token
- 需要时才读参考文件、运行脚本
SKILL.md
57 行 · 约 811 token · 触发后读入--- name: actuarial-cat description: 按危险性、暴露、易损性、财务条款 4 个模块,对一个县的一个地点做暴雨和台风的简化巨灾测算,给出年均损失(AAL)和超越概率曲线(OEP、AEP)。用户说"巨灾""超越概率""多少年一遇的损失""重现期""AAL"时使用。用平台的精算工具包 wi_actuarial 写 Python 代码计算。完整的巨灾模型(OasisLMF)还在建设中,这里只是简化测算。 ---
巨灾超越概率(简化测算)
第 1 步:确定地点和参数
- 县区要用 6 位行政区划代码(
AreaCode)。用户只说了县名时,用下面的命令查代码:
python3 scripts/wi.py query county-rainstorm-return-period --where "county = <县名>" --fields region_code,province,city,county,rl_10y_mm,rl_100y_mm,ppcc_median --limit 5
- 其他参数:
| 参数 | 含义 | 默认 |
|---|---|---|
BuildingTIV | 保额(元) | 50,000,000 |
LocDed6All | 每次事故免赔额(元) | 0 |
LocLimit6All | 每次事故限额(元),0 表示不限 | 0 |
vulnerability | civil_works(在建的土石方、水利工程)、building_works(在建的房屋建筑)、completed_building(已完工的钢筋混凝土建筑) | civil_works |
design_return_period | 暴雨设防标准(几年一遇) | 10 |
第 2 步:算
import json
from wi_actuarial import cat
r = cat.ep_curve(AreaCode="445302", BuildingTIV=50_000_000, vulnerability="civil_works")
print(json.dumps(r["summary"], ensure_ascii=False))
print(json.dumps(r["data"], ensure_ascii=False))
for row in r["tables"]["ep"]["rows"]:
print(row)
for row in r["tables"]["modules"]["rows"]:
print(row)
for n in r["notes"]:
print("说明:", n)怎么回答
- 结论:年均损失(AAL),以及用户问的重现期的 OEP 损失,写单位。
- 超越概率表:几个重现期的 OEP 和 AEP。
- 4 个模块:危险性用了哪张表、哪些年份;易损性的参数是演示用的初值,待校准;财务条款。
- 写明"这是简化测算。完整的巨灾模型(OasisLMF)还在建设中。"
- 代码:原样附上。
规则
- 数字都要来自代码的输出。不要自己再乘除,不要编造数据。
- 回答里写出数据的性质:真实数据写出处,公开样例写"公开样例",演示数据写"演示数据,不是真实数据"。
- 回答里写出用了哪个库、哪个函数,以及结果里的说明(
notes)。 - 把运行的代码原样放在回答里,方便用户复算。
- 一次回答最多 6 次运行代码。互不依赖的计算放在同一段代码里。