<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mariana Ribeiro</title>
    <description>The latest articles on DEV Community by Mariana Ribeiro (@maribeiromendes).</description>
    <link>https://dev.to/maribeiromendes</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F243447%2F34489a75-d19d-44cc-bb53-40899640610e.jpeg</url>
      <title>DEV Community: Mariana Ribeiro</title>
      <link>https://dev.to/maribeiromendes</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/maribeiromendes"/>
    <language>en</language>
    <item>
      <title>Rode seu próprio ChatGPT localmente</title>
      <dc:creator>Mariana Ribeiro</dc:creator>
      <pubDate>Sun, 26 Jan 2025 18:03:17 +0000</pubDate>
      <link>https://dev.to/womakerscode/rode-seu-proprio-chatgpt-localmente-2h60</link>
      <guid>https://dev.to/womakerscode/rode-seu-proprio-chatgpt-localmente-2h60</guid>
      <description>&lt;p&gt;A inteligência artificial está se tornando cada vez mais presente no nosso dia a dia, o ChatGPT por exemplo atualmente é mais utilizado pelas novas gerações para fazer buscas e responder perguntas. Aposto que você também já o utiliza para algumas coisas, certo? Mesmo que você não seja um especialista, ferramentas como o ChatGPT ou ou DeepSeek tornam o mundo da IA muito intuitivo e acessível para todas as pessoas. Neste guia, vou te ensinar como criar seu próprio 'chatGPT' utilizando ferramentas acessíveis e fáceis de usar se você tem um conhecimento técnico mais básico. Prontos pra dar o primeiro passo no universo da IA? Vamos lá!&lt;/p&gt;

&lt;p&gt;Estas são as ferramentas que vamos utilizar neste tutorial: &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ollama&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;O &lt;a href="https://ollama.com/" rel="noopener noreferrer"&gt;Ollama&lt;/a&gt; é uma ferramenta que facilita o uso de modelos de inteligência artificial diretamente no seu computador. Ele permite que você interaja com modelos de linguagem avançados, como o GPT, de forma local, sem depender exclusivamente da nuvem ou de serviços externos.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Open WebUI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;E para que consigamos utilizar os modelos que rodam no Ollama de forma mais simplificada utilizaremos o &lt;a href="https://docs.openwebui.com/" rel="noopener noreferrer"&gt;Open WebUI&lt;/a&gt;. O Open WebUI é uma interface gráfica web que irá facilitar a nossa interação com os modelos de inteligência artificial. Nele conseguiremos gerenciar os modelos, ter uma interface gráfica como a do ChatGPT para interagir com os modelos e algumas coisas a mais, como criar sua própria base de conhecimento para que o modelo de IA possa fazer buscas nela.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Portainer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Nossas ferramentas estarão rodando em docker containers, então utilizaremos o &lt;a href="https://www.portainer.io/" rel="noopener noreferrer"&gt;Portainer&lt;/a&gt; para gerenciá-los. É como se fosse uma versão web do Docker Desktop, porém muito mais leve o mesmo também roda em um container.&lt;/p&gt;

&lt;p&gt;Para este tutorial vamos utilizar o Ubuntu, no meu caso eu estou utilizando o mesmo dentro do WSL2, então se você está utilizando uma máquina Windows basta ter o mesmo instalado. Também vale a pena comentar que geralmente o processamento destes modelos localmente exigem um hardware um pouco melhor, como minha máquina é mais básica (16Gb de RAM e 500Gb de HD) eu estou rodando modelos menores (com menos parâmetros, menos inteligentes). Acredito que essa seja a configuração mínima para você executar esses modelos menores, mas caso seu computador tenha menos RAM, pule a instalação do Ollama que no final do tutorial vou ensinar como utilizar os modelos diretamente de uma plataforma externa (geralmente você precisa pagar a plataforma externa).&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;O objetivo deste tutorial não é ensinar como criar ou treinar modelos, apenas utilizá-los. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Então vamos começar!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Pré-requisitos&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Inicialize o WSL (apenas para usuários Windows)&lt;br&gt;
&lt;code&gt;C:\WINDOWS\system32&amp;gt; wsl&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Caso não tenha o WSL instalado, siga este tutorial da &lt;a href="https://learn.microsoft.com/pt-br/windows/wsl/install" rel="noopener noreferrer"&gt;Microsoft&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Também vamos precisar que o Docker esteja instalado no WSL no Ubuntu (Não instalar o Docker Desktop). Caso não o tenha instalado siga este &lt;a href="https://medium.com/@habbema/guia-de-instala%C3%A7%C3%A3o-do-docker-no-wsl-2-com-ubuntu-22-04-9ceabe4d79e8" rel="noopener noreferrer"&gt;tutorial&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Agora sim, we are good to go!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Instalação das ferramentas&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Primeiramente, cheque se sua instalação do docker está rodando:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7don9cbrn5tgcr3co9xa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7don9cbrn5tgcr3co9xa.png" alt="Image description" width="733" height="70"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora vamos instalar o Portainer para gerenciar nossos containers.&lt;br&gt;
Baixe a imagem:&lt;br&gt;
&lt;code&gt;docker pull portainer/portainer-ce:latest&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Inicie o container:&lt;br&gt;
&lt;code&gt;docker run -d -p 9000:9000 --restart always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer-ce:latest&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;O mesmo rodará localmente na porta 9000, você pode alterá-la caso seja necessário. Quando você acessá-lo pela primeira vez o mesmo pedirá que você crie um usuário e senha de administrador. Logo, quando logar, você deverá ver algo assim.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F18vfwj87d2fy2o1oxkd4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F18vfwj87d2fy2o1oxkd4.png" alt="Image description" width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora vamos instalar o Ollama.&lt;/p&gt;

&lt;p&gt;Vamos instalar direto do &lt;a href="https://hub.docker.com/r/ollama/ollama" rel="noopener noreferrer"&gt;Docker Hub&lt;/a&gt;. &lt;br&gt;
&lt;code&gt;docker pull ollama/ollama&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;e rodar:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
Esta instalação é para computadores que não possuem GPU (a famosa placa de vídeo, apesar que GPU é só o processador da mesma) ou possuem GPU integrada 'CPU only', mas caso você possua uma GPU NVidia ou AMD, selecione um dos outros comandos na página do Docker Hub.&lt;/p&gt;

&lt;p&gt;Caso você já queira instalar o modelo, você pode pode utilizar &lt;code&gt;docker exec -it ollama ollama run llama3.2:3b&lt;/code&gt; que irá instalar o modelo llama3 com 3 bilhões de parametros, porém, vamos fazer o mesmo depois dentro do WebUI.&lt;/p&gt;

&lt;p&gt;Dentro do portainer vá em containers e o container do ollada deverá estar como running.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbgjlq29oyr1h5u2zk72r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbgjlq29oyr1h5u2zk72r.png" alt="Image description" width="800" height="29"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Acesse: &lt;code&gt;http://localhost:11434/&lt;/code&gt; e o mesmo deverá te retornar:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzdmxwxjqgdo9vo47qkmz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzdmxwxjqgdo9vo47qkmz.png" alt="Image description" width="253" height="102"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Dentro do Ubuntu teste:&lt;br&gt;
&lt;code&gt;curl http://localhost:11434/api/tags&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Agora vamos instalar o Open WebUI:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker run -d    --name open-webui    -e OLLAMA_BASE_URL=http://endereco-container-ollama:11434    -p 3000:8080    ghcr.io/open-webui/open-webui:main&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Troque o endereco-container-ollama pelo endereço IP do container exibido no portainer.&lt;/p&gt;

&lt;p&gt;Aqui você está instalando e já criando o container do OpenWeb UI, nele também já setamos uma variável de ambiente com o endereço do Ollama. Vá até o portainer, se seu container estiver verdinho, estamos prontos pra começar!&lt;/p&gt;

&lt;p&gt;Acesse a plataforma em &lt;code&gt;http://localhost:3000/&lt;/code&gt; e a mesma pedirá que você crie um novo usuário administrador.&lt;/p&gt;

&lt;p&gt;Logo, você deverá ver algo parecido com isto (sem o modelo, claro!)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3v9lhxvtqiwmst6sqrm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3v9lhxvtqiwmst6sqrm.png" alt="Image description" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Para facilitar nossa vida e evitar alguns erramos, vamos criar uma nova rede no docker e colocar nossos dois containers dentro da mesma.&lt;/p&gt;

&lt;p&gt;No portainer, vá no menu Networks, clique em "&lt;em&gt;Add network&lt;/em&gt;" e adicione um nome para sua de, eu coloquei ollama_network.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkh9s6ext9bptyfq1sluq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkh9s6ext9bptyfq1sluq.png" alt="Image description" width="800" height="296"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora volte no menu containers e clique no container do ollama. &lt;br&gt;
Vá até o último grupo "Connected networks" e adicione sua nova rede.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8rsi8l8vvwm98t54poa1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8rsi8l8vvwm98t54poa1.png" alt="Image description" width="800" height="262"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Faça o mesmo com o container do WebUI.&lt;/p&gt;

&lt;p&gt;Vamos testar se o container do WebUI está se connectando com o container do ollama?&lt;/p&gt;

&lt;p&gt;Entre nas informações do container do WebUI pelo portainer e em Container Status acesse o console do mesmo.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faeozc54lpul9veey82du.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faeozc54lpul9veey82du.png" alt="Image description" width="800" height="381"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4m2fd13a77z8xuu2odh0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4m2fd13a77z8xuu2odh0.png" alt="Image description" width="800" height="283"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No console execute &lt;code&gt;curl http://endereco-container-ollama:11434/api/tags&lt;/code&gt; e o mesmo deverá conectar ao outro container e retornar algo.&lt;/p&gt;

&lt;p&gt;No meu caso como já tenho alguns modelos instalados ele já trouxe o modelo, o seu provavelmente estará vazio.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcftd366xmq554jc044l8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcftd366xmq554jc044l8.png" alt="Image description" width="800" height="208"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Agora com nossa infraestrutura pronta já podemos configurar o WebUI para baixar os modelos no ollama e executar os mesmos. &lt;/p&gt;

&lt;p&gt;Acesse o WebUI. &lt;code&gt;http://localhost:3000/&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Na lateral esquerda, na parte debaixo, clique no seu usuário e vá em configurações.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn6vi4cc9mp7mpon00ggu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn6vi4cc9mp7mpon00ggu.png" alt="Image description" width="254" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No popup que abrir, selecione configurações do admin.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr8jn1siaslqy5ww6hk6i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr8jn1siaslqy5ww6hk6i.png" alt="Image description" width="800" height="522"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vá em 'Modelos' e clique em manage models (a setinha de download).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufha76vsxaqszdoi9x1h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufha76vsxaqszdoi9x1h.png" alt="Image description" width="800" height="99"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um popup com o endereço do seu ollama local irá abrir. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fevfujtz5eu2gwledrtd6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fevfujtz5eu2gwledrtd6.png" alt="Image description" width="485" height="558"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Na página de modelos do ollama (&lt;a href="https://ollama.com/search" rel="noopener noreferrer"&gt;modelos&lt;/a&gt;) podemos selecionar o modelo que queremos, como deepseek:r1, llama3, mistral, etc. &lt;/p&gt;

&lt;p&gt;Na página também podemos ver quantos parâmetros o modelo tem&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F078d4bylu3mbts3swesx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F078d4bylu3mbts3swesx.png" alt="Image description" width="539" height="187"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Lembre-se: quanto mais parâmetros, maior mais pesado o modelo é, e exige mais hardware para processamento, porém mais inteligente. No nosso caso vamos testar um modelo com até 3b (até 8b pode dar certo, porém vai demorar um pouco mais a resposta do mesmo).&lt;/p&gt;

&lt;p&gt;Vamos testar o llama3.2 que tem  bilhões de parâmetros.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg1ldqka38sb47yckkt4h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg1ldqka38sb47yckkt4h.png" alt="Image description" width="424" height="164"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para instalá-lo, entre no modelo, selecione a quantidade de parâmetros e copie o nome do mesmo, no nosso caso llama3.2:3b &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgf21uk1gex7qz78u1fi3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgf21uk1gex7qz78u1fi3.png" alt="Image description" width="800" height="323"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora volte ao WebUI e adicione esse nome em obter um modelo de ollama.com e clique no símbolo de download.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F30d8wt5rvs1rqanrfugv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F30d8wt5rvs1rqanrfugv.png" alt="Image description" width="485" height="222"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Quando clicar no download você irá ver uma barra de progresso carregando, ao finalizar você irá receber uma notificação verde.&lt;br&gt;
Recarregue a página e volte aos modelos, você deverá ver seu novo modelo ali.&lt;/p&gt;

&lt;p&gt;Agora é só testar!&lt;/p&gt;

&lt;p&gt;Clique em novo chat, selecione o modelo que você quer utilizar, e faça uma pergunta para testar. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fojxwfljqrxzwh8z3khdq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fojxwfljqrxzwh8z3khdq.png" alt="Image description" width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwrfczo919esiusv89dfx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwrfczo919esiusv89dfx.png" alt="Image description" width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No meu computador, modelos 3b rodam bem rápido, já os de 8b tendem a demorar cerca de 5 minutos para gerar uma resposta.&lt;/p&gt;

&lt;p&gt;Lendo modelos localmente você tem a opção de manter seus dados privados, sem suas informações irem para servidores terceiros, é uma ótima opção para empresas que não podem compartilhar dados confidencias mas ainda querem ter a opção de uso de alguma ferramenta de IA pelos seus funcionários. Lembrando que esses mesmos modelos também podem ser utilizados por outras ferramentas localmente como n8m, ou você pode criar sua própria base de conhecimento no WebUI, com arquivos de uma Wiki, por exemplo, e fazer com que o modelo leia e utilize esses arquivos para responder perguntas, facilitando a busca de informações dentro da empresa.&lt;/p&gt;




&lt;p&gt;Agora você tem seu próprio 'ChatGPT' configurado para rodar em casa!&lt;br&gt;
Claro que não é o ChatGPT em si, pois está utilizando outros modelos gratuitos (o deepseek é considerado tão bom quanto), mas caso você deseje, você pode adquirir uma chave e consumir o modelo do ChatGPT também pelo WebUI. Nos passos a seguir vou te ensinar como configurar uma API externa.&lt;/p&gt;

&lt;p&gt;Geralmente para utilizar APIs rodando externamente precisamos pagar o processamento da API, no nosso exemplo vamos utilizar o DeepSeek e este são os &lt;a href="https://api-docs.deepseek.com/quick_start/pricing" rel="noopener noreferrer"&gt;valores&lt;/a&gt;. Caso você não tenha nenhum balando, quando você tentar executar a API a mesma irá te retornar a mensagem que você não tem dinheiro na sua conta.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3bji6o7tl6khjccqrnha.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3bji6o7tl6khjccqrnha.png" alt="Image description" width="800" height="120"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Caso queira adicionar algum valor (até o momento o mínimo é 2 USD, sem taxas) vá até &lt;a href="https://platform.deepseek.com/top_up" rel="noopener noreferrer"&gt;Top up&lt;/a&gt; na plataforma e adicione.&lt;/p&gt;

&lt;p&gt;Faça uma conta no site do &lt;a href="https://www.deepseek.com/" rel="noopener noreferrer"&gt;DeepSeek&lt;/a&gt;. &lt;br&gt;
Acesse o mesmo e vá em API Keys e crie uma nova chave (salve essa chave).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9kw7ereqr2mjeam06f9n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9kw7ereqr2mjeam06f9n.png" alt="Image description" width="800" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Também vamos precisar de algumas informações fornecidas pela &lt;a href="https://api-docs.deepseek.com/" rel="noopener noreferrer"&gt;documentação da API&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Agora volte ao seu WebUI, vá nas configurações novamente mas desta vez em Conexões.&lt;/p&gt;

