Pular para o conteúdo

Documentação do Secretia

O Secretia são três peças ligadas entre si: o Ollama roda os modelos, o Open WebUI é o chat, e uma pequena camada de nginx lhe dá a identidade do Escriba. Tudo roda no seu próprio servidor.

Internet ─► secretia (nginx, public) ─► open-webui (internal) ─► ollama (internal)
branding + magenta accent chat, users, OIDC local models

Ollama — o motor

Baixa e serve modelos abertos localmente por meio de uma API simples. Os modelos vivem em um volume, então sobrevivem a reinicializações. Ele só conversa com a internet para baixar um modelo.

Open WebUI — a interface

A interface de chat: conversas, usuários, seletor de modelos, entrada multimodal e OIDC nativo. Ele aponta para o Ollama através de OLLAMA_BASE_URL.

A camada de identidade

Um pequeno reverse-proxy nginx fica na frente e injeta o CSS do Secretia — a tipografia Inter e o tom magenta — e serve o logo, sem fazer fork da UI do Open WebUI.

Federação com o Lockatus

O OIDC nativo do Open WebUI é ligado ao Lockatus: registre secretia (redirect URI + matriz de acesso) e a família faz login uma vez, com 2FA e papéis por app.

A aparência do Escriba aqui é em nível de identidade, não um re-skin completo. O nome, o logo e o tom são nossos; a interface por baixo é o próprio design do Open WebUI. O tom é injetado como CSS pela camada nginx — robusto para os toques seguros (tipografia, links, foco, a barra superior), e em regime de melhor esforço para recolorações mais profundas, que podem precisar de um ajuste quando o Open WebUI muda sua marcação. Um re-skin pixel-perfect completo significaria fazer fork e manter a UI deles à mão — caro e frágil — então não fazemos isso.

Baixe o que couber no seu hardware:

  • llama3.1:8b — um modelo de chat geral sólido e leve.
  • qwen2.5:7b — uma alternativa forte.
  • llava:7b — multimodal: lê texto e imagens.

Um modelo de 7–8B pesa cerca de 4–5 GB. Eles rodam em CPU; uma GPU é dramaticamente mais rápida.