Jelajahi Sumber

v0.0.4 优化时效性审查

ZengChao 1 bulan lalu
induk
melakukan
92a2e88d23

+ 3 - 2
core/construction_review/component/reviewers/timeliness_basis_reviewer.py

@@ -527,7 +527,8 @@ async def review_all_basis_async(text: str, max_concurrent: int = 4) -> List[Lis
 if __name__ == "__main__":
     # 简单测试
     test_text = """
-《中华人民共和国水土保持法》2010年12月25日修订
-《中华人民共和国环境保护法》2021年修订版
+使用要求:按照《坠落防护水平生命线装置》GB 38454 或《电力高处作业防坠
+器》DL/T 1147 中的规定进行现场实验,实验结果符合《坠落防护挂点装置》GB
+30862 中的规定
     """
     result = asyncio.run(review_all_basis_async(test_text))

+ 7 - 6
core/construction_review/component/reviewers/utils/reference_matcher.py

@@ -29,16 +29,17 @@ SYSTEM = """
 你是【规范文件匹配助手】。
 
 【任务】
-从参考规范库中查找每个审查规范的匹配信息。
-
-【重要说明(必须严格遵守)】
-- 不用管格式问题,灵活判断编号是否一致
+从参考规范库中查找每个审查规范的匹配信息。参考文件()中的是编号
 
 【输出要求】
 - 为每个审查规范输出一个匹配结果
 - 确保输出数量与输入的审查规范数量一致
 - review_item 必须与输入完全一致
 - exact_match_info 和 same_name_current 可以为空字符串
+
+【限制】
+- 编号缺乏年份信息时,不视为完全匹配
+- 忽略格式问题,忽略空格和符号
 """
 
 HUMAN = """
@@ -54,7 +55,7 @@ HUMAN = """
    - 完全找不到任何相关文件,返回 false
 
 3. **has_exact_match**(是否有名称编号都相同的文件)
-   - 找到名称和编号完全一致的文件,返回 true
+   - 找到名称且编号相同的文件,返回 true
    - 否则返回 false
 
 4. **exact_match_info**(名称编号相同的文件及状态)
@@ -178,4 +179,4 @@ if __name__ == "__main__":
 
     result = asyncio.run(match_reference_files(reference_file, review_file))
     print("\n匹配结果:")
-    print(result)
+    print(result)