def get_correcao_from_redacao()

in IAC/temp/function-source/src/corretor_gemini/gemini_corretor.py [0:0]


    def get_correcao_from_redacao(self, 
                                  redacao_data: dict) -> dict:
        """
        Executa a correção de uma redação com o Gemini.
        
        Args:
            redacao_data (dict): Dicionário com os dados da redação.
                - tema_redacao (str): Tema da redação.
                - enunciado_redacao (str): Enunciado da redação.
                - textos_motivadores (str): Textos motivadores da redação.
                - redacao_estudante (str): Texto da redação.

        Returns:
            Correcao: Objeto com a resposta do Gemini e helpers para processa-la.
        """

        prompt_promptweaver = PromptConfig.from_file(self.config_prompweaver_corretor, redacao_data)
        generate_content = self.gemini_client.generate_content(prompt_promptweaver).text
        
        correcao = Correcao(redacao_data, generate_content)
        correcao.sumarizacao = self.sintetizar_correcao(redacao_data, correcao)

        while correcao.get_nota_enem() > 800:
            generate_content = self.gemini_client.generate_content(prompt_promptweaver)
            correcao = Correcao(redacao_data,
                                generate_content)
            correcao.sumarizacao = self.sintetizar_correcao(redacao_data, correcao)
        return correcao