From c099e6662b8a6e320ac314d31eda9b40455e5aa7 Mon Sep 17 00:00:00 2001 From: lyg <1543117173@qq.com> Date: 星期四, 22 五月 2025 09:27:37 +0800 Subject: [PATCH] 修改指令json生成相关提示词和代码逻辑 --- knowledgebase/doc/doc_processor.py | 45 +++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 41 insertions(+), 4 deletions(-) diff --git a/knowledgebase/doc/doc_processor.py b/knowledgebase/doc/doc_processor.py index 866246b..28092ed 100644 --- a/knowledgebase/doc/doc_processor.py +++ b/knowledgebase/doc/doc_processor.py @@ -50,7 +50,33 @@ resp = llm.invoke([msg]) Log.info(f'璇嗗埆缁撴灉锛歿resp.content}') return resp.content - + def get_tc_info(self, paragraph: ParagraphInfo): + if self.doc_type not in [DocType.tc_format]: + return '' + prompt = HumanMessagePromptTemplate.from_template(''' +# 鎸囦护 +璇蜂粠涓嬮潰鐨勬枃鏈腑璇嗗埆鎸囦护淇℃伅锛屽鏋滆瘑鍒け璐ヤ笉瑕佽緭鍑轰换浣曞瓧绗︺�� +鎸囦护淇℃伅鍖呮嫭锛氭寚浠ゅ悕绉般�� +# 璇嗗埆瑙勫垯 +- 鏂囨湰鍐呭涓洪仴鎺ф寚浠ゆ暟鎹煙鎴栭仴鎺ф寚浠ゅ簲鐢ㄦ暟鎹殑瀹氫箟鎻忚堪銆� +# 绾︽潫 +- 濡傛灉鏂囨湰鍐呭鏄洰褰曞垯涓嶈杈撳嚭浠讳綍瀛楃锛� +- 鎸囦护鍚嶇О鍦ㄧ珷鑺傛爣棰樹腑锛屾彁鍙栨寚浠ゅ悕绉拌鍜屾枃鏈腑鐨勪弗鏍间竴鑷达紱 +- 濡傛灉娌℃湁璇嗗埆鍒版寚浠や俊鎭笉瑕佽緭鍑轰换浣曞瓧绗︼紱 +- 璇嗗埆澶辫触锛屼笉瑕佽緭鍑轰换浣曞唴瀹癸紝鍖呮嫭瑙i噴鎬ф枃鏈紱 +- 杈撳嚭json鏍煎紡銆� +# 绀轰緥 - 璇嗗埆鍒版寚浠� +{{ + "name": "xxx" +}} +# 绀轰緥 - 鏈瘑鍒埌鏁版嵁鍖� +"" +# 鏂囨湰鍐呭锛� +{text} +''') + chain = prompt.prompt | llm | JsonOutputParser() + resp = chain.invoke({"text": paragraph.full_text}) + return resp def get_tm_pkt_info(self, paragraph: ParagraphInfo): if self.doc_type not in [DocType.tm_outline, DocType.tm_pkt_design]: return '' @@ -99,9 +125,20 @@ e = doc_dbh.get_entity(entity) if e: entity.id = e.id - return e - doc_dbh.add_entity(entity) - Log.info(f"鏂板Entity锛歿entity.name}锛宨d锛歿entity.id}") + else: + doc_dbh.add_entity(entity) + Log.info(f"鏂板Entity锛歿entity.name}锛宨d锛歿entity.id}") + paragraph.entities.append(entity) + # 鑾峰彇鎸囦护淇℃伅 + cmd = self.get_tc_info(paragraph) + if cmd: + entity = TEntity(name=cmd['name'], type='鎸囦护鏍煎紡閰嶇疆', prompts='', doc_type='') + e = doc_dbh.get_entity(entity) + if e: + entity.id = e.id + else: + doc_dbh.add_entity(entity) + Log.info(f"鏂板Entity锛歿entity.name}锛宨d锛歿entity.id}") paragraph.entities.append(entity) def process(self): -- Gitblit v1.9.1