&lt;p&gt;Em API OpenAI clique no + para adicionar uma nova conexão. &lt;br&gt;
Pegue o endereço da API na documentação: &lt;code&gt;https://api.deepseek.com&lt;/code&gt; e também adicione sua chave. Não vamos escolher nenhum modelo em específico.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47g9ovccsz3f7ygxufmc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F47g9ovccsz3f7ygxufmc.png" alt="Image description" width="481" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Salve a configuração e vá em modelos. Os novos modelos deverão aparecer lá.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffgv7ba4e3zivfqoq8qbx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffgv7ba4e3zivfqoq8qbx.png" alt="Image description" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora volte ao chat, selecione o modelo que quer utilizar e teste novamente.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbj4psy70do4gdo1vs787.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbj4psy70do4gdo1vs787.png" alt="Image description" width="800" height="392"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Seu WebUI agora está configurado para interagir com modelos localmente e externamente! &lt;/p&gt;

</description>
    </item>
    <item>
      <title>DevTools Tips #1 Preserve Log - Como reter o log de suas requisições ao mudar de página</title>
      <dc:creator>Mariana Ribeiro</dc:creator>
      <pubDate>Wed, 18 Mar 2020 02:53:05 +0000</pubDate>
      <link>https://dev.to/womakerscode/devtools-tips-1-preserve-log-como-reter-o-log-de-suas-requisicoes-ao-mudar-de-pagina-15nh</link>
      <guid>https://dev.to/womakerscode/devtools-tips-1-preserve-log-como-reter-o-log-de-suas-requisicoes-ao-mudar-de-pagina-15nh</guid>
      <description>&lt;p&gt;Você como pessoa desenvolvedora em algum momento certamente já precisou de uma mãozinha das ferramentas de desenvolvedor do seu navegador para analisar algum problema fosse ele de front-end ou back-end. &lt;/p&gt;

&lt;p&gt;Este é o primeiro artigo de uma série que trará para você, pessoa desenvolvedora, dicas resumidas de como tirar melhor proveito desse conjunto de ferramentas disponíveis a apenas uma tecla (F12) de distância.&lt;/p&gt;

&lt;h6&gt;
  
  
  Para os exemplos deste tutorial eu usei o Microsoft Edge Dev, que tem como base o Chromium, então provavelmente você encontrará algo similar no Chrome, porém outros navegadores como o Firefox tem opções parecidas ou mesmo iguais.
&lt;/h6&gt;




&lt;p&gt;Você já ouviu falar da opção “Preserve Log/Preservar Log” na aba Network/Rede? &lt;/p&gt;

&lt;p&gt;Sabe quando você carrega uma página e precisa analisar uma sequência de requisições que estão sendo executadas em um processo, porém durante o procedimento você precisa realizar alguma ação que vai te redirecionar para outra página e então você perde todo o log daquela primeira página? A opção “Preserve Log” evita que o seu log de requisições seja perdido ao navegar entre páginas. &lt;/p&gt;

&lt;h3&gt;
  
  
  Onde e como utilizar essa opção?
&lt;/h3&gt;

&lt;p&gt;Abra as ferramentas de desenvolvedor do seu navegador, também conhecido como F12 ou dev tools, clicando na tecla F12. Outra opção seria acessando os três pontinhos perto de sua barra de endereços do navegador, então vá em "Mais ferramentas" e então selecione a opção "Ferramentas de desenvolvedor", ou ainda apenas utilizando o atalho Ctrl + Shift + i.&lt;/p&gt;

&lt;p&gt;Vá na aba Rede/Network e selecione “Preserve Log”:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fz0ggx0tktqy5xf3cs8en.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fz0ggx0tktqy5xf3cs8en.PNG" alt="Preserve Log selecionado" width="800" height="98"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sem “Preserve Log” marcado: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fpzpn9eknd28pgvzvhfbg.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fpzpn9eknd28pgvzvhfbg.gif" alt="Exemplo de carregamento de página sem Preserve Log selecionado" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Com “Preserve Log” marcado:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fw7c3ss0wgknge1kq80aa.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fw7c3ss0wgknge1kq80aa.gif" alt="Exemplo de carregamento de página sem Preserve Log selecionado" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E é isso, espero-os na próxima dica! &lt;/p&gt;

</description>
      <category>womakerscode</category>
      <category>devtools</category>
      <category>tips</category>
      <category>dicas</category>
    </item>
  </channel>
</rss>
