Procházet zdrojové kódy

v0.0.4-debug
- 优化非专业性审查调用RAG召回的情况

WangXuMing před 2 měsíci
rodič
revize
9bdd2ca5c0

+ 5 - 5
config/config.ini

@@ -29,8 +29,8 @@ QWEN_API_KEY=ms-9ad4a379-d592-4acd-b92c-8bac08a4a045
 
 [ai_review]
 # 调试模式配置
-MAX_REVIEW_UNITS=1
-REVIEW_MODE=first
+MAX_REVIEW_UNITS=20
+REVIEW_MODE=all
 # REVIEW_MODE=all/random/first
 
 
@@ -45,11 +45,11 @@ HOST = 0.0.0.0
 LAUNCH_PORT = 8002
 
 [redis]
-REDIS_URL=redis://127.0.0.1:12001/0
+REDIS_URL=redis://127.0.0.1:6379/0
 REDIS_HOST=127.0.0.1
-REDIS_PORT=12001
+REDIS_PORT=6379
 REDIS_DB=0
-; REDIS_PASSWORD=123456
+REDIS_PASSWORD=123456
 REDIS_MAX_CONNECTIONS=50
 
 [log]

+ 10 - 5
core/construction_review/component/ai_review_engine.py

@@ -344,11 +344,16 @@ class AIReviewEngine(BaseReviewer):
         logger.info(f"开始技术性合规检查,内容长度: {len(review_content)}")
 
         # 先执行RAG增强检索,获取相关标准文档作为参考
-        rag_result = self.rag_enhanced_check(unit_content)
-        review_references = rag_result.get('text_content', '')
-        reference_source = rag_result.get('file_name', '')
-
-
+        logger.info(f"检查审查项列表:{self.task_info.get_review_config_list():}")  
+        if 'non_parameter_compliance_check' in self.task_info.get_review_config_list() or 'parameter_compliance_check' in self.task_info.get_review_config_list():
+            logger.info("执行专业性审查,开始RAG增强检索")
+            rag_result = self.rag_enhanced_check(unit_content)
+            review_references = rag_result.get('text_content', '')
+            reference_source = rag_result.get('file_name', '')
+        else:
+            logger.info("未执行专业性审查,跳过RAG增强检索")
+            review_references = None
+            reference_source = None
         async def check_with_semaphore(check_func, **kwargs):
             async with self.semaphore:
                 return await check_func(**kwargs)

+ 2 - 2
core/construction_review/component/document_processor.py

@@ -517,8 +517,8 @@ class DocumentProcessor:
                 # 处理原始大纲,按章节层级结构化 - 复用doc_worker的逻辑
                 result['outline'] = self._create_outline_from_toc(raw_content.get('toc_info', {}))
 
-            # with open(rf"temp\document_temp\文档切分预处理结果.json", 'w', encoding='utf-8') as f:
-            #     json.dump(result, f, ensure_ascii=False, indent=4)
+            with open(rf"temp\document_temp\文档切分预处理结果.json", 'w', encoding='utf-8') as f:
+                json.dump(result, f, ensure_ascii=False, indent=4)
             return result
 
         except Exception as e: