MCPcopy Create free account
hub / github.com/KnowledgeXLab/LeanRAG / parse_description_response

Method parse_description_response

CommonKG/triple.py:91–112  ·  view source on GitHub ↗

解析描述响应,生成六元组字符串

(self, triple_str:str, response:str)

Source from the content-addressed store, hash-verified

89
90 @classmethod
91 def parse_description_response(self, triple_str:str, response:str):
92 """解析描述响应,生成六元组字符串"""
93 # 处理制表符分隔的字符串并转换格式
94 parts = triple_str.split('\t')
95 cleaned_parts = [part.strip('<').strip('>').strip() for part in parts] # 去除尖括号和空格
96
97 try:
98 data = json.loads(response.strip())
99
100 # 提取描述信息
101 subject_desc = data.get('subject', {}).get('description', '')
102 relation_desc = data.get('relation', {}).get('description', '')
103 object_desc = data.get('object', {}).get('description', '')
104
105 head, relation, tail = cleaned_parts[0], cleaned_parts[1], cleaned_parts[2]
106
107 # 组装六元组格式
108 return f"<{head}>\t<{subject_desc}>\t<{relation}>\t<{relation_desc}>\t<{tail}>\t<{object_desc}>"
109
110 except (json.JSONDecodeError, KeyError) as e:
111 logger.error(f"Parse description response failed: {str(e)}, raw response: {response}")
112 return triple_str
113 @classmethod
114 def parse_description_plustype_response(self, triple_str:str, response:str):
115 """解析描述响应,生成六元组字符串"""

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected