v2.1.0 数据质量检查+自动重新探索+审核拒绝复盘

- 新增数据质量评估:按类别核心字段(参数/上下文/发布日期/组织等)计算覆盖度
- 质量不足自动重新探索(限1次):根据缺失字段生成4个针对性搜索词,重新搜索+抓取+提取
- 填充模板升级:补充AI模型完整字段(架构/开源/价格/能力),要求输出带URL的data_sources
- 提交附引用链接:从提取内容收集标题+URL,随产品数据提交给ParamHub
- 新增审核监控线程:提交后轮询审核状态,检测到拒绝时记录拒绝理由
- 审核拒绝复盘:大模型分析拒绝理由→生成定向搜索词→补搜缺失信息→重新提取填充→重新提交
- 复盘实测:deepseek-v4-flash-0731 被拒(缺参数量)后自动补全 37B/MoE/128K/价格,重新提交成功
This commit is contained in:
2026-08-13 23:00:51 +08:00
parent a0b870ee98
commit 9260542aa8
3 changed files with 616 additions and 40 deletions
+39 -29
View File
@@ -13,51 +13,61 @@
请完成以下工作:
### 1. 获取对应类别的字段配置
首先,请访问 ParamHub API 文档获取对应类别的字段定义
- API文档地址:http://192.168.2.8:12007/hz4th_coder/param-hub-python/src/branch/master/API.md
- 根据产品类别({{category}})确定应该使用哪个API
- AI模型 → `/api/models`,字段包括:name, organization, parameters, context_length, mmlu, publish_date, visible, is_pinned
- GPU → `/api/gpus`,字段包括:name, manufacturer, memory_gb, cuda_cores, tensor_cores, price_usd, release_year, visible, is_pinned
- CPU → `/api/cpus`,字段包括:name, manufacturer, cores, threads, base_clock, boost_clock, price_usd, visible, is_pinned
- 其他动态分类 → `/api/items/{category_id}`
### 1. 确定字段配置
根据产品类别({{category}})确定字段
- **AI模型** → `/api/models` 字段包括
`name`(必填), `organization`(厂商), `parameters`(参数量如"70B"), `architecture`(架构),
`context_length`(上下文长度), `mmlu`(能力评分), `humaneval`(代码能力),
`is_open_source`(是否开源true/false), `license`(许可证),
`input_price`(输入价格), `output_price`(输出价格), `publish_date`(发布日期),
`description`(简介), `visible`, `is_pinned`
- **GPU** → `/api/gpus` 字段:name, manufacturer, memory_gb, cuda_cores, tensor_cores, price_usd, release_year, visible, is_pinned
- **CPU** → `/api/cpus` 字段:name, manufacturer, cores, threads, base_clock, boost_clock, price_usd, visible, is_pinned
- 其他动态分类 → `/api/items/{category_id}`
### 2. 从内容库获取数据内容
根据上述数据ID,从内容库中获取每条数据的完整内容。
根据上述数据ID,从内容库中获取每条数据的完整内容和URL
### 3. 整理产品参数
根据获取到的内容,提取并整理产品的各项参数,严格按照API文档中定义的字段格式填充。
根据获取到的内容,提取并整理产品的各项参数,严格按照字段格式填充。
**提取原则:**
- 优先从内容中提取精确型号对应的参数(参数量、上下文长度、性能指标等)
- 如果找不到型号级参数,**品牌/系列级信息也可用于填充基础字段**
- `organization`:厂商/组织(如 DeepSeek
- `name`:产品名称(保留原始名称)
- `publish_date`:如内容提及系列发布时间可提取
- `series`:所属系列(如 V4 系列)
**提取原则(重要)**
- 优先提取**型号级精确参数**:参数量、上下文长度、能力指标、价格、发布日期等
- 找不到型号级参数,**品牌/系列级信息用于填充基础字段**:organization、series、publish_date
- **能力表现**:如内容提及 mmlu/benchmark/评测分数、代码能力、推理速度等务必提取
- **价格**:如内容提及 API 定价(每百万token价格)、硬件价格等务必提取
- **开源信息**:如内容提及开源/开源协议务必提取 is_open_source/license
- 不要编造或推测任何参数,只使用内容中实际存在的信息
- 找不到的字段留空即可
- 找不到的字段留空即可**不要强行编造**
### 4. 格式检查
对生成的数据进行以下检查:
- 必填字段是否齐全(name必须有值)
- 字段类型是否正确(数字字段不能是字符串,布尔字段必须是true/false)
- 字段值是否合理(如参数量应为正数,价格应为正数等)
- 必填字段:name 必须有值
- 数字字段必须是数字(context_length/mmlu/价格等),布尔字段必须是 true/false
- 如果发现格式问题,请修正后重新输出
### 5. 输出要求
请以JSON格式输出最终的产品数据(不要提交,只输出数据):
请以JSON格式输出(不要提交,只输出数据):
```json
{
"success": true,
"product_data": {
"name": "产品名称",
"field1": "值1",
"field2": "值2",
"organization": "厂商",
"parameters": "70B",
"context_length": 4096,
"mmlu": 85.5,
"publish_date": "2024-01-01",
"is_open_source": true,
"input_price": 1.0,
"output_price": 2.0,
"visible": true,
"is_pinned": false
},
"data_sources": [数据ID列表],
"data_sources": [
{"id": 1, "title": "来源标题", "url": "https://来源链接", "used_for": "该来源提供了哪些字段"}
],
"format_check": {
"passed": true,
"issues_found": [],
@@ -68,8 +78,8 @@
```
**注意:**
- 严格按照API文档的字段定义填充数据
- 不要编造或推测任何参数,只使用内容中实际存在的信息
- 如果某些字段无法从内容中提取,可以留空或填写默认值
- `data_sources` 必须是数组,每项包含 `id`、`title`、`url`(原文链接)、`used_for`(该来源提供了哪些字段)
- 不要编造或推测任何参数,只使用内容中实际存在的信息
- 如果某些字段无法从内容中提取,可以留空
- 不要执行任何提交操作,只生成并输出数据
- 确保输出的JSON格式正确,可以被程序解析