import os from model.train import fine_tune_gpt2 from model.utils import load_feedback_data def trigger_auto_learning(threshold=10): feedback_files = os.listdir("data/feedback") if len(feedback_files) >= threshold: print("Iniciando autoaprendizado...") feedback_data = load_feedback_data() # Salvar dados processados para fine-tuning with open("data/processed/train.txt", "w") as f: for item in feedback_data: f.write(item["prompt"] + " " + item["generated_text"] + "\n") # Fine-tuning com novos dados fine_tune_gpt2("data/processed/train.txt") # Limpar feedback após treinamento for file in feedback_files: os.remove(os.path.join("data/feedback", file)) print("Autoaprendizado concluído!") else: print(f"Feedback insuficiente ({len(feedback_files)}/{threshold}).") if __name__ == "__main__": trigger_auto_learning()