sashtech commited on
Commit
8013380
·
verified ·
1 Parent(s): c35eed6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -8
app.py CHANGED
@@ -37,6 +37,13 @@ def get_synonyms_nltk(word, pos):
37
  return [lemma.name() for lemma in lemmas]
38
  return []
39
 
 
 
 
 
 
 
 
40
  # Function to capitalize the first letter of sentences and proper nouns
41
  def capitalize_sentences_and_nouns(text):
42
  doc = nlp(text)
@@ -61,7 +68,6 @@ def correct_tense_errors(text):
61
  corrected_text = []
62
  for token in doc:
63
  if token.pos_ == "VERB" and token.dep_ in {"aux", "auxpass"}:
64
- # Replace with appropriate verb form
65
  lemma = wordnet.morphy(token.text, wordnet.VERB) or token.text
66
  corrected_text.append(lemma)
67
  else:
@@ -161,11 +167,7 @@ def correct_spelling(text):
161
  words = text.split()
162
  corrected_words = []
163
  for word in words:
164
- candidates = spell.candidates(word)
165
- if candidates:
166
- corrected_word = spell.candidates(word).pop()
167
- else:
168
- corrected_word = word
169
  corrected_words.append(corrected_word)
170
  return ' '.join(corrected_words)
171
 
@@ -206,9 +208,13 @@ def rephrase_with_synonyms(text):
206
 
207
  return ' '.join(rephrased_text)
208
 
209
- # Function to paraphrase and correct grammar
210
  def paraphrase_and_correct(text):
211
- paraphrased_text = capitalize_sentences_and_nouns(text) # Capitalize first to ensure proper noun capitalization
 
 
 
 
212
 
213
  # Apply grammatical corrections
214
  paraphrased_text = correct_article_errors(paraphrased_text)
 
37
  return [lemma.name() for lemma in lemmas]
38
  return []
39
 
40
+ # Function to remove redundant and meaningless words
41
+ def remove_redundant_words(text):
42
+ doc = nlp(text)
43
+ meaningless_words = {"actually", "basically", "literally", "really", "very", "just"}
44
+ filtered_text = [token.text for token in doc if token.text.lower() not in meaningless_words]
45
+ return ' '.join(filtered_text)
46
+
47
  # Function to capitalize the first letter of sentences and proper nouns
48
  def capitalize_sentences_and_nouns(text):
49
  doc = nlp(text)
 
68
  corrected_text = []
69
  for token in doc:
70
  if token.pos_ == "VERB" and token.dep_ in {"aux", "auxpass"}:
 
71
  lemma = wordnet.morphy(token.text, wordnet.VERB) or token.text
72
  corrected_text.append(lemma)
73
  else:
 
167
  words = text.split()
168
  corrected_words = []
169
  for word in words:
170
+ corrected_word = spell.correction(word)
 
 
 
 
171
  corrected_words.append(corrected_word)
172
  return ' '.join(corrected_words)
173
 
 
208
 
209
  return ' '.join(rephrased_text)
210
 
211
+ # Function to paraphrase and correct grammar with enhanced accuracy
212
  def paraphrase_and_correct(text):
213
+ # Remove meaningless or redundant words first
214
+ cleaned_text = remove_redundant_words(text)
215
+
216
+ # Capitalize sentences and nouns
217
+ paraphrased_text = capitalize_sentences_and_nouns(cleaned_text)
218
 
219
  # Apply grammatical corrections
220
  paraphrased_text = correct_article_errors(paraphrased_text)