@@ -160,7 +160,6 @@ def get_column_value(column_name: str, value: Any) -> Any:
160160 try :
161161 return json .loads (value )
162162 except json .JSONDecodeError :
163- # 如果JSON解析失败,返回原始字符串
164163 return value
165164 else :
166165 return value
@@ -171,7 +170,6 @@ def get_column_value(column_name: str, value: Any) -> Any:
171170 try :
172171 return json .loads (value )
173172 except json .JSONDecodeError :
174- # 如果JSON解析失败,返回原始字符串
175173 return value
176174 else :
177175 return value
@@ -194,18 +192,16 @@ def get_default_value(column_name: str) -> Any:
194192
195193def get_value_str (value : Any ) -> str :
196194 if isinstance (value , str ):
197- # 对字符串进行额外的清理,确保不会导致JSON解析错误
198- cleaned_str = value .replace ('\\ ' , '\\ \\ ' ) # 转义反斜杠
199- cleaned_str = cleaned_str .replace ('\n ' , '\\ n' ) # 转义换行符
200- cleaned_str = cleaned_str .replace ('\r ' , '\\ r' ) # 转义回车符
201- cleaned_str = cleaned_str .replace ('\t ' , '\\ t' ) # 转义制表符
195+ cleaned_str = value .replace ('\\ ' , '\\ \\ ' )
196+ cleaned_str = cleaned_str .replace ('\n ' , '\\ n' )
197+ cleaned_str = cleaned_str .replace ('\r ' , '\\ r' )
198+ cleaned_str = cleaned_str .replace ('\t ' , '\\ t' )
202199 return f"'{ escape_string (cleaned_str )} '"
203200 elif isinstance (value , bool ):
204201 return "true" if value else "false"
205202 elif value is None :
206203 return "NULL"
207204 elif isinstance (value , (list , dict )):
208- # 确保JSON字符串中的特殊字符被正确转义
209205 json_str = json .dumps (value , ensure_ascii = False )
210206 return f"'{ escape_string (json_str )} '"
211207 else :
@@ -1256,7 +1252,6 @@ def get(self, chunkId: str, indexName: str, knowledgebaseIds: list[str]) -> dict
12561252 return self ._row_to_entity (row , fields = list (res .keys ()))
12571253 except json .JSONDecodeError as e :
12581254 logger .error (f"JSON decode error when getting chunk { chunkId } : { str (e )} " )
1259- # 如果JSON解析失败,尝试返回一个基本的chunk信息
12601255 return {
12611256 "id" : chunkId ,
12621257 "error" : f"Failed to parse chunk data due to invalid JSON: { str (e )} "
@@ -1297,13 +1292,11 @@ def insert(self, documents: list[dict], indexName: str, knowledgebaseId: str = N
12971292 cleaned_v = []
12981293 for vv in v :
12991294 if isinstance (vv , str ):
1300- # 清理可能导致JSON解析错误的特殊字符
13011295 cleaned_str = vv .strip ()
1302- # 移除或替换可能导致JSON解析错误的字符
1303- cleaned_str = cleaned_str .replace ('\\ ' , '\\ \\ ' ) # 转义反斜杠
1304- cleaned_str = cleaned_str .replace ('\n ' , '\\ n' ) # 转义换行符
1305- cleaned_str = cleaned_str .replace ('\r ' , '\\ r' ) # 转义回车符
1306- cleaned_str = cleaned_str .replace ('\t ' , '\\ t' ) # 转义制表符
1296+ cleaned_str = cleaned_str .replace ('\\ ' , '\\ \\ ' )
1297+ cleaned_str = cleaned_str .replace ('\n ' , '\\ n' )
1298+ cleaned_str = cleaned_str .replace ('\r ' , '\\ r' )
1299+ cleaned_str = cleaned_str .replace ('\t ' , '\\ t' )
13071300 cleaned_v .append (cleaned_str )
13081301 else :
13091302 cleaned_v .append (vv )
0 commit comments