Skip to content

Instantly share code, notes, and snippets.

@PaPaPaulitos
Created February 13, 2025 17:26
Show Gist options
  • Select an option

  • Save PaPaPaulitos/877ccf320eb004a34cea73865ed5a30a to your computer and use it in GitHub Desktop.

Select an option

Save PaPaPaulitos/877ccf320eb004a34cea73865ed5a30a to your computer and use it in GitHub Desktop.
Criando servidor de IA com o Ollama

Primeiros passos

Requisitos de Hardware

Os requisitos de hardware dependem muito do modelo que você for rodar na sua máquina.

  • Modelos FP16/FP32 (não quantizados):

    • GPU: 16–24+ GB de VRAM (dependendo do tamanho do modelo)
    • RAM: 32–64 GB
    • Uso: Maior precisão e qualidade, mas exige hardware mais robusto.
  • Modelos Quantizados (8-bit/4-bit):

    • GPU: 8–10 GB de VRAM (ou mesmo CPU para inferência, com desempenho reduzido)
    • RAM: 16–32 GB
    • Uso: Menor exigência de hardware com um trade-off mínimo em qualidade para muitas aplicações de inferência.

Quero adquirir um servidor cloud.

Sistema Operacional do servidor

Instalação do Ollama

Caçando outros modelos

Para fazer esses modelos rodarem no Ollama utilize o comando abaixo.

$ ollama run hf.co/{username}/{repository}

Proteger meu LLM em rede com o Caddy

Instale o Caddy no sistema.

  • Crie um Caddyfile

Exemplo:

nibby.paulitoscompany.tech {
    reverse_proxy 0.0.0.0:3200
}

tutor.paulitoscompany.tech {
    reverse_proxy 0.0.0.0:3100
}

Os Caddyfile ficam em /etc/caddy/Caddyfile

  • É necessário atualizar o serviço do systemd que fica em /etc/systemd/system/caddy.service
[Unit]
Description=Caddy HTTP/2 web server
After=network.target

[Service]
User=root
Group=root
ExecStart=/usr/bin/caddy run --config /etc/caddy/Caddyfile
ExecReload=/usr/bin/caddy reload --config /etc/caddy/Caddyfile
Restart=always
TimeoutStopSec=15s
ProtectSystem=full
AmbientCapabilities=CAP_NET_BIND_SERVICE

[Install]
WantedBy=multi-user.target
  • Para fazer as modificações do Caddyfile rode o seguinte comando:
$ systemctl restart caddy

Criando Basic Auth

  • Crie uma senha criptografada:
$ htpasswd -nbBC 10 admin senha123
  • Adicione ela ao seu Caddyfile assim:
example.com {
        basicauth {
            admin $2y$10$XXXXXXXXXXXXXXX...
        }
        reverse_proxy 0.0.0.0:3300
    }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment