Respostas no Fórum

Visualizando 15 posts - 31 até 45 (de 393 do total)
  • Autor
    Posts
  • em resposta a: Projeto 3 #47159
    Gabriel Alves
    Moderador

      Olá Fernando,

      Primeiramente, agradeço o feedback positivo! Vamos às suas dúvidas:

      Em relação às respostas incorretas da IA, pela sua descrição parece que o modelo está usando somente conhecimento prévio ou não está encontrando os dados no banco vetorial corretamente. Você comentou que o texto apareceu juntas sem espaçamento, isso mostrou quando clica em cima do botão (popover) para ver a fonte? Se puder mandar um print de onde aparece, pode até ser que seja um bug do streamlit e que nessa caixinha está exibindo o texto sem os espaços ao final de cada bloco. O problema de palavras sem espaçamento poderia estar prejudicando sim a indexação e a recuperação, mas se foi utilizado exatamente o código da aula então não deveria ocorrer pois a função exata já faz esse processamento correto do texto antes de enviar à rede neural (mas só para testar, poderia usar também outro método que faz o pré-processamento do texto). Recomendo fazer novamente o envio dos documentos e testar diferentes parâmetros para o ‘k’ e ‘fetch_k’, dentro de vectorstore.as_retriever().

      Quanto a melhorar o tempo de resposta inicial, você está correto. O carregamento e a indexação podem ser feitos separadamente, em um aplicativo à parte. Isso permite iniciar o chat acessando diretamente o vectorstore já pronto, reduzindo significativamente o tempo de resposta inicial. E caso o arquivo seja enviado apenas uma vez e não mude então pode salvar em disco, assim não precisa executar a indexação toda vez que inicia o app. Para mais velocidade no tempo de indexação/recuperação, sugiro dar uma olhada no Pinecone, que pode ser facilmente integrado com o LangChain, basicamente precisa apenas mudar os métodos para integração e assim pode reaproveitar todo o restante do código (veja mais).

      E em relação às limitações de tamanho do arquivo, é possível sim carregar arquivos grandes porém o processamento e a indexação podem levar mais tempo e consumir mais memória, portanto precisa verificar se o hardware é adequado ou se vale mais a pena usar soluções que rodam em cloud como o Pinecone. Para PDFs extensos, como livros, recomenda-se dividi-los em chunks menores para facilitar o processamento e melhorar a recuperação de informações durante as consultas. A abordagem correta é experimentar diferentes parâmetros para o método do retriever, o que tenderá a funcionar melhor para documentos bem maiores.

      • Esta resposta foi modificada 4 meses, 1 semana atrás por Gabriel Alves.
      em resposta a: Resultados da segmentação #47153
      Gabriel Alves
      Moderador

        Olá Flávio! Excelente, obrigado pela sua contribuição

        Para não se preocupar com as funções de desenho também é possível usar como alternativa a implementação via CLI, o que pode ser um pouco mais prático

        em resposta a: API #47010
        Gabriel Alves
        Moderador

          Olá Gabrielli, tudo bem?

          Agradecemos a sugestão! Estamos planejando um próximo curso sobre LLMs, muito provavelmente abordaremos esses temas

          em resposta a: Reconhecimento pela camera do android #46995
          Gabriel Alves
          Moderador

            Ah sim entendo, ainda mais considerando que hoje existem várias tecnologias novas e muito relevantes, é complicado arrumar tempo para aprender tudo

            mas faz no seu tempo, que vai dar certo =)

            bons estudos!

            em resposta a: Reconhecimento pela camera do android #46831
            Gabriel Alves
            Moderador

              Olá José!

              Sim, seria totalmente viável utilizar o reconhecimento facial via câmera do celular como um método de marcação de ponto no seu aplicativo. Para isso bastaria integrar seu software em Delphi com uma tecnologia de reconhecimento facial – como a mostrada nesse curso de visão computacional ou no curso de Reconhecimento facial aqui da plataforma.

              Para o uso dessas técnicas teria que se conectar via API já que o processamento rodaria em um servidor, portanto precisaria de conexão constante com a internet. Desse modo costuma ser melhor porque o processamento é mais pesado e não dependerá do hardware do dispositivo, mas caso seja um único celular fixo e com excelente configuração então talvez rodar tudo localmente pelo celular seja melhor (ambas as alternativas possuem suas vantagens e desvantagens, então veja qual faz mais sentido).

              O reconhecimento facial pode ser realizado 100% localmente no dispositivo usando o Google ML Kit ou alguma biblioteca de Face Net em mobile por exemplo, mas como precisa se conectar ao sistema em Delphi então ainda haveria a necessidade de ser enviado a um servidor remoto, onde seu sistema de controle de ponto em Delphi pode validar o registro e associá-lo ao banco de dados.

              Portanto, quanto ao reconhecimento seria possível sim e você pode integrar com alguma dessas maneiras, a parte mais trabalhosa seria desenvolver o aplicativo em si na linguagem ou framework de sua preferência, contanto que funcione em Android e iOS e tenha biblioteca para se conectar com a câmera do celular de forma eficiente.

              em resposta a: Leitura de documento RG #46819
              Gabriel Alves
              Moderador

                Opa, isso! Creio que o artigo vá ajudar bastante, mas qualquer dúvida pode postar aqui no fórum!

                em resposta a: Mensurar o tamanho (largura e altura) em imagens 2D. #46818
                Gabriel Alves
                Moderador

                  Disponha =)

                  em resposta a: Mensurar o tamanho (largura e altura) em imagens 2D. #46811
                  Gabriel Alves
                  Moderador

                    Olá Julio!

                    Para medir com precisão o tamanho de um objeto em uma imagem eu sugiro você utilizar um algoritmo específico para isso. Existem várias heurísticas hoje bem definidas feitas para chegar a esse resultado, mas talvez uma das mais confiáveis usam esse artigo como referência. Além disso, o autor também fornece já o código completo para fazer isso no próprio OpenCV.

                    Esse processo exige atenção para alguns detalhes, então recomendo ver com calma o artigo pois lá explica bem certo. É importante seguir as recomendações para deixar o algoritmo bem calibrado, como por exemplo ajustar bem o objeto de referência para medir do modo mais preciso possível (isso é explicado detalhadamente no artigo).

                    em resposta a: Extrair textos em arquivos no formato pdf #46810
                    Gabriel Alves
                    Moderador

                      Olá José! Respondi lá no outro tópico que criou, mas já que perguntou neste tópico deixo a resposta aqui também:

                      Para fazer a leitura de um RG ou outro documento o segredo está em incorporar as técnicas de pré-processamento de imagem para que possa extrair o textos nas regiões específicas nesse documento, focando em antes extrair as localizações desses textos (regiões de interesse). Se desejar, pode antes fazer o teste com detectores de texto como o EAST para detectar as regiões onde os textos estão localizados, ou também testar com o EasyOCR (que já faz a detecção+reconhecimento).

                      Em um dos projetos do curso é mostrado como fazer o scan de documentos, o que funciona para o caso desse tipo de documento também. Como adicional, você precisa apenas incorporar outras técnicas de pré-processamento de imagem para que possa extrair o textos nas regiões específicas nesse documento.

                      A minha recomendação mesmo é seguir a lógica mostrada nesse artigo aqui, que explica exatamente uma maneira de como você pode criar um programa para ler melhor os campos de documentos (além disso, é disponibilizado o código fonte completo). Nesse exemplo do artigo ele usa uma CNH mas pode ser adaptado para RG pois o princípio é o mesmo, apenas alguns nomes e localizações de campos que mudam.

                      em resposta a: Leitura de documento RG #46809
                      Gabriel Alves
                      Moderador

                        Olá José!

                        Para fazer a leitura de um RG ou outro documento o segredo está em incorporar as técnicas de pré-processamento de imagem para que possa extrair o textos nas regiões específicas nesse documento, focando em antes extrair as localizações desses textos (regiões de interesse). Se desejar, pode antes fazer o teste com detectores de texto como o EAST para detectar as regiões onde os textos estão localizados, ou também testar com o EasyOCR (que já faz a detecção+reconhecimento).

                        Em um dos projetos do curso é mostrado como fazer o scan de documentos, o que funciona para o caso desse tipo de documento também. Como adicional, você precisa apenas incorporar outras técnicas de pré-processamento de imagem para que possa extrair o textos nas regiões específicas nesse documento.

                        A minha recomendação mesmo é seguir a lógica mostrada esse artigo aqui, que explica exatamente uma maneira de como você pode criar um programa para ler melhor os campos de documentos (além disso, é disponibilizado o código fonte completo). Nesse exemplo do artigo ele usa uma CNH mas pode ser adaptado para RG pois o princípio é o mesmo, apenas alguns nomes e localizações de campos que mudam.

                        em resposta a: RAG #46790
                        Gabriel Alves
                        Moderador

                          Olá! Caso não tenha funcionado esse comando o que eu recomendo é usar o Ollama para rodar a LLM localmente. Aliás, creio que vai ser melhor fazer desse modo mesmo que funcionasse esse comando que te passei, já que você está usando localmente eu sugiro que carregue usando o módulo do Ollama no LangChain pois ele é mais otimizado e vai te causar menos problemas mais tarde.

                          Para fazer isso use o método ChatOllama(), que é mostrado bem certo na aula “Execução local com Ollama” dentro da seção “LLM com LangChain”.

                           

                          em resposta a: RAG #46773
                          Gabriel Alves
                          Moderador

                            Olá Anderson!

                            Você tentou usar o comando pip install -U bitsandbytes e mesmo após reiniciar a execução não funcionou, correto?

                            Recomendo desinstalar e instalar a biblioteca, mas agora de outro modo usando esse comando:

                            python -m pip install bitsandbytes --prefer-binary --extra-index-url=https://jllllll.github.io/bitsandbytes-windows-webui

                            Qual versão do pytorch você está usando aliás? Instalou pelo mesmo comando recomendado em aula?

                             

                            em resposta a: Estruturação para aplicações industriais #46710
                            Gabriel Alves
                            Moderador

                              Olá Rodrigo!

                              A escolha de hardware e software dependerá das configurações específicas e das técnicas que serão utilizadas. Se você estiver utilizando apenas o YOLO, basta seguir as configurações recomendadas pelo repositório oficial, o que geralmente é suficiente para a maioria das aplicações.

                              As recomendações:
                              Python 3.8+; PyTorch 1.10+; GPU da NVIDIA com CUDA 11.2+; 8GB+ RAM; 50GB de espaço em disco (para armazenamento do dataset e treinamento).

                              Ter GPU é extremamente importante para rodar em tempo real. Uma RTX 3060 com 12GB tende a ser uma boa de início, se possível uma superior (16GB ou 24GB, mas depende realmente da escala e complexidade dos seus conjuntos de dados e modelos); porém, no geral, essa é recomendada pela comunidade e considerada uma ótima placa de início.

                              Para as câmeras, a escolha dependerá do ambiente e do tipo de aplicação. Câmeras industriais com resolução mínima de 1080p e taxas de quadros de 30 fps são ideais para detecção em tempo real. Modelos com suporte a GigE Vision ou USB 3.0 facilitam a integração em redes industriais. Se o ambiente for externo ou exigir maior durabilidade, opte por modelos com proteção IP65 ou IP67.

                              A infraestrutura de rede também deve ser dimensionada para garantir desempenho contínuo. Switches gerenciáveis com portas Gigabit Ethernet são recomendados para lidar com o fluxo de dados das câmeras. Caso as câmeras sejam alimentadas via PoE (Power over Ethernet), utilize switches compatíveis para simplificar a instalação.

                              Quanto ao software, YOLO pode ser executado pela própria biblioteca de Ultralytics, que é mostrada na última seção do curso de Detecção com YOLO. Você também consegue otimizar bastante salvando em formatos eficientes (veja aqui). Uma dica bônus seria você procurar por frameworks como DeepStream da NVIDIA, que é otimizado para aplicações industriais. Em caso de aplicações mais complexas, o uso de TensorRT pode otimizar ainda mais a inferência.

                              em resposta a: Problema para instalar os pacotes com o Python #46628
                              Gabriel Alves
                              Moderador

                                Ah sim entendi, se não funcionasse eu iria nesse caso recomendar criar um ambiente separado e fazer a instalação das bibliotecas lá

                                Mas que ótimo saber que já deu certo! =)

                                em resposta a: Problema para instalar os pacotes com o Python #46610
                                Gabriel Alves
                                Moderador

                                  Olá Raquel!

                                  Esse erro ocorre apenas ao executar o comando pip pro dotenv? Para todas as outras bibliotecas foi instalado com sucesso e sem erros?

                                  A propósito, qual a versão do Python que você está usando?

                                  Experimente rodar esse comando abaixo e me diga se funciona pra você, ou qual mensagem que ocorre

                                  pip install -U python-dotenv

                                   

                                Visualizando 15 posts - 31 até 45 (de 393 do total)