fruitpicker01 commited on
Commit
504f370
1 Parent(s): a379b83

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -7
app.py CHANGED
@@ -178,9 +178,9 @@ def generate_message_mistral_generate(prompt, max_retries=5):
178
  try:
179
  chat_response = client_mistral_generate.chat.complete(
180
  model="mistral-large-latest",
181
- temperature=0.8,
182
  min_tokens=80,
183
- max_tokens=110,
184
  messages=[
185
  {
186
  "role": "user",
@@ -1024,22 +1024,27 @@ def check_no_word_repetitions(message):
1024
  ])
1025
 
1026
  # Разбиваем текст на слова, удаляя знаки препинания
1027
- words = re.findall(r'\b\w+\b', message.lower())
1028
 
1029
  # Словарь для хранения нормализованных форм слов
1030
  normalized_words = {}
1031
 
1032
  for word in words:
1033
  if word not in ignore_words:
1034
- # Получаем нормальную форму слова
1035
- normal_form = morph.parse(word)[0].normal_form
 
 
 
 
 
1036
 
1037
  # Если слово уже встречалось, возвращаем False
1038
- if normal_form in normalized_words:
1039
  return False
1040
 
1041
  # Добавляем слово в словарь
1042
- normalized_words[normal_form] = True
1043
 
1044
  # Если мы дошли до этой точки, повторов не было
1045
  return True
 
178
  try:
179
  chat_response = client_mistral_generate.chat.complete(
180
  model="mistral-large-latest",
181
+ temperature=0.9,
182
  min_tokens=80,
183
+ max_tokens=120,
184
  messages=[
185
  {
186
  "role": "user",
 
1024
  ])
1025
 
1026
  # Разбиваем текст на слова, удаляя знаки препинания
1027
+ words = re.findall(r'\b\w+(?:-\w+)*\b', message.lower()) # Учитываем составные слова с дефисом
1028
 
1029
  # Словарь для хранения нормализованных форм слов
1030
  normalized_words = {}
1031
 
1032
  for word in words:
1033
  if word not in ignore_words:
1034
+ # Проверяем, является ли слово составным (например, "бизнес-карта")
1035
+ if '-' in word:
1036
+ # Обрабатываем составные слова как целые фразы
1037
+ base_word = word
1038
+ else:
1039
+ # Для обычных слов применяем морфологический анализ
1040
+ base_word = morph.parse(word)[0].normal_form
1041
 
1042
  # Если слово уже встречалось, возвращаем False
1043
+ if base_word in normalized_words:
1044
  return False
1045
 
1046
  # Добавляем слово в словарь
1047
+ normalized_words[base_word] = True
1048
 
1049
  # Если мы дошли до этой точки, повторов не было
1050
  return True