lik07 commited on
Commit
ace795f
·
verified ·
1 Parent(s): 5f302e9

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -19
app.py CHANGED
@@ -18,35 +18,31 @@ def extract_names_from_text(text):
18
  return persons
19
 
20
  # Función para dividir el texto en fragmentos más pequeños
21
- def split_text(file_path, max_length=100000):
22
  result = []
23
  current_chunk = []
24
  current_length = 0
25
 
26
- with open(file_path, 'r', encoding='utf-8') as file:
27
- for line in file:
28
- if line.strip() == '':
29
- # Maneja el separador de párrafos
30
- paragraph_length = 2 # '\n\n'
31
- else:
32
- paragraph_length = len(line)
33
 
34
- if current_length + paragraph_length <= max_length:
35
- current_chunk.append(line)
36
- current_length += paragraph_length
37
- else:
38
- # Almacena el chunk actual
39
- result.append(''.join(current_chunk))
40
- current_chunk = [line]
41
- current_length = paragraph_length
 
 
42
 
43
- # Añade el último fragmento
44
  if current_chunk:
45
- result.append(''.join(current_chunk))
46
 
47
  return result
48
 
49
-
50
  # Función principal para extraer nombres de personas desde un archivo DOCX
51
  def extract_names_from_docx(docx_file):
52
  # Cargar el archivo DOCX
 
18
  return persons
19
 
20
  # Función para dividir el texto en fragmentos más pequeños
21
+ def split_text(text, max_length=100000):
22
  result = []
23
  current_chunk = []
24
  current_length = 0
25
 
26
+ # Divide por salto de línea simple en lugar de doble
27
+ paragraphs = text.split('\n') # Usamos '\n' ya que en chino no se usan saltos dobles
 
 
 
 
 
28
 
29
+ for paragraph in paragraphs:
30
+ paragraph_length = len(paragraph) + 1 # Considera el '\n' añadido entre párrafos
31
+ if current_length + paragraph_length <= max_length:
32
+ current_chunk.append(paragraph)
33
+ current_length += paragraph_length
34
+ else:
35
+ # Guarda el fragmento actual y empieza uno nuevo
36
+ result.append('\n'.join(current_chunk))
37
+ current_chunk = [paragraph]
38
+ current_length = paragraph_length
39
 
40
+ # Añadir el último fragmento si no está vacío
41
  if current_chunk:
42
+ result.append('\n'.join(current_chunk))
43
 
44
  return result
45
 
 
46
  # Función principal para extraer nombres de personas desde un archivo DOCX
47
  def extract_names_from_docx(docx_file):
48
  # Cargar el archivo DOCX