Detector de plágio auto-hospedado com controle de dados
Execute o motor Apache 2.0 na sua própria infraestrutura. Docker compose para instalação padrão, Helm chart para Kubernetes, suporte a bare-metal em ambientes isolados. Seus servidores, seu Postgres, sua autenticação, seus dados. Nenhum tráfego sai do seu VPC. A escolha certa quando nuvem não é opção.
Quatro contextos onde nuvem não é opção.
Implantação preservando privilégio
Peças jurídicas, memoriais e materiais sob sigilo não podem ir para nuvem de terceiros.
- Rede isolada suportada
- Autenticação SAML / LDAP / Active Directory
- Executa dentro do seu ambiente já em conformidade
Revisão de Comitês Éticos, on-campus
Submissões estudantis, pesquisa clínica, estudos aprovados por comitê — exigências rígidas de residência de dados.
- Executa junto ao Canvas / Moodle na sua rede
- Apache 2.0 — sua TI clona o repositório antes da assinatura
- Modo residência UE se nuvem for o nível correto
Isolamento total + FedRAMP-adjacente
Federal, estadual, defesa — conteúdo não sai da rede do órgão.
- Opção de instalação bare-metal (não requer Docker)
- Autenticação OIDC / CAC / PIV com smart-card suportada
- Imagem base STIG-hardenizável (RHEL UBI)
Proteção de PI interna + segredo comercial
Documentos de P&D, minutas de M&A, whitepapers internos — conteúdo que deve permanecer dentro do firewall.
- Helm chart para Kubernetes para escala horizontal
- BYO Postgres + Redis + objeto store
- Audit log → SIEM (Splunk / Datadog / Elastic)
Três modos de implantação. Um único motor.
Escolha o caminho que corresponde à sua infraestrutura. O motor de detecção é idêntico em todos; muda só o empacotamento operacional.
01 · docker compose (10 min)
git clone github.com/NoplagLabs/noplag-engine && cd engine && docker compose up -d. O arquivo compose inclui Postgres + Redis + o container do engine + uma interface administrativa mínima. Padrão para implantação em nó único, adequada para equipes pequenas (~1.000 verificações/dia). Pronto para produção nesse formato; o mais trabalhoso é implementar autenticação e corpus próprios.
02 · Kubernetes Helm chart
helm install noplag noplag/engine --values seu-values.yaml. O chart externaliza Postgres + Redis (aponte para seu cluster), suporta escala horizontal dos pods do motor e expõe métricas Prometheus para autoscaling. Valores Helm documentados para limites, réplicas e volumes persistentes.
03 · Bare-metal / isolamento total
Para ambientes que não podem rodar Docker (algumas áreas de defesa + governo). Envio do motor como tar com todas as dependências fixadas; instalação via ansible playbook em RHEL UBI ou Ubuntu LTS. Isolamento amigável: sem chamadas externas após instalar. Imagem base STIG-hardenizável; OIDC / CAC / PIV inclusos.
O que precisa para rodar.
Baixo consumo de hardware para equipes pequenas. Escala horizontal para produção. Traga tudo — de autenticação a corpus — na versão Enterprise.
01 · NÓ DO MOTOR
Mínimo: 8 vCPU + 16 GB RAM para o container do motor. Suporta ~50 checagens simultâneas (mediana de 47s para documento de 1.500 palavras). Para escalar, adicione pods atrás do balanceador — Helm chart automatiza isso com HPA em CPU + fila.
02 · BANCO DE DADOS
PostgreSQL 15+ com extensão pgvector. Dimensione conforme seu volume de impressões digitais: ~50 GB para 100.000 documentos indexados, escala linearmente. RDS / Cloud SQL / instâncias gerenciadas suportadas. Postgres autogerenciado precisa das extensões pgvector + GIN ativas.
03 · CACHE / FILA
Redis 7+ para fila de trabalho + cache. Baixo consumo (~2 GB RAM típico). Elasticache / Memorystore / Redis Cloud ok; pod Redis no cluster resolve para deployments menores. O chart usa Redis Sentinel por padrão para HA.
04 · ARMAZENAMENTO DO CORPUS
Enterprise: fornece o corpus público como um pacote indexável (~280 GB compactados). Restaurado no Postgres + armazenamento de objetos (S3 / GCS / MinIO / Ceph) na primeira instalação. Opcional: use seus próprios adaptadores de busca web (chaves de API do Google / Brave) para verificação em tempo real, ou ignore se for verificar apenas contra o corpus indexado.
05 · IDENTIDADE
SAML 2.0, LDAP, OIDC (Okta, Azure AD, Auth0, Keycloak) ou login embutido email-senha. Autenticação smart-card (CAC / PIV) via ponte OIDC para governos. Multi-tenant suportado em uma instalação — útil para departamentos.
06 · OBSERVABILIDADE
Endpoint de métricas Prometheus + traces OpenTelemetry. Audit log em JSON; direcione para seu SIEM (Splunk, Datadog, Elastic, Grafana Loki). Dashboards prontos em JSON no repositório. Compatível com stack CNCF padrão.
Implantação docker compose padrão.
Stack pronto para produção com motor, Postgres, Redis e UI admin. Adicione seu provedor de autenticação; configure o corpus; escale em cluster quando necessário.
$ git clone https://github.com/NoplagLabs/noplag-engine$ cd engine$ cp .env.example .env$ vim .env # configure auth + corpus + secrets$ docker compose up -dCreating noplag-postgres ... doneCreating noplag-redis ... doneCreating noplag-engine ... doneCreating noplag-admin ... doneEngine ready at http://localhost:8080Admin UI at http://localhost:8081
# AuthAUTH_PROVIDER=saml # or oidc, ldap, builtinSAML_METADATA_URL=https://idp.acme.com/...# DatabasePOSTGRES_URL=postgres://user:pw@db:5432/noplagREDIS_URL=redis://redis:6379/0# CorpusCORPUS_BUNDLE_PATH=/srv/corpus/2026-05WEB_SEARCH_ENABLED=false # air-gap# ObservabilityOTEL_ENDPOINT=https://otel.acme.com:4317AUDIT_LOG_SINK=splunk-hec
- 10 mindocker compose até pronto
- 8 / 16vCPU / GB RAM mínimo
- Apache2.0 · grátis para sempre
- 0rede externa exigida (isolado)
- SAMLLDAP · OIDC · CAC / PIV smart-card
Integre à sua identidade já existente.
SSO enterprise padrão
Configure SAML_METADATA_URL apontando para seu IdP. Testado com Okta, Auth0, OneLogin, Microsoft Entra (Azure AD), Ping Identity, Keycloak e Shibboleth. Mapeamento de atributos de grupo para acesso baseado em função. Provisionamento SCIM 2.0 suportado via API admin.
Integração direta com Active Directory
Para ambientes com AD local ou OpenLDAP. Credenciais no .env; consultas de grupo controlam acesso. Útil para universidades + escritórios de advocacia + órgãos em que SAML é demais ou AD cobre tudo.
OIDC para cloud-native + CAC/PIV para defesa
OIDC padrão para Okta / Auth0 / Cognito / Google Workspace. Para defesa/federal: smart-card CAC/PIV via ponte OIDC. Mapeia o identificador do smart-card a um usuário Noplag; grupos seguem o diretório DoD da organização.
Atualize no seu ritmo, não no nosso.
Autogerenciado significa controle sobre atualizações. Releases estáveis mensais (mesma versão da nuvem), patch quando houver questões de segurança. Puxe o novo tag, rode docker compose pull && up -d, pronto. Migrações automaticamente ao iniciar o container. Para ambientes isolados: bundles assinados (RPM / DEB / tar), verifique e transfira pelo fluxo de aprovação já existente e instale na próxima janela de manutenção. Tags de LTS recebem patches críticos por 18 meses; produção recebe atualizações mensais junto ao ciclo da nuvem. Em ambos casos: upgrade é seu, dados são seus, só publicamos no registry.
Leia o guia de atualizaçãoO que TI/DevOps realmente pergunta antes de implantar.
O que é realmente gratuito versus pago na versão autogerenciada?
O motor Apache 2.0 é gratuito para sempre — clone o repo, rode. Gratuito inclui cascata de detecção + UI admin + REST API. Enterprise agrega: bundle corpus público indexável (~280GB), suporte SLA, entrega de release assinada para ambientes isolados e auxílio de migração.
Posso rodar sem acesso à internet (isolado)?
Sim. O motor não exige acesso externo para checagem no corpus indexado. Defina WEB_SEARCH_ENABLED=false para pular a camada web ao vivo. Enterprise envia bundles assinados com assinaturas GPG — transfira usando o processo de aprovação já existente. Testado em ambientes DoD e inteligência.
Qual o footprint mínimo de hardware?
Container do motor: 8 vCPU + 16 GB RAM. Postgres: 4 vCPU + 8 GB + ~50 GB para 100k docs indexados. Redis: ~2 GB RAM. Para 5.000 checagens/mês um único servidor médio roda tudo. Com 100k+ checagens/mês, use Kubernetes + escala horizontal + Postgres gerenciado.
Funciona com nossa infraestrutura de identidade?
SAML 2.0 (Okta, Auth0, Entra, OneLogin, Keycloak, Shibboleth), LDAP / AD, OIDC, smart-card CAC/PIV via ponte OIDC para ambiente federal ou login embutido. SCIM 2.0 suportado. Mapeamento de grupos para função configurável.
E o pgvector — dependência obrigatória?
Será necessário para a camada de embeddings vetoriais L3 (v1.2); a v1.0 não exige. Postgres 15+ com pgvector. RDS / Cloud SQL / Cloud Postgres já oferecem suporte. Em Postgres autogerenciado, é preciso executar CREATE EXTENSION pgvector na implantação. Sem isso, o engine executa as camadas fornecidas, mas perderá a camada semântica de paráfrase quando ela for lançada.
Como obter o corpus público numa rede privada?
Enterprise: envio como bundle assinado de ~280 GB. Transfira via processo de importação já existente, restaure em Postgres + objeto store na primeira instalação. Atualizado mensalmente junto ao corpus da nuvem. Comunidade: construa a partir dos dumps públicos do OpenAlex / CORE / Common Crawl usando scripts de ingestão.
Como é a atualização em produção?
Releases estáveis todo mês (mesmo commit da nuvem). LTS recebe 18 meses de patches. Atualização padrão: docker compose pull && up -d (Helm: helm upgrade). Migrações automáticas ao iniciar; semver respeitado; breaking changes documentados nas notas de migração.
Atende SOC 2 / HIPAA / FedRAMP?
Autogerenciado: postura de compliance é sua responsabilidade — oferecemos o motor, vocês rodam no ambiente que já atende às exigências. Somos uma empresa open-core relançando e não temos autorizações SOC 2, HIPAA ou FedRAMP; não dizemos que temos. O autogerenciado viabiliza rodar Noplag totalmente sob seus controles — suporta isolamento, bare-metal, CAC/PIV, controle do lado do cliente, nada sai da rede.
Dá para customizar o pipeline de detecção?
Apache 2.0 — fork e modifique. Operadores autogerenciados já implementaram: corpus personalizado, classificadores de citação regionais e plug-ins de integração. PRs upstream bem-vindos; revisamos e mesclamos conforme aplicável para base ampla.
E suporte?
Comunidade: issues do GitHub, Discord público, docs mantidas pela comunidade. Respondemos a bug reports e disclosure de segurança, mas não garantimos SLA. Enterprise: engenheiro dedicado, ponto de contato nomeado, SLA, apoio customizado, auxílio à migração.
Clone o repo. docker compose up. Rode dentro da sua rede.
Apache 2.0 — gratuito para sempre. Contratos empresariais incluem pacote de corpus público indexável, SLA de suporte dedicado e entrega de versões assinadas para ambientes isolados. Fora isso: github.com/NoplagLabs/noplag-engine e um host docker sob seu controle.