Spaces:
No application file
No application file
EddyGiusepe
commited on
Commit
•
b514fe8
1
Parent(s):
6952ab9
Usando a Biblioteca logging
Browse files- .gitignore +2 -0
- 1_using_logging.py +35 -0
- 2_using_logging.py +45 -0
- 3_using_logging.py +47 -0
.gitignore
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
1 |
+
# EddyGiusepe
|
2 |
+
venv_logging/
|
1_using_logging.py
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/usr/bin/env python3
|
2 |
+
|
3 |
+
"""
|
4 |
+
Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
|
5 |
+
"""
|
6 |
+
import spacy
|
7 |
+
import logging
|
8 |
+
|
9 |
+
# Configuração do logging:
|
10 |
+
#logging.basicConfig(filename='app.log', level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s') # com DEBUG gerará uma pasta 🤗
|
11 |
+
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
|
12 |
+
|
13 |
+
def extract_entities(text):
|
14 |
+
logging.info("Iniciando a extração de entidades")
|
15 |
+
|
16 |
+
# Carregar o modelo do SpaCy:
|
17 |
+
nlp = spacy.load("pt_core_news_sm")
|
18 |
+
|
19 |
+
# Processar o texto com o modelo pré-treinado;
|
20 |
+
doc = nlp(text)
|
21 |
+
|
22 |
+
# Extrair e logar as entidades encontradas
|
23 |
+
entities = []
|
24 |
+
for ent in doc.ents:
|
25 |
+
entities.append((ent.text, ent.label_))
|
26 |
+
logging.debug(f"Entidade encontrada: {ent.text} - Tipo: {ent.label_}")
|
27 |
+
|
28 |
+
logging.info("Extração de entidades concluída")
|
29 |
+
return entities
|
30 |
+
|
31 |
+
|
32 |
+
if __name__ == "__main__":
|
33 |
+
text = "A Apple Inc. foi fundada por Steve Jobs e Steve Wozniak em 1976."
|
34 |
+
extracted_entities = extract_entities(text)
|
35 |
+
print("Entidades extraídas:", extracted_entities)
|
2_using_logging.py
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/usr/bin/env python3
|
2 |
+
|
3 |
+
"""
|
4 |
+
Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
|
5 |
+
"""
|
6 |
+
import spacy
|
7 |
+
import logging
|
8 |
+
|
9 |
+
class EntityExtractor:
|
10 |
+
"""
|
11 |
+
Classe para extrair entidades de um texto usando o framework Spacy.
|
12 |
+
"""
|
13 |
+
def __init__(self, language_model="pt_core_news_sm"):
|
14 |
+
"""
|
15 |
+
Inicializa a classe com o modelo de linguagem desejado.
|
16 |
+
"""
|
17 |
+
self.nlp = spacy.load(language_model)
|
18 |
+
logging.basicConfig(level=logging.INFO)
|
19 |
+
|
20 |
+
def extract_entities(self, text):
|
21 |
+
"""
|
22 |
+
Extrai entidades do texto fornecido.
|
23 |
+
"""
|
24 |
+
# Processa o texto com o modelo de linguagem
|
25 |
+
doc = self.nlp(text)
|
26 |
+
|
27 |
+
# Cria um dicionário para armazenar as entidades
|
28 |
+
entities = {}
|
29 |
+
|
30 |
+
# Itera sobre as entidades no texto
|
31 |
+
for ent in doc.ents:
|
32 |
+
# Adiciona a entidade ao dicionário
|
33 |
+
entities[ent.text] = ent.label_
|
34 |
+
|
35 |
+
# Loga as entidades extraídas
|
36 |
+
logging.info(f"O método da classe (extract_entities) extraiu as Entidades: {entities}")
|
37 |
+
|
38 |
+
return entities
|
39 |
+
|
40 |
+
|
41 |
+
if __name__ == "__main__":
|
42 |
+
text= "A Apple Inc. foi fundada por Steve Jobs e Steve Wozniak em 1976."
|
43 |
+
entidade = EntityExtractor()
|
44 |
+
extraindo_Entity = entidade.extract_entities(text)
|
45 |
+
print("\033[1;33mEntidades extraídades -->\033[m", extraindo_Entity)
|
3_using_logging.py
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#!/usr/bin/env python3
|
2 |
+
|
3 |
+
"""
|
4 |
+
Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
|
5 |
+
"""
|
6 |
+
import spacy
|
7 |
+
import logging
|
8 |
+
|
9 |
+
# Configurando o logging
|
10 |
+
logging.basicConfig(level=logging.INFO)
|
11 |
+
|
12 |
+
class EntityRecognizer:
|
13 |
+
"""
|
14 |
+
Classe para reconhecimento de entidades usando a biblioteca Spacy.
|
15 |
+
"""
|
16 |
+
def __init__(self):
|
17 |
+
"""
|
18 |
+
Inicializa a classe com o texto a ser analisado.
|
19 |
+
"""
|
20 |
+
self.nlp = spacy.load('pt_core_news_sm')
|
21 |
+
|
22 |
+
def recognize(self, text):
|
23 |
+
"""
|
24 |
+
Reconhece as entidades no texto.
|
25 |
+
"""
|
26 |
+
doc = self.nlp(text)
|
27 |
+
|
28 |
+
entities ={}
|
29 |
+
# Verifica se existem entidades no texto
|
30 |
+
if doc.ents:
|
31 |
+
logging.info('Entidades encontradas:')
|
32 |
+
for ent in doc.ents:
|
33 |
+
entities[ent.text] = ent.label_
|
34 |
+
|
35 |
+
else:
|
36 |
+
logging.info('Nenhuma entidade encontrada.')
|
37 |
+
print("O texto não contém Entidades 🤗!")
|
38 |
+
|
39 |
+
return entities
|
40 |
+
|
41 |
+
|
42 |
+
if __name__ == "__main__":
|
43 |
+
# Exemplo de uso:
|
44 |
+
recognizer = EntityRecognizer()
|
45 |
+
text = 'A Karina é cientista de dados!'
|
46 |
+
entidades = recognizer.recognize(text)
|
47 |
+
print(entidades)
|