import streamlit as st from LogCustomizado import LogCustomizado as logc from Inferencia import Inferencia from PIL import Image from PromptDocumento import PromptDocumento st.set_page_config(page_title="CADIN - Cadastro Inteligente") st.title("CADIN - Cadastro Inteligente") arquivos_upload = st.file_uploader( label="Adicione todos os documentos que estão em formato de imagens.", type=["jpg", "jpeg", "png", "pdf"], accept_multiple_files=True, help="O arquitvo PDF precisa ser uma imagem" ) inferencia = Inferencia() if arquivos_upload is not None: logc.gerar_log(mensagem_log="INICIANDO PROCESSO DE LEITURA DOS DADOS DOS DOCUMENTOS") for arquivo in arquivos_upload: st.write(arquivo.name) st.image(arquivo) imagem_convertida = Image.open(arquivo) prompt_analisa_tipo_documento = PromptDocumento.selecionar_tipo_documento() dados_imagem = inferencia.extrair_dados_imagem( prompt_analisa_tipo_documento, imagem_convertida ) st.write(dados_imagem) print(dados_imagem) logc.gerar_log(mensagem_log=f"DEFININDO TIPO DE DOCUMENTO: {dados_imagem}") dados_imagem_dict = Inferencia.string_para_dicionario(dados_imagem) print(dados_imagem_dict["tipo_documento"]) if dados_imagem_dict["tipo_documento"] == "CNH": dados_cnh = inferencia.extrair_dados_imagem( PromptDocumento.cnh(), imagem_convertida ) logc.gerar_log(mensagem_log=f"DADOS CNH: {dados_cnh}") logc.gerar_log(mensagem_log=f"ARQUIVO PROCESSADO: {arquivo.name}") logc.gerar_log(mensagem_log=f"FIM DO PROCESSAMENTO\n\n\n")