Forum Replies Created

Viewing 15 posts - 16 through 30 (of 415 total)
  • Author
    Posts
  • in reply to: Proteger dados Proprietários (RAG) #50435
    Gabriel Alves
    Keymaster

      Olá Douglas! tudo bem? Primeiramente, obrigado pelo elogio ao curso, que bom que esteja aproveitando =)

      Sobre sua dúvida: proteger dados sensíveis em soluções com RAG é uma preocupação bem válida, é totalmente possível isolar e proteger esses dados tomando algumas medidas importantes.

      Primeiro, é fundamental entender que os dados usados na etapa de recuperação (retrieval) ficam sob seu controle, normalmente armazenados em bancos vetoriais como Chroma, Pinecone, entre outros. Eles não são enviados ou incorporados ao modelo base, a menos que você explicitamente envie esse conteúdo para uma API de terceiros sem cuidados. Mas, para uma camada a mais de segurança, prefira banco de dados que rodem totalmente em ambiente local e não na nuvem (as soluções mais conhecidas cloud na verdade são seguras, então aqui tem que avaliar se está disposto a perder velocidade de resposta por uma camada a mais de segurança).

      Sobre a ideia de que “a IA pode usar seus dados com outros usuários”, isso não é verdade se você estiver usando o modelo corretamente em ambiente privado. Modelos de empresas sérias como OpenAI ou Google geralmente não utilizam os dados das requisições para treinar ou compartilhar outputs, desde que esteja desabilitado o uso para treinamento (o que é o padrão e desejado em ambientes corporativos e APIs pagas). Mas se você usar interfaces públicas ou APIs gratuitas sem configurar isso, aí sim existe esse risco. É bom checar as páginas de políticas e termos de uso dessas provedoras de LLMs.

      Então, para proteger seus dados sensíveis, se o modelo for via API certifique-se que uso de dados para treinamento esteja desativado.

      Alguns especialistas também não acham tão seguro usar APIs mesmo que esteja desabilitado isso, digamos que nós “temos que confiar” que as empresas não usarão esses dados para treinamento. Mas caso queira um modo totalmente seguro e mais controlável então vai precisar rodar o LLM localmente, com modelos como Llama, DeepSeek ou outros open source. Desse modo, seus dados não são processados em um servidor externo, será tudo processado em ambiente local (e por esse motivo inclusive pode ser usado sem necessidade de conexão com a internet). Note que para isso será necessário um ótimo hardware, ou usar modelos mais eficientes, como por exemplo Small Language Models (SLM) ou modelos quantizados.

      in reply to: Não carrega as multiplas imgens #50326
      Gabriel Alves
      Keymaster

        Olá Jefferson!

        Isso ocorre pois em versões recentes da biblioteca Pillow esse atributo “ANTIALIAS” (que foi usado nesse código criado para exibir imagens em grid) foi descontinuado. Você tem duas maneiras de resolver:

        Solução 1: (É a que eu recomendo) Simplesmente alterar no código de Image.ANTIALIAS para Image.LANCZOS   – que irá exibir a imagem e funcionar do mesmo modo.

        Se desejar pode conferir aqui o Colab atualizado, é necessário apenas essa pequena mudança.

        Solução 2: Fazer o downgrade da biblioteca Pillow; para isso pode usar esse comando antes de executar o restante do código: !pip install Pillow==9.5.0

        in reply to: projeto 3 não funciona #50308
        Gabriel Alves
        Keymaster

          Olá! Infelizmente esses erros podem acontecer, conforme mencionado o LangChain é um ótimo framework mas algumas atualizações podem quebrar certas funcionalidades. Essa em questão é devido a uma alteração recente na API. Mas vamos te ajudar sim.

          Essa versão do Python não parece ser incompatível, mas em último caso (se o que vou mencionar abaixo não resolver) eu sugiro testar com a 3.11.x ou até a 3.12.x, já que apresenta menos possibilidade de erros.

          Primeiro, baixe o script atualizado presente no Drive compartilhado na introdução, esse link aqui.

          Se o erro persistir, adicione esse trecho de código no início de seu arquivo .py

          import os 
          
          import torch 
          
          import streamlit 
          
          torch.classes.__path__ = [os.path.join(torch.__path__[0], torch.classes.__file__)] 
          
          # ou simplesmente: 
          
          torch.classes.__path__ = []

           

          Imagino que isso deva resolver. Mas caso persista me avise, e poste aqui o erro atualizado.

          Você também pode estar testando pelo Colab da seção, acabei de testar e está funcionando ok.

          in reply to: teste1.py não funciona mais #50307
          Gabriel Alves
          Keymaster

            Olá Eduardo!

            Parece ser uma limitação recente nos servidores do Hugging Face, que especificamente está com problemas para rodar os modelos Llama 3 publicados no repositório, mesmo o modelo oficial publicado pela Meta. Ainda não houve uma solução oficial pela equipe responsável pela biblioteca, então recomendo não usar por enquanto o Hugging Face Hub para o Llama 3. Nós estamos terminando de criar uma aula de aviso para colocar no curso, já que está causando essa confusão.

            Para usar o modelo Phi 3 por exemplo, faça assim:

            from langchain_huggingface import HuggingFaceEndpoint
            
            # Exemplo com Hugging Face
            llm = HuggingFaceEndpoint(
                repo_id="microsoft/Phi-3-mini-4k-instruct",
                temperature = 0.1,
                return_full_text = False,
                max_new_tokens = 1024,
                task="text-generation"
            )
            
            system_prompt = "Você é um assistente prestativo e está respondendo perguntas gerais."
            user_prompt = "{input}"
            
            token_s, token_e = "<|system|>", "<|end|><|assistant|>"
            
            prompt = ChatPromptTemplate.from_messages([
                ("system", token_s + system_prompt),
                ("user", user_prompt + token_e)
            ])
            
            chain = prompt | llm
            
            input = "Explique para mim em até 1 parágrafo o conceito de redes neurais, de forma clara e objetiva"
            
            res = chain.invoke({"input": input})
            print(res)

             

            Veja aqui o arquivo teste1.py atualizado, acabei de testar e está funcionando.

             

            Por enquanto, estamos recomendando implementar o Llama (e outros modelos ainda mais modernos) com o serviço da Groq. Esse provedor disponibiliza o Llama 4 e outros modelos modernos via API de forma gratuita também, inclusive o plano grátis tem uma quota ainda mais generosa. A única linha que precisa alterar é a que chama o método da LLM. Você deve então substituir esse método do Hugging Face por:

            llm = ChatGroq(model="llama3-70b-8192", temperature=0.7, max_tokens=None, timeout=None, max_retries=2)

            e antes de executar essa linha acima você precisa:

            * instalar o langchain-groq, usando o comando !pip install -q langchain-groq

            * fazer a importação com from langchain_groq import ChatGroq

            * adicionar a Key do Groq às variáveis de ambiente, com  os.environ[“GROQ_API_KEY”] = getpass.getpass()

            (ou, adicionando GROQ_API_KEY=SUA_CHAVE_AQUI   – dentro do .env)

             

            Para criar API do Groq​

            1) Acesse: https://groq.com ​ -> clique em DEV CONSOLE (menu do topo)

            2) Crie sua conta. Você pode criar/logar com sua conta Google, para ser mais prático​

            3) Após o login, no menu lateral acesse API Keys https://console.groq.com/playground

            4) E clique no botão ‘Create API Key​’

            Aqui você pode escolher qualquer nome.​

            Após criar, clique no botão Copy para copiar a chave e salve em um local seguro

             

            Modelos disponíveis pelo Groq https://console.groq.com/docs/rate-limits (ver os gratuitos – dentro da aba free tier)

            in reply to: Erro na detecção de faces com Mmod #50196
            Gabriel Alves
            Keymaster

              Olá! Você está executando direto no Colab mesmo, isso?

              Verifique se você selecionou para usar GPU ao invés de CPU, para conferir acesse o menu do topo: Ambiente de execução > Alterar o tipo de ambiente de execução.

              Este erro que você mostrou também pode ocorrer quando o módulo do driver de vídeo em execução não corresponde à versão da biblioteca CUDA no disco, ou quando não é compatível com o dlib. Atualizar o driver da placa de vídeo pode resolver este problema.

              Uma alternativa seria executar o dlib na CPU. Ou, se você quiser executar em sua máquina local em vez do Colab, também seria uma solução, pois evitará este erro que apareceu para você. Para rodar na CPU, pode usar esse comando de instalação abaixo:

              !pip uninstall dlib
              !sudo pip install -v –install-option=”–no” –install-option=”DLIB_USE_CUDA” dlib

              in reply to: problemas com a chamada “cv2.waitKey()” #49528
              Gabriel Alves
              Keymaster

                Ah sim entendo, bom saber que pelo menos funciona em ambiente local. No Colab podem ocorrer alguns erros de incompatibilidade como esse que você comentou, porém (quando não é um bug na sessão) geralmente se resolve executando aqueles comandos que te passei. Você tentou eles e continuou aparecendo o mesmo erro?

                Caso seja viável, pode compartilhar aqui o seu Colab? Assim consigo verificar melhor, já que podem haver outros comandos ou códigos que poderiam estar interferindo também

                in reply to: problemas com a chamada “cv2.waitKey()” #49494
                Gabriel Alves
                Keymaster

                  Olá! Você está executando localmente ou pelo Colab?

                  Este erro pode ser resolvido desinstalando o OpenCV e instalando-o novamente. É mais garantido que seja resolvido se você instalar a biblioteca com contrib. Então, desinstale

                  !pip uninstall opencv-python

                  e instale (agora com +contrib)

                  pip install opencv-contrib-python

                  se você estiver rodando localmente e no Linux, pode ser necessário executar também este comando

                  sudo apt-get install libgtk2.0-dev pkg-config

                  ou, se não funcionar, tente isto:

                  sudo apt-get install cmake cmake-curses-gui libgtk2.0-dev
                  in reply to: INPAINTING #49040
                  Gabriel Alves
                  Keymaster

                    Que bom! Disponha

                    in reply to: INPAINTING #49017
                    Gabriel Alves
                    Keymaster

                      Olá Rodrigo! No bloco de código onde apareceu esse erro, substitua “runwayml/stable-diffusion-inpainting” por “botp/stable-diffusion-v1-5-inpainting”, o endereço oficial do modelo parece que está apresentando problemas nesse momento.

                      E caso ocorra algum outro erro nessa mesma parte, troque o comando de instalação no topo (o primeiro bloco de código) por esse:

                      !pip install torch==2.1.0+cu121 torchvision==0.16.0+cu121 torchaudio==2.1.0 torchtext==0.16.0+cpu torchdata==0.7.0 --index-url https://download.pytorch.org/whl/cu121

                      Na dúvida você pode conferir aqui o Colab da aula

                      in reply to: Erro no treinamento personalizado 2 #49016
                      Gabriel Alves
                      Keymaster

                        Olá, este problema parece ser uma incompatibilidade bem recente que passou a ocorrer nessa última semana entre a versão CUDA do Colab e a biblioteca jax, parece que até o momento não há uma solução oficial por parte dos desenvolvedores mas já estamos tentando encontrar uma alternativa para que a função funcione corretamente no Colab sem essas mensagens. Enquanto isso, como alternativa você tem duas opções:

                        1) Executar em sua máquina local.  Você pode usar o mesmo código, apenas certifique-se de instalar as bibliotecas necessárias antes de rodar. Recomendamos o uso do Jupyter Notebook para que você possa reutilizar o notebook fornecido na aula.

                        2) Use o Kaggle em vez do Colab. A ideia é basicamente a mesma, mas caso tenha dúvidas faça o seguinte:

                        * Acesse os Notebooks do Kaggle (link). Faça login ou cadastre-se rápido caso não tenha uma conta.

                        * Clique em “New Notebook”

                        * Selecione File > Import Notebook

                        * Selecione o arquivo .ipynb nos materiais da aula (ou baixe-o diretamente clicando em Arquivo > Fazer Download > Baixar o .ipynb , dentro do Colab da aula).

                        * Arraste e solte o arquivo .ipynb e clique em Importar.

                        Se tiver alguma dúvida sobre a instalação local ou o uso do Kaggle, sinta-se à vontade para entrar em contato conosco. Enquanto isso, estamos tentando encontrar uma solução alternativa para que funcione corretamente no Colab de forma gratuita.

                        in reply to: Erro no treinamento personalizado 2 #49005
                        Gabriel Alves
                        Keymaster

                          Olá Rodrigo!

                          Devido a algumas mudanças recentes no Colab é necessário um pequeno ajuste para evitar o erro, lá no topo do arquivo. Deixe os comandos de instalação desse modo abaixo, conforme está no Colab da seção (link aqui)

                          !pip install numpy==1.26.4
                          !pip install "jax[cuda12_local]==0.4.23" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
                          !pip install torch==2.1.0+cu121 torchvision==0.16.0+cu121 torchaudio==2.1.0 torchtext==0.16.0+cpu torchdata==0.7.0 --index-url https://download.pytorch.org/whl/cu121
                          !wget -q https://github.com/ShivamShrirao/diffusers/raw/main/examples/dreambooth/train_dreambooth.py
                          !wget -q https://github.com/ShivamShrirao/diffusers/raw/main/scripts/convert_diffusers_to_original_stable_diffusion.py
                          %pip install -qq git+https://github.com/ShivamShrirao/diffusers
                          %pip install -q -U --pre triton
                          %pip install -q accelerate transformers ftfy bitsandbytes gradio natsort safetensors xformers
                          %pip install huggingface_hub==0.25.2

                           

                          Caso tenha alguma dúvida ou se aparecer algum erro nos avise

                          in reply to: Consegui captar todos os olhos – Aula Detecção de Olho #48855
                          Gabriel Alves
                          Keymaster

                            Olá João,

                            Que bacana, parabéns e obrigado por compartilhar seu resultado!

                            in reply to: Detecção de imagem #48852
                            Gabriel Alves
                            Keymaster

                              Ah sim, mas então com essa correção agora deve funcionar normal!

                              Se mesmo assim você notar mais algum erro, pode tentar ver direto pelo Colab no link que te passei, ou mande aqui o seu código completo que daremos uma olhada

                              in reply to: Detecção de imagem #48848
                              Gabriel Alves
                              Keymaster

                                Olá Silvio!

                                Só para certificar: na sua dúvida você comentou “no código final aparecem 5 imagens”, no caso refere ao código apresentado ao final da aula “Detecção de faces com haarcascade e OpenCV”? E quais são essas imagens que aparecem para você? É a mesma imagem porém repetida?

                                Pela sua descrição, acredito que o problema deve ser a indentação do cv2_imshow(imagem), que no seu código ficou dentro do loop “for” mas deveria ficar fora (e por isso a imagem é exibida várias vezes – nesse caso, a quantidade de vezes exibida corresponde à quantidade de faces detectadas na imagem)

                                Se quiser comparar com o seu, aqui está o código da aula:

                                imagem = cv2.imread('/content/drive/MyDrive/Images/people1.jpg')
                                imagem = cv2.resize(imagem, (800, 600))
                                imagem_cinza = cv2.cvtColor(imagem, cv2.COLOR_BGR2GRAY)
                                deteccoes = detector_facial.detectMultiScale(imagem_cinza, scaleFactor=1.09)
                                for (x, y, w, h) in deteccoes:
                                  cv2.rectangle(imagem, (x, y), (x + w, y + h), (0,255,0), 5)
                                cv2_imshow(imagem)

                                 

                                outra opção é conferir o código acessando direto o Colab dessa seção (link aqui)

                                 

                                in reply to: Erro quantization_config #48794
                                Gabriel Alves
                                Keymaster

                                  Olá Celso! Pode ser um bug da biblioteca no Colab, testei agora o código com a versão mais recente e funcionou corretamente. Testei o mesmo código da seção (link aqui)

                                  Tente desinstalar o bitsandbytes e instalar novamente de outro modo, segue o comando abaixo:

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

                                  E reinicie a sessão do Colab logo após executar o comando (provavelmente ele vai pedir automaticamente, daí basta clicar no botão que aparecer na tela para reiniciar)

                                  Caso não funcione, outro comando que costuma resolver é esse:

                                  !pip install bitsandbytes-cuda110 bitsandbytes

                                  (execute bem no começo do Colab e reinicie a sessão antes)

                                  Teste e me avise se não funcionar

                                Viewing 15 posts - 16 through 30 (of 415 total)