CommitIa / util /extract_data.py
wendellast's picture
feat: Adicionando funcionalidade de IA para chatbot, incluindo template de mensagem e comportamento de regra.
3b4b1fb
import json
try:
with open("data/data.json", "r", encoding="UTF-8") as file:
data: dict = json.load(file)
except:
raise "Error ao carregar config.json"
def extrair_dados_template(template: dict = data):
try:
if "template" not in template:
raise KeyError("'template' não encontrado no dicionário.")
template_data = template["template"]
descricao: str = template_data.get("description", "Descrição não disponível.")
if "rules" not in template_data:
raise KeyError("'rules' não encontrado em 'template'.")
regras: str = "\n".join([f"- {rule}" for rule in template_data["rules"]])
if "behavior" not in template_data:
raise KeyError("'behavior' não encontrado em 'template'.")
comportamento = []
for key, value in template_data["behavior"].items():
if key == "examples" and isinstance(value, list):
exemplos = "\n".join([f" * {ex}" for ex in value])
comportamento.append(f"- {key.capitalize()}:\n{exemplos}")
else:
comportamento.append(f"- {key.capitalize()}: {value}")
comportamento_str = "\n".join(comportamento)
return descricao, regras, comportamento_str
except KeyError as e:
print(f"Erro ao acessar a chave: {e}")
return None
"""
descricao, regra, compoa = extrair_dados_template()
print(descricao)
print(regra)
print(compoa)
"""