bvd757 commited on
Commit
cbc6a55
·
1 Parent(s): 21ba2b3
Files changed (2) hide show
  1. app.py +6 -46
  2. search_errors_logic.py +9 -1
app.py CHANGED
@@ -9,48 +9,6 @@ import mammoth
9
  from io import BytesIO
10
 
11
  is_java_installed = False
12
- prompt = """
13
- Ты должен писать комментарии об ошибках в тексте.
14
- Тебе дан кусок текст, в котором есть ошибка, контекст, в котором стоит это слово и сообщение об ошибке. Твоя задача - кратко описать суть ошибки и, если необходимо, исправить её.
15
- Исправляй только ту ошибку, на которую указывает сообщение. Отвечай на русском языке.
16
-
17
- ### Пример 1:
18
- Кусок текста:
19
- "кросивую"
20
-
21
- Сообщение об ошибке:
22
- "Возможно найдена орфографическая ошибка."
23
-
24
- Текст:
25
- "...т! Сегодня я был в парке и встретил там кросивую собаку. Она повиляла хвостом и побежа..."
26
-
27
- Твой ответ:
28
- Орфографическая ошибка в слове "кросивую" - правильно "красивую".
29
-
30
- ### Пример 2:
31
- Кусок текста:
32
- " "
33
-
34
- Сообщение об ошибке:
35
- "Повтор пробела."
36
-
37
- Текст:
38
- "...ретил там кросивую собаку. Она повиляла хвостом и побежала к речке. Я решил что ..."
39
-
40
- Твой ответ:
41
- Обнаружен повтор пробела между словами.
42
-
43
- Теперь твоя очередь:
44
- Кусок текста:
45
- "{}"
46
-
47
- Сообщение об ошибке:
48
- "{}"
49
-
50
- Текст:
51
- "{}"
52
- """
53
-
54
 
55
  def install_java():
56
  global is_java_installed
@@ -69,8 +27,8 @@ def install_java():
69
  def load_assets():
70
  openai.api_key = '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'
71
  install_java()
72
- tool = language_tool_python.LanguageTool('ru-RU',
73
- language_tool_download_version="6.1")
74
  return tool
75
 
76
 
@@ -81,8 +39,10 @@ def load_assets():
81
  # full_text.append(para.text)
82
  # return "\n".join(full_text)
83
  def extract_text_from_docx(file):
84
- result = mammoth.convert_to_markdown(file)
85
- return result.value
 
 
86
 
87
 
88
  def main():
 
9
  from io import BytesIO
10
 
11
  is_java_installed = False
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12
 
13
  def install_java():
14
  global is_java_installed
 
27
  def load_assets():
28
  openai.api_key = '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'
29
  install_java()
30
+ #tool = language_tool_python.LanguageTool('ru-RU', language_tool_download_version="6.1")
31
+ tool = None
32
  return tool
33
 
34
 
 
39
  # full_text.append(para.text)
40
  # return "\n".join(full_text)
41
  def extract_text_from_docx(file):
42
+ text = mammoth.convert_to_markdown(file).value
43
+ #for symbol in ".,!?()[]:;":
44
+ # text = text.replace(f"\{symbol}", symbol)
45
+ return text
46
 
47
 
48
  def main():
search_errors_logic.py CHANGED
@@ -3,7 +3,8 @@ from openai import OpenAI
3
  import difflib
4
 
5
  prompt_fix_text_gpt = """
6
- Исправь ошибки в данном тексте. Жаргонизмы считаются ошибками, приемлим только официальный стиль.
 
7
  Исправляй грамматические, пунктуационные и орфоргафические ошибки.
8
  Логические, лексические, стилистические ошибки, а также ошибки форматирования (напрмер неправильные переносы строки) ошибками не считаются!!! Их исправлять не надо
9
  Буква "е" вместо буквы "ё" не считается ошибкой.
@@ -172,6 +173,13 @@ def add_comments_to_text(text, errors, add_errors=False):
172
  error['start'] += shift
173
  error['end'] += shift
174
  inp = f"({i})"
 
 
 
 
 
 
 
175
  if add_errors:
176
  inp = inp[:-1] + ' - ' + error['message'] + ')'
177
  text = text[:error['end']] + inp + text[error['end']:]
 
3
  import difflib
4
 
5
  prompt_fix_text_gpt = """
6
+ Исправь ошибки в данном тексте. Текст в makrdown и должен в результате остаться в markdown.
7
+ Жаргонизмы считаются ошибками, приемлим только официальный стиль.
8
  Исправляй грамматические, пунктуационные и орфоргафические ошибки.
9
  Логические, лексические, стилистические ошибки, а также ошибки форматирования (напрмер неправильные переносы строки) ошибками не считаются!!! Их исправлять не надо
10
  Буква "е" вместо буквы "ё" не считается ошибкой.
 
173
  error['start'] += shift
174
  error['end'] += shift
175
  inp = f"({i})"
176
+
177
+ end_place = error["end"]
178
+ for i in range(end_place, end_place - 5, -1):
179
+ symbol = text[i - 1]
180
+ if symbol.isalpha() or symbol in ",.!?:;":
181
+ break
182
+ error["end"] -= 1
183
  if add_errors:
184
  inp = inp[:-1] + ' - ' + error['message'] + ')'
185
  text = text[:error['end']] + inp + text[error['end']:]