Spaces:
Sleeping
A newer version of the Gradio SDK is available:
6.5.1
Secrets para Hugging Face Spaces
Guia completo para configurar secrets no Hugging Face Spaces para o RAG Template.
Como Configurar Secrets
- Acesse seu Space no Hugging Face
- Va para Settings
- Role ate a secao Repository secrets
- Clique em New secret para cada secret necessario
- Adicione nome e valor
- Clique em Add secret
Secrets Obrigatorios
DATABASE_URL
Obrigatorio: Sim
Connection string do PostgreSQL com pgvector.
Formato:
postgresql://user:password@host:port/database
Exemplos:
# Supabase
postgresql://postgres:sua_senha@db.xxxxxxxxxxxxx.supabase.co:5432/postgres
# Neon
postgresql://user:senha@ep-xxx-xxx.us-east-1.aws.neon.tech/neondb?sslmode=require
# Railway
postgresql://postgres:senha@containers-us-west-xxx.railway.app:5432/railway
Importante:
- Certifique-se de que a senha esta URL-encoded se conter caracteres especiais
- Para Neon, inclua
?sslmode=require - Teste a conexao antes de adicionar ao Space
Como obter:
Secrets de LLM Providers
Voce precisa de pelo menos um destes para usar o chat:
HF_TOKEN (Recomendado para Spaces)
Obrigatorio: Nao, mas recomendado
Token da Hugging Face para usar Inference API.
Como obter:
- Va para huggingface.co/settings/tokens
- Crie novo token com permissao "read"
- Copie o token
Formato:
hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Vantagens:
- Gratuito (com limites)
- Sem necessidade de infraestrutura
- Varios modelos disponiveis
Limites Free Tier:
- ~30k tokens/hora
- Pode ter queue em horarios de pico
OPENAI_API_KEY
Obrigatorio: Nao
Chave de API da OpenAI para usar GPT-4, GPT-3.5, etc.
Como obter:
- Crie conta em platform.openai.com
- Va para API Keys
- Crie nova secret key
- Copie a chave (aparece apenas uma vez!)
Formato:
sk-proj-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Custos (Fevereiro 2024):
- GPT-3.5-turbo: $0.50 / 1M tokens input
- GPT-4-turbo: $10 / 1M tokens input
- GPT-4o: $5 / 1M tokens input
ANTHROPIC_API_KEY
Obrigatorio: Nao
Chave de API da Anthropic para usar Claude.
Como obter:
- Crie conta em console.anthropic.com
- Va para API Keys
- Crie nova key
- Copie a chave
Formato:
sk-ant-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Custos (Fevereiro 2024):
- Claude 3 Haiku: $0.25 / 1M tokens input
- Claude 3 Sonnet: $3 / 1M tokens input
- Claude 3 Opus: $15 / 1M tokens input
OLLAMA_BASE_URL
Obrigatorio: Nao
URL do servidor Ollama para usar modelos locais.
Como configurar:
- Instale Ollama localmente ou em servidor
- Exponha via ngrok ou similar (para Spaces)
- Use URL publica
Formato:
https://seu-servidor.com
Nota: Nao recomendado para Spaces publicos (requer servidor proprio).
Secrets Opcionais
EMBEDDING_MODEL_ID
Default: sentence-transformers/all-MiniLM-L6-v2
Modelo para gerar embeddings.
Alternativas:
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2 # Multilingue
sentence-transformers/all-mpnet-base-v2 # Melhor qualidade (768d)
BAAI/bge-small-en-v1.5 # Eficiente
TOP_K
Default: 4
Numero de documentos a recuperar na busca.
Range: 1-20
TEMPERATURE
Default: 0.3
Criatividade do LLM (0 = deterministico, 1 = criativo).
Range: 0.0-1.0
MAX_TOKENS
Default: 512
Tamanho maximo da resposta do LLM.
Range: 100-4096
Exemplo Completo
# Obrigatorio
DATABASE_URL=postgresql://postgres:senha@db.xxx.supabase.co:5432/postgres
# LLM (escolha pelo menos um)
HF_TOKEN=hf_xxxxxxxxxxxxxxxxxxxxx
OPENAI_API_KEY=sk-proj-xxxxxxxxxxxxx
ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxx
# Opcional
EMBEDDING_MODEL_ID=sentence-transformers/all-MiniLM-L6-v2
TOP_K=4
TEMPERATURE=0.3
MAX_TOKENS=512
Validacao de Secrets
Apos configurar, o app validara os secrets na inicializacao:
Validacoes:
- DATABASE_URL: Testa conexao e verifica extensao pgvector
- HF_TOKEN: Testa autenticacao (se fornecido)
- OPENAI_API_KEY: Testa autenticacao (se fornecido)
- ANTHROPIC_API_KEY: Testa autenticacao (se fornecido)
Logs de inicializacao:
Conectando ao banco de dados...
DATABASE_URL: OK
Extensao pgvector: OK
Verificando LLM providers...
HuggingFace: OK
OpenAI: NAO CONFIGURADO
Anthropic: NAO CONFIGURADO
Seguranca
Boas Praticas:
Nunca compartilhe secrets publicamente
- Nao commite no Git
- Nao coloque em codigo
- Nao compartilhe em issues/forums
Rotacao de secrets
- Troque secrets periodicamente
- Revogue secrets antigos
- Use secrets separados para dev/prod
Principio do menor privilegio
- Use apenas permissoes necessarias
- Para HF_TOKEN, permissao "read" e suficiente
- Nao use tokens com permissoes de "write"
Monitoring
- Monitore uso de API keys
- Configure alerts de uso anormal
- Revogue imediatamente se comprometido
Troubleshooting
"Unable to connect to database"
Causa: DATABASE_URL incorreto ou banco inacessivel
Solucao:
- Verifique formato da URL
- Teste conexao localmente
- Verifique se banco esta ativo (Supabase nao pausado)
"HF_TOKEN invalid"
Causa: Token invalido ou expirado
Solucao:
- Gere novo token em huggingface.co/settings/tokens
- Certifique-se de copiar token completo
- Token deve comecar com
hf_
"OpenAI authentication failed"
Causa: OPENAI_API_KEY invalida
Solucao:
- Verifique se key e valida em platform.openai.com
- Certifique-se de ter creditos na conta
- Key deve comecar com
sk-
"Extension 'vector' not found"
Causa: pgvector nao habilitado no banco
Solucao:
-- Execute no SQL Editor do seu provider
CREATE EXTENSION vector;
Limitacoes do Free Tier
Hugging Face Spaces
- Secrets podem ser vistos por administradores do Space
- Spaces publicos podem ter limite de uso
- Cold start pode demorar
LLM Providers
- HuggingFace: ~30k tokens/hora
- OpenAI: Requer creditos ($5 minimo inicial)
- Anthropic: Requer creditos ($5 minimo inicial)
Recursos Adicionais
Suporte
Se encontrar problemas:
- Verifique logs do Space
- Teste conexoes localmente
- Abra issue no GitHub
Feito com muito cafe