|
|
@@ -78,11 +78,12 @@ $system$
|
|
|
|
|
|
约束:
|
|
|
|
|
|
-- `source_kind` 只能按真实来源填写:`element` / `category` / `co_occurrence` / `pattern_itemset`
|
|
|
-- `source_tool` 必须是支撑本条需求的主要工具名
|
|
|
-- `source_post_id` 必须来自 `get_itemset_detail` 返回的 `post_ids` 或 `get_post_elements` 查询过的帖子;没有明确帖子时不要编造
|
|
|
-- `case_ids` 按 `source_kind` 分组,例如 `{"pattern_itemset": ["post_id"]}`;没有 Case seed 时填空对象或对应空数组
|
|
|
-- `itemset_ids/category_ids/seed_terms` 只能来自工具返回或当前 DemandItem 的真实元素/分类词,不允许凭空补 ID
|
|
|
+- **本次 MVP 最终可写入的 DemandItem 只允许 `source_kind="pattern_itemset"`**。不要把 `element` / `category` / `co_occurrence` 作为最终 `evidence_refs.source_kind`,这些只能用于探索,不能用于创建需求。
|
|
|
+- `source_tool` 必须填写 `get_itemset_detail`,因为最终证据必须来自项集详情。
|
|
|
+- `itemset_ids` 必须来自 `get_frequent_itemsets` 返回的真实项集 ID,并且在创建需求前必须用 `get_itemset_detail` 查询过。
|
|
|
+- `source_post_id` 必须从 `get_itemset_detail` 返回的 `post_ids` 中选择一个真实帖子 ID;没有明确帖子时不要创建该 DemandItem。
|
|
|
+- `case_ids` 固定按 pattern 来源表达,例如 `{"pattern_itemset": ["source_post_id"]}`。
|
|
|
+- `seed_terms` 只能来自 `get_itemset_detail` 返回的 items 中的 `element_name` / `category_path` / 分类名称,或当前 DemandItem 的真实元素/分类词,不允许凭空补 ID 或词。
|
|
|
|
|
|
## 工具概览
|
|
|
|
|
|
@@ -112,7 +113,9 @@ $system$
|
|
|
- category 级 item 必须来自分类树的真实节点(通过 `search_categories` 查到对应的 `category_id`),不允许凭空编造分类
|
|
|
- 正确的创建顺序:先 element 后 category
|
|
|
- result 中出现的每一个具体内容,都必须有对应的 DemandItem
|
|
|
-- 每个 DemandItem 都必须包含 `evidence_refs`;如果证据来自 pattern,必须优先用 `get_itemset_detail` 拿到 `itemset_ids`、`post_ids`,并把一个真实 `post_id` 写入 `source_post_id`
|
|
|
+- 每个 DemandItem 都必须包含 `evidence_refs`,且 `evidence_refs.source_kind` 必须是 `pattern_itemset`
|
|
|
+- 创建 DemandItem 前,必须先调用 `get_frequent_itemsets` 找到候选项集,再调用 `get_itemset_detail` 拿到 `itemset_ids`、`items`、`post_ids`,并把一个真实 `post_id` 写入 `source_post_id`
|
|
|
+- 不允许用 `search_elements` / `search_categories` / 共现查询结果直接创建最终 DemandItem;这些工具只能辅助理解和筛选,最终创建时仍必须绑定到一个经过 `get_itemset_detail` 验证的 itemset
|
|
|
- `evidence_refs` 是候选引用,不要写 `source_certainty=db_validated` 或 `validation_status=passed`,最终校验由代码完成
|
|
|
- `search_elements` / `search_categories`只能用于查询单元素/单分类,不能用于查询完整树,完整树查询用`get_category_tree`
|
|
|
|
|
|
@@ -131,6 +134,44 @@ $user$
|
|
|
3. 组合需求,分类的起点必须需要先通过`get_frequent_itemsets`工具,搜索频繁出现的分类组合,根据支持度进行移除和保留
|
|
|
4. 生成的需求,必须要有实际的含义,要能体现出「%merge_level2%」,要从需求中可以了解到「%merge_level2%」,不符合要求的词,给出理由直接过滤掉
|
|
|
|
|
|
+## 本地 exact evidence 输出流程(必须遵守)
|
|
|
+
|
|
|
+本次输出要给下游 ContentFindAgent 做证据链回溯,所以最终需求必须能被代码校验成 `evidence_pack`。
|
|
|
+
|
|
|
+请按以下顺序工作:
|
|
|
+
|
|
|
+1. 先用 `get_weight_score_topn` / 分类树 / 搜索工具理解「%merge_level2%」的高价值元素和分类。
|
|
|
+2. 再用 `get_frequent_itemsets` 查找能支撑这些需求的频繁项集。
|
|
|
+3. 对准备采用的每个项集,必须调用 `get_itemset_detail(itemset_ids=[...])`。
|
|
|
+4. 只从 `get_itemset_detail` 返回的详情中选择需求证据:
|
|
|
+ - `itemset_ids`: 当前项集 ID。
|
|
|
+ - `source_post_id`: 从该项集 `post_ids` 中选择一个真实帖子。
|
|
|
+ - `seed_terms`: 从该项集 `items` 里的分类路径、分类名或元素名提取。
|
|
|
+5. 调用 `create_demand_item` 或 `create_demand_items` 时,每条必须使用如下结构:
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "element_names": ["需求词或短语"],
|
|
|
+ "reason": "为什么这个需求成立,并说明它来自哪个 itemset 的哪些 items",
|
|
|
+ "desc": "用户希望看到什么内容",
|
|
|
+ "type": "pattern",
|
|
|
+ "evidence_refs": {
|
|
|
+ "source_kind": "pattern_itemset",
|
|
|
+ "source_tool": "get_itemset_detail",
|
|
|
+ "itemset_ids": [123],
|
|
|
+ "source_post_id": "55157577",
|
|
|
+ "case_ids": {
|
|
|
+ "pattern_itemset": ["55157577"]
|
|
|
+ },
|
|
|
+ "seed_terms": ["从 itemset items 中提取的真实词"]
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+如果某个候选需求没有可绑定的 `pattern_itemset`、`itemset_ids` 或 `source_post_id`,直接丢弃,不要为了凑数量改用 `element` / `category` / `co_occurrence` 证据。
|
|
|
+
|
|
|
+完成 `create_demand_items` 且工具返回成功后,用一句话总结完成情况即可,不要再调用 `write_execution_summary` 或输出长篇执行报告。
|
|
|
+
|
|
|
## 要求
|
|
|
|
|
|
1. 共现查询的地点必须来自于高权重分类,不能直接从树上寻找分类
|