ekaterina-simonova commited on
Commit
9305e87
·
verified ·
1 Parent(s): 8553d71

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -11
app.py CHANGED
@@ -77,18 +77,17 @@ def search_in_csv(question):
77
  logger.info("Ответ не найден в таблице")
78
  return None
79
 
 
80
  # ========== Полный оригинальный промпт ==========
81
  system_prompt = """
82
  Ты - эксперт по поиску нормативных требований в технических документах. Твоя задача - находить актуальные и точные ответы в технической документации, такой как приложенная таблица, справочник под редакцией Клюева ВВ 'Неразрушающий контроль', ГОСТы, СанПиНы, методики и руководства, доступные в свободном доступе и в предобучении модели.
83
- Когда пользователь задает вопрос, сначала определяй, нужен ли общий ответ по содержанию документа или точная цитата и параметры. Если это не указано в запросе, уточняй у пользователя.
84
-
85
- Если точный документ не указан в вопросе, то ВСЕГДА сначала проверяй в приложенной таблице, затем в справочнике Клюева В.В. 'Неразрушающий контроль'. После Клюева обязательно ищи по другим ГОСТам и официальным документам по:
86
- - Метрологии
87
- - Методам контроля
88
- - Погрешностям измерений
89
- - Дефектоскопии
90
 
91
- Всегда точно указывай точный источник информации для ответа - точный номер госта, документа. Если ответ содержится в нескольких документах, выведи в ответе их все. Если данные в разных документах предоставляют противоречащую друг другу информацию по заданному вопросу, выведи это в ответ, вместе с наванием документов и содержанием. Поясни где противоречие. Пользователь сам выберет подходящий ответ.
92
 
93
  Если документ устарел и есть новый, но в нём нет ответа на вопрос, указывай этот факт в ответе.
94
 
@@ -244,16 +243,18 @@ if st.button("Найти ответ"):
244
  # Сохраняем в историю (для контекста)
245
  st.session_state.chat_history.append({
246
  "question": user_input,
247
- "answer": answer if sheet_answer else correct_answer
248
  })
249
  st.session_state.chat_history = st.session_state.chat_history[-3:]
250
 
251
  # Логируем
252
- save_log(user_input, answer if sheet_answer else correct_answer)
253
 
254
  # Вывод
255
  st.markdown(f"### Вопрос:\n{user_input}")
256
- st.markdown(f"### Ответ:\n{answer if sheet_answer else correct_answer}")
 
 
257
 
258
  # Админ-панель
259
  if st.checkbox("Показать логи (админ)"):
@@ -270,3 +271,4 @@ if st.checkbox("Показать логи (админ)"):
270
  except FileNotFoundError:
271
  st.warning("Логи пока не созданы")
272
 
 
 
77
  logger.info("Ответ не найден в таблице")
78
  return None
79
 
80
+
81
  # ========== Полный оригинальный промпт ==========
82
  system_prompt = """
83
  Ты - эксперт по поиску нормативных требований в технических документах. Твоя задача - находить актуальные и точные ответы в технической документации, такой как приложенная таблица, справочник под редакцией Клюева ВВ 'Неразрушающий контроль', ГОСТы, СанПиНы, методики и руководства, доступные в свободном доступе и в предобучении модели.
84
+ Если точный документ не указан в вопросе, то ВСЕГДА
85
+ 1. Сначала ищи ответ в приложенной таблице.
86
+ 2. Если нет в таблице - ищи в справочнике Клюева В.В.
87
+ 3. Только затем используй другие источники.
88
+ 4. Никогда не упоминай приложенную таблицу в ответе в качестве источника.
 
 
89
 
90
+ Всегда точно указывай источник информации для ответа - точный номер госта, документа. Если ответ содержится в нескольких документах, выведи в ответе их все. Если данные в разных документах предоставляют противоречащую друг другу информацию по заданному вопросу, выведи это в ответ, вместе с наванием документов и содержанием. Поясни где противоречие. Пользователь сам выберет подходящий ответ.
91
 
92
  Если документ устарел и есть новый, но в нём нет ответа на вопрос, указывай этот факт в ответе.
93
 
 
243
  # Сохраняем в историю (для контекста)
244
  st.session_state.chat_history.append({
245
  "question": user_input,
246
+ "answer": sheet_answer if sheet_answer else correct_answer
247
  })
248
  st.session_state.chat_history = st.session_state.chat_history[-3:]
249
 
250
  # Логируем
251
+ save_log(user_input, sheet_answer if sheet_answer else correct_answer)
252
 
253
  # Вывод
254
  st.markdown(f"### Вопрос:\n{user_input}")
255
+ st.markdown(f"### Ответ:\n{sheet_answer if sheet_answer else correct_answer}")
256
+
257
+
258
 
259
  # Админ-панель
260
  if st.checkbox("Показать логи (админ)"):
 
271
  except FileNotFoundError:
272
  st.warning("Логи пока не созданы")
273
 
274
+