Ir para o conteúdo

Guia de Instalação

O ecossistema Wittgenstein disponibiliza diversos pacotes Python internos (como fastapi-openai, llm-router, observability e pipelines) que estão hospedados em nosso repositório Nexus privado.

Pré-requisitos

Antes de instalar as bibliotecas, garanta que você possui os seguintes itens no seu ambiente: 1. Python 3.11+ 2. Gerenciador de pacotes pip ou uv instalado 3. Credenciais de autenticação para o Nexus (NEXUS_USER e NEXUS_PASS)

Configurando o Index do Nexus

Para instalar os pacotes a partir do nosso registro privado PyPI no Nexus, você deve adicionar a flag --extra-index-url ao seu comando de instalação.

$ export NEXUS_USER="seu_usuario"
$ export NEXUS_PASS="sua_senha"
$ pip install wittgenstein-observability wittgenstein-pipelines \
  --extra-index-url https://${NEXUS_USER}:${NEXUS_PASS}@devops.buildaz.io/nexus/repository/pypi-internal/simple
---> 100%
Successfully installed wittgenstein-observability wittgenstein-pipelines

Dica para usuários do UV

Se você está usando o uv da Astral para resoluções ultrarrápidas, a sintaxe é idêntica. Basta substituir pip install por uv pip install.

Configuração Persistente

Para uma configuração permanente, você pode adicionar o repositório do Nexus ao seu pip.conf (ou uv.toml):

~/.config/pip/pip.conf
[global]
extra-index-url = https://ci:****@devops.buildaz.io/nexus/repository/pypi-internal/simple

Instalando as bibliotecas de segurança

As bibliotecas de segurança são distribuídas da mesma forma: o toolkit de backend Python pelo registro PyPI do Nexus e o cliente de navegador pelo npm.

$ uv pip install wittgenstein-oidc-backend \
  --extra-index-url https://${NEXUS_USER}:${NEXUS_PASS}@devops.buildaz.io/nexus/repository/pypi-internal/simple
---> 100%
Installed 1 package in 42ms
$ npm install @wittgenstein/oidc-client
---> 100%
added 1 package in 3s

Verifique a instalação

$ python -c "import wittgenstein_oidc_backend as m; print(sorted(m.__all__)[:3])"
['JwksClient', 'OidcMiddleware', 'OidcMode']
$ python -c "from wittgenstein_oidc_backend import create_oidc_bff_router, has_role; print('ok')"
ok

Gerando esta documentação localmente

O make build cria um virtualenv com uv, instala os requisitos do site, gera a referência do SDK a partir do wittgenstein-core (com cache) e executa o mkdocs build. Use .venv/bin/mkdocs serve para uma prévia ao vivo.

$ make build && .venv/bin/mkdocs serve
[sync-core-api] core@8f7bfa93: 21 libs, 0 to regenerate — everything served from cache
INFO    -  Documentation built in 13.80 seconds
INFO    -  Serving on http://127.0.0.1:8000/