update 2
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# Leads Extractor
|
||||
|
||||
Extrator assíncrono de canais de podcast, entrevistados e contatos públicos. O
|
||||
backend usa Rust, Actix, Tokio, Chromiumoxide, PostgreSQL e OpenAI; o frontend
|
||||
backend usa Rust, Actix, Tokio, Chromiumoxide, PostgreSQL e OpenRouter; o frontend
|
||||
usa SvelteKit, TypeScript e Tailwind CSS.
|
||||
|
||||
## Arquitetura
|
||||
@@ -46,11 +46,10 @@ usa SvelteKit, TypeScript e Tailwind CSS.
|
||||
|
||||
2. Prepare o backend:
|
||||
|
||||
```bash
|
||||
cp backend/.env.example backend/.env
|
||||
```
|
||||
Crie `backend/.env` com as variáveis descritas na seção
|
||||
[Variáveis de ambiente](#variáveis-de-ambiente) abaixo.
|
||||
|
||||
Edite apenas a cópia local `backend/.env`. Além da OpenAI e da DataImpulse,
|
||||
Edite apenas a cópia local `backend/.env`. Além do OpenRouter e da DataImpulse,
|
||||
defina um usuário de acesso e uma senha exclusiva com pelo menos 12
|
||||
caracteres:
|
||||
|
||||
@@ -77,7 +76,12 @@ usa SvelteKit, TypeScript e Tailwind CSS.
|
||||
```bash
|
||||
cd frontend
|
||||
npm ci
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
Crie `frontend/.env` com as variáveis descritas na seção
|
||||
[Variáveis de ambiente](#variáveis-de-ambiente) abaixo, então:
|
||||
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
@@ -120,7 +124,7 @@ remove o banco e causa perda de dados; use apenas quando isso for intencional.
|
||||
|
||||
O Compose fornecido é destinado ao banco local. Em publicação, execute backend
|
||||
e frontend com o gerenciador de processos ou orquestrador escolhido e mantenha
|
||||
senhas, chave da OpenAI e credenciais da DataImpulse em um gerenciador de
|
||||
senhas, chave da OpenRouter e credenciais da DataImpulse em um gerenciador de
|
||||
segredos. Defina uma senha PostgreSQL forte, `FRONTEND_ORIGIN` com a origem
|
||||
HTTPS exata e `AUTH_COOKIE_SECURE=true`. Não publique a API sem TLS.
|
||||
|
||||
@@ -164,12 +168,17 @@ estar percent-encoded nessa URL.
|
||||
|
||||
### Backend
|
||||
|
||||
O arquivo de referência é `backend/.env.example`.
|
||||
Referência completa das variáveis: `backend/src/config.rs` e o `.env` na raiz
|
||||
(usado pelo Compose).
|
||||
|
||||
- `OPENAI_API_KEY`: obrigatória para resumos, categorização e extração por IA;
|
||||
o servidor pode iniciar sem ela, mas esses fluxos falham de forma explícita.
|
||||
- `OPENAI_MODEL`, `OPENAI_BASE_URL`, timeouts e retries: configuração do
|
||||
provedor de IA.
|
||||
- `OPENROUTER_API_KEY`: obrigatória para resumos, categorização e extração por
|
||||
IA; o servidor pode iniciar sem ela, mas esses fluxos falham de forma
|
||||
explícita.
|
||||
- `OPENROUTER_PRIMARY_MODEL` / `OPENROUTER_FALLBACK_MODEL`, `OPENROUTER_BASE_URL`,
|
||||
timeouts e retries: configuração do provedor de IA (OpenRouter). Se o
|
||||
modelo principal estiver indisponível ou falhar, o próprio OpenRouter tenta
|
||||
automaticamente o modelo de fallback na mesma requisição; deixe
|
||||
`OPENROUTER_FALLBACK_MODEL` vazio para desativar o fallback.
|
||||
- `AUTH_USERNAME`: usuário obrigatório para acessar a aplicação; não há valor
|
||||
padrão seguro.
|
||||
- `AUTH_PASSWORD`: senha obrigatória com pelo menos 12 caracteres.
|
||||
@@ -207,7 +216,7 @@ contexto de build, mas isso não substitui um gerenciador de segredos.
|
||||
|
||||
### Frontend
|
||||
|
||||
O arquivo de referência é `frontend/.env.example`.
|
||||
Referência completa das variáveis: `.env` na raiz (usado pelo Compose).
|
||||
|
||||
- `VITE_API_URL`: URL da API; localmente, `http://localhost:8080`. Deve usar o
|
||||
mesmo `SERVER_PORT` configurado no backend.
|
||||
|
||||
Reference in New Issue
Block a user