dayannex commited on
Commit
9e63716
·
1 Parent(s): 7efbe56

app modified output idioma

Browse files
Files changed (1) hide show
  1. app.py +19 -14
app.py CHANGED
@@ -67,7 +67,7 @@ class Model:
67
  new_tokens=[]
68
  ig_tokens=[] #ignorar estos indices del array de indentificadores
69
  for token in tokens:
70
-
71
  ind=len(new_tokens)
72
  if i<len(tokens):
73
  if token.startswith(caracter):
@@ -208,7 +208,7 @@ class Model:
208
  def predict(self,etiquetas):
209
 
210
  categoria, porcentaje = self.categorizar_texto(self.texto)
211
- print('categoria:',categoria, porcentaje)
212
 
213
  self.tokenizer = AutoTokenizer.from_pretrained(self.modelo_ner)
214
  tokens = self.tokenizer.tokenize(self.texto)
@@ -225,13 +225,17 @@ class Model:
225
 
226
  labels = predicted_token_class_ids
227
  loss = self.model(input_ids, labels=labels).loss
228
- print('idioma:',self.idioma)
229
  if (self.idioma=='es'):
230
- new_tokens,ig_tokens=self.reordenacion_tokens(tokens,'Ġ')
 
 
 
231
  else:
232
  new_tokens,ig_tokens=self.reordenacion_tokens(tokens,'▁')
233
 
234
- new_identificadores = self.reordenacion_identificadores(ig_tokens,predicted_tokens_classes)
 
235
  if etiquetas:
236
  out2 = self.salida_texto(new_tokens,new_identificadores)#solo identificadores
237
  else:
@@ -239,9 +243,11 @@ class Model:
239
 
240
 
241
  return (
242
-
 
243
  out1,
244
  str(out2)
 
245
 
246
  )
247
  class ModeloDataset:
@@ -257,7 +263,7 @@ class ModeloDataset:
257
  new_tokens=[]
258
  ig_tokens=[] #ignorar estos indices del array de indentificadores
259
  for token in tokens:
260
-
261
  ind=len(new_tokens)
262
  if i<len(tokens):
263
  if token.startswith(caracter):
@@ -327,7 +333,6 @@ class ModeloDataset:
327
  new_iden.append(id)
328
  return new_iden
329
  def aplicar_modelo(self,_sentences,idioma, etiquetas):
330
-
331
  if idioma=="es":
332
  self.tokenizer = AutoTokenizer.from_pretrained("BSC-LT/roberta_model_for_anonimization")
333
  tokenized_text=[self.tokenizer.tokenize(sentence) for sentence in _sentences]
@@ -521,7 +526,7 @@ def procesar(texto,archivo, etiquetas):
521
  if len(texto)>0:
522
  print('text')
523
  model.identificacion_idioma(texto)
524
- return model.predict(etiquetas),gr.Dataframe(),gr.File()
525
  else:
526
 
527
  if archivo.name.split(".")[1]=="csv":
@@ -531,7 +536,7 @@ def procesar(texto,archivo, etiquetas):
531
  df_new = pd.DataFrame( columns=df.columns.values)
532
  model.identificacion_idioma(df.iloc[0][0])
533
  modelo.idioma=model.idioma
534
- print('idioma:',model.idioma)
535
  for item in df.columns.values:
536
  sentences=df[item]
537
 
@@ -540,7 +545,7 @@ def procesar(texto,archivo, etiquetas):
540
  print('out es:',out)
541
  df_new[item] = modelo.unir_array(out)
542
 
543
- return "", df_new, df_new.to_csv(sep='\t', encoding='utf-8',index=False)
544
  #return "", df_new, df_new.to_excel( index=False)
545
  else:
546
  print('json')
@@ -551,7 +556,7 @@ def procesar(texto,archivo, etiquetas):
551
 
552
  model.identificacion_idioma(df.iloc[0][0])
553
  modelo.idioma=model.idioma
554
- print('idioma:',model.idioma)
555
  for item in df.columns.values:
556
  sentences=df[item]
557
 
@@ -564,9 +569,9 @@ def procesar(texto,archivo, etiquetas):
564
 
565
 
566
  #return "", df, df.to_csv(sep='\t', encoding='utf-8',index=False)
567
- return "", df_new, df_new.to_csv(sep='\t', encoding='utf-8',index=False)
568
 
569
- demo = gr.Interface(fn=procesar,inputs=["text",gr.File(), "checkbox"] , outputs=["text",gr.Dataframe(interactive=False),"text"])
570
  #
571
  demo.launch(share=True)
572
 
 
67
  new_tokens=[]
68
  ig_tokens=[] #ignorar estos indices del array de indentificadores
69
  for token in tokens:
70
+ print('token_texto:',token,caracter)
71
  ind=len(new_tokens)
72
  if i<len(tokens):
73
  if token.startswith(caracter):
 
208
  def predict(self,etiquetas):
209
 
210
  categoria, porcentaje = self.categorizar_texto(self.texto)
211
+ print(categoria, porcentaje)
212
 
213
  self.tokenizer = AutoTokenizer.from_pretrained(self.modelo_ner)
214
  tokens = self.tokenizer.tokenize(self.texto)
 
225
 
226
  labels = predicted_token_class_ids
227
  loss = self.model(input_ids, labels=labels).loss
228
+
229
  if (self.idioma=='es'):
230
+
231
+ new_tokens,ig_tokens=self.reordenacion_tokens(tokens,'Ġ')
232
+
233
+
234
  else:
235
  new_tokens,ig_tokens=self.reordenacion_tokens(tokens,'▁')
236
 
237
+ new_identificadores = self.reordenacion_identificadores(ig_tokens,predicted_tokens_classes)
238
+ out1 = self.salida_json(new_tokens,new_identificadores)
239
  if etiquetas:
240
  out2 = self.salida_texto(new_tokens,new_identificadores)#solo identificadores
241
  else:
 
243
 
244
 
245
  return (
246
+
247
+
248
  out1,
249
  str(out2)
250
+
251
 
252
  )
253
  class ModeloDataset:
 
263
  new_tokens=[]
264
  ig_tokens=[] #ignorar estos indices del array de indentificadores
265
  for token in tokens:
266
+ print('tokensss:',tokens,caracter)
267
  ind=len(new_tokens)
268
  if i<len(tokens):
269
  if token.startswith(caracter):
 
333
  new_iden.append(id)
334
  return new_iden
335
  def aplicar_modelo(self,_sentences,idioma, etiquetas):
 
336
  if idioma=="es":
337
  self.tokenizer = AutoTokenizer.from_pretrained("BSC-LT/roberta_model_for_anonimization")
338
  tokenized_text=[self.tokenizer.tokenize(sentence) for sentence in _sentences]
 
526
  if len(texto)>0:
527
  print('text')
528
  model.identificacion_idioma(texto)
529
+ return model.idioma,model.predict(etiquetas),gr.Dataframe(),gr.File()
530
  else:
531
 
532
  if archivo.name.split(".")[1]=="csv":
 
536
  df_new = pd.DataFrame( columns=df.columns.values)
537
  model.identificacion_idioma(df.iloc[0][0])
538
  modelo.idioma=model.idioma
539
+ print(model.idioma)
540
  for item in df.columns.values:
541
  sentences=df[item]
542
 
 
545
  print('out es:',out)
546
  df_new[item] = modelo.unir_array(out)
547
 
548
+ return modelo.idioma,"", df_new, df_new.to_csv(sep='\t', encoding='utf-8',index=False)
549
  #return "", df_new, df_new.to_excel( index=False)
550
  else:
551
  print('json')
 
556
 
557
  model.identificacion_idioma(df.iloc[0][0])
558
  modelo.idioma=model.idioma
559
+
560
  for item in df.columns.values:
561
  sentences=df[item]
562
 
 
569
 
570
 
571
  #return "", df, df.to_csv(sep='\t', encoding='utf-8',index=False)
572
+ return modelo.idioma,"", df_new, df_new.to_csv(sep='\t', encoding='utf-8',index=False)
573
 
574
+ demo = gr.Interface(fn=procesar,inputs=["text",gr.File(), "checkbox"] , outputs=["text","text",gr.Dataframe(interactive=False),"text"])
575
  #
576
  demo.launch(share=True)
577