工程险参考费率
读条款的暴雨定义,取工程合同和周边格点的极端降水,写代码算暴雨部分的参考费率区间,附参数表、出处和压力情景。
- 官方技能,由智元数据编写和维护
- 只调用智元数据的 REST 接口
- 1 个取数脚本,只用 Python 3 自带的库
- API Key 从环境变量 WI_API_KEY 读取
- 依赖的数据集
- 2
- 一次对话
- —
- 安装次数
- 8
- 近 7 天调用
- 27
01怎么用
三步,让你的 Agent 用上这些数据
安装和设置只做一次。以后直接向你的 Agent 提问就行。
01
发安装语句
复制页头的安装语句,发给 你的 Agent。它会下载技能,装进自己的技能目录。可以在页头切换你用的 Agent。
02
设置 API Key
在终端里运行下面的命令,再启动 你的 Agent。
export WI_API_KEY=你的 API Key
创建 API Key03
直接提问
02依赖的数据集
这些数据集都要有授权
技能用到的数据集都要有授权才能查询。缺授权时,Agent 会告诉你缺哪一个。
工程项目上市公司政府采购合同
listed-company-gov-procurement
一行是一份政府采购合同,供应商是上市公司或它的子公司。包含合同名称、项目名称、采购人、供应商、主要标的、合同金额、签订日期、公告日期,以及匹配到的上市公司和股票代码。覆盖全国各级采购人公告的合同,上市公司的匹配由数据整理者完成。用来看一家上市公司拿到多少政府订单,评估它的履约责任和应收账款风险。
189,502 行 · 51 个字段登录后查看授权
自然灾害全国格点逐年极端降水
grid-annual-extreme-precipitation
一行是一个 0.1 度(约 10 千米)的格点一年的降水指标。包含格点中心的经纬度、年降水量、最大日降水量、最大连续 5 日降水量、雨日数、大雨日数、暴雨日数、大暴雨日数,以及格点里的雨量站数。覆盖中国陆地,每个格点每年 1 行,由逐日格点降水资料算出,格点降水由全国 2839 个雨量站插值得到。用来按工程项目的经纬度查当地历年的暴雨强度和次数,估计洪涝和山洪风险,给极端降水打分。
6,022,990 行 · 12 个字段登录后查看授权
03技能内容
装进 Agent 的,全在这里
SKILL.md 可以看预览,也可以看原文。参考文件由平台按当前数据生成,需要时才读。
- 常驻约 177 token
- name 和 description,Agent 一直带着
- 触发后约 1,277 token
- 用到这个技能时读入 SKILL.md 正文
- 按需约 8,563 token
- 需要时才读参考文件、运行脚本
SKILL.md
69 行 · 约 1,454 token · 触发后读入--- name: engineering-pricing description: 给一个在建的小型水利工程算工程险暴雨部分的参考费率区间:读条款的暴雨定义,取工程合同、周边格点的极端降水和施工单位的合同,按危险性、暴露、易损性、施工管理写 Python 代码计算,附参数表、出处和 100 年一遇暴雨的压力情景。用户问"参考费率区间是多少""依据是什么"时使用。只给参考,最终价格由核保人员决定。通过智元数据 World Insight 的 REST 接口取数,需要环境变量 WI_API_KEY。 ---
工程险参考费率
给一个工程算暴雨部分的参考费率区间。先读条款,再取数,再写代码算,最后写定价依据。
开始前
- 所有命令都在本技能的目录里运行:
python3 scripts/wi.py ...。取到数据后要计算时,先加--save data/<文件名>.json保存,再用 run_python 写代码读文件计算。数字都要来自命令或代码的输出。 - 先读
references/method.md(公式、参数表、出处)。下面的命令已经写好了字段,不用再读references/datasets.md。 - 保存的文件是一个对象:
columns是字段的列表,每个字段是{"key": ..., "name": ...};rows是行,每行是一个列表,顺序和columns相同。读文件时用keys = [c["key"] for c in d["columns"]],不用再看文件的结构。 - 一次回答最多 16 轮。互不依赖的命令放在同一轮里一起运行。
第 1 步:读条款
用户给了条款原文时,先把和定价有关的规定写成一个 json 代码块,标题写"读条款记录":
{"读条款": [{"字段": "暴雨的定义", "值": "...", "原文": "..."}]}至少写这些字段:保险责任、暴雨的定义、一次事件、大雨的定义(附加险)、渐变原因的免责。原文 照抄条款的句子,不改字。条款里没有的,值写"条款里没有"。
第 2 步:取数
下面 3 条命令放在同一轮里运行。格点的范围:代表点所在格点的中心(x.x5)±0.1 度。代表点在用户给的风险画像里。
python3 scripts/wi.py query listed-company-gov-procurement --where "contract_no = <合同编号>" --fields project_name,supplier_name,contract_amount_yuan,contract_date,subject_name --limit 5 python3 scripts/wi.py query grid-annual-extreme-precipitation --where "lat >= <纬度下限>" --where "lat <= <纬度上限>" --where "lng >= <经度下限>" --where "lng <= <经度上限>" --fields lat,lng,year,rx1day_mm,rainstorm_days,downpour_days --limit 1000 --save data/grid.json python3 scripts/wi.py query listed-company-gov-procurement --where "supplier_name = <中标单位>" --fields project_name,contract_amount_yuan,contract_date --limit 100
第 3 条用来定施工管理系数:看中标单位的合同里有没有水库或除险加固(不算本工程)。
第 3 步:算
写一段代码(只用 Python 自带的库):
- 开头写
PARAMS,照抄references/method.md的参数表,每个参数带source。保险金额用第 2 步查到的合同金额。施工管理系数按方法卡取一头,写明理由。 - 每年取格点
rx1day_mm的平均,矩法拟合 Gumbel,打印 mu、beta、年数。 - 算每年最大日降水落在 50 到 100、100 到 150、150 以上 3 个档的概率。
- 按公式算期望损失率、纯费率和参考费率,低值用参数的低值,高值用参数的高值。用 ‰ 打印。
- 算 100 年一遇的日降水和压力情景的损失(元、占保险金额的比例)。
- 最后把
PARAMS逐行打印出来:键、取值、出处。
怎么回答
交一页"定价依据",按这个顺序:
- 参考费率区间:一句话,写低值到高值(‰),只算暴雨部分。不要写"报价""最终费率"。
- 怎么算的:公式,每一项用了什么数据、算出来是多少。
- 参数表:每个参数的取值和出处,假设的参数写明"假设,待校准"。
- 压力情景:100 年一遇的日降水是多少,一次事件的损失是多少。
- 还不知道的:哪些参数换成真实资料后区间会变窄(例如工程量清单、实际工期、赔案)。
- 最后两句照写:"方法演示,参数待校准。""最终价格由核保人员决定。"
不要编造数据。没有查到的写"没有查到"。
出错时
| 错误码 | 怎么办 |
|---|---|
NO_GRANT | 告诉用户缺哪个数据集的授权。其他步骤照常做完 |
TIMEOUT | 加过滤条件、减少字段,再试一次 |
BAD_REQUEST | 按错误信息改字段标识或过滤值,再试一次 |