fruitpicker01 commited on
Commit
c7690ff
·
verified ·
1 Parent(s): 9ab85ee

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -3
app.py CHANGED
@@ -228,13 +228,18 @@ class LightweightRAGSystem:
228
  # Подготавливаем контекст
229
  context_parts = []
230
  for i, chunk in enumerate(context_chunks[:self.final_chunks_count]):
231
- context_parts.append(f"Фрагмент {i+1} (страница {chunk['page']}):\n{chunk['text']}")
 
 
232
 
233
  context = "\n\n".join(context_parts)
234
 
 
 
 
235
  prompt = f"""Ты - эксперт по анализу финансовых отчетов. Ответь на вопрос пользователя на основе предоставленного контекста из годового отчета ПАО Сбербанк 2023.
236
 
237
- ВОПРОС: {query}
238
 
239
  КОНТЕКСТ ИЗ ОТЧЕТА:
240
  {context}
@@ -256,7 +261,11 @@ class LightweightRAGSystem:
256
  temperature=0.1
257
  )
258
 
259
- return response.choices[0].message.content.strip()
 
 
 
 
260
 
261
  except Exception as e:
262
  return f"❌ Ошибка генерации ответа: {str(e)}"
 
228
  # Подготавливаем контекст
229
  context_parts = []
230
  for i, chunk in enumerate(context_chunks[:self.final_chunks_count]):
231
+ # Очищаем текст от проблемных символов
232
+ clean_text = chunk['text'].encode('utf-8', errors='ignore').decode('utf-8')
233
+ context_parts.append(f"Фрагмент {i+1} (страница {chunk['page']}):\n{clean_text}")
234
 
235
  context = "\n\n".join(context_parts)
236
 
237
+ # Очищаем запрос
238
+ clean_query = query.encode('utf-8', errors='ignore').decode('utf-8')
239
+
240
  prompt = f"""Ты - эксперт по анализу финансовых отчетов. Ответь на вопрос пользователя на основе предоставленного контекста из годового отчета ПАО Сбербанк 2023.
241
 
242
+ ВОПРОС: {clean_query}
243
 
244
  КОНТЕКСТ ИЗ ОТЧЕТА:
245
  {context}
 
261
  temperature=0.1
262
  )
263
 
264
+ answer = response.choices[0].message.content
265
+ if answer:
266
+ return answer.strip()
267
+ else:
268
+ return "Получен пустой ответ от модели"
269
 
270
  except Exception as e:
271
  return f"❌ Ошибка генерации ответа: {str(e)}"