Como achar documentos parecidos?
Compara documentos pelo conteúdo e devolve os mais parecidos com o que você indicar — mesmo quando nomes de arquivo, datas e formatação não ajudam em nada. Encontra versões de um mesmo contrato, textos duplicados com outras palavras e material redundante. Para quem administra bases de documentos que só crescem.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
Parecido de verdade, não parecido de nome
“contrato_final_v2_REVISADO.docx” e “minuta-jan.pdf” podem ser o mesmo documento — e nenhuma ferramenta de arquivos vai perceber. A comparação aqui ignora nome, formato e data: o que conta é o conteúdo, transformado em vetores e medido por proximidade de significado. Dois textos que dizem a mesma coisa com palavras diferentes aparecem juntos; dois arquivos de nome idêntico e conteúdo distinto, não.
Como pedir a comparação
Com a sua base indexada, você indica um documento ou trecho de referência e a tarefa devolve os mais próximos do índice, ordenados por similaridade. O retorno vem em JSON pela tarefa, com a pontuação de cada vizinho — material pronto para alimentar uma tela de “documentos relacionados”, um fluxo de revisão ou um relatório de redundância. Cada consulta é uma chamada; a base pode ter até 10.000 trechos.
Duplicata, versão ou só mesmo assunto?
A pontuação de similaridade ajuda a separar os casos. Valores muito altos costumam indicar quase-duplicatas — o mesmo texto com ajustes pontuais, típico de versões de contrato. Valores intermediários apontam documentos do mesmo assunto, úteis para agrupar e navegar. A leitura final é sua: a tarefa entrega a régua ordenada, e o contexto do seu negócio diz onde cortar.
O custo de nunca mais duplicar
Cada consulta de similaridade custa US$ 0,002 de chamada mais US$ 0,0015: US$ 0,0035. Verificar cada documento novo contra a base inteira — o uso mais comum — significa uma consulta por documento que entra: 500 documentos novos no mês, US$ 1,75. Comparado ao custo de um retrabalho sobre a versão errada de um contrato, é ruído na planilha.
Casos de uso
Versões de contrato sob controle
Márcia Regina Oliveira, advogada em São Paulo, verifica cada minuta nova contra a base do escritório. Quando um cliente manda “um contrato novo” que é 95% igual ao modelo do ano passado, ela descobre em segundos — e cobra a revisão, não a redação.
Blog sem conteúdo repetido
Uma editora de conteúdo confere cada artigo novo contra 900 posts publicados. Se o texto encomendado repete um artigo de 2022 com outras palavras, a pauta volta para o redator antes de ir ao ar — melhor para o leitor e para o SEO.
Propostas quase idênticas em licitação
Uma equipe de compras compara as propostas técnicas recebidas entre si. Duas propostas de fornecedores “concorrentes” com similaridade altíssima acendem o alerta para análise humana mais cuidadosa.
Perguntas frequentes
Serve para detectar plágio?
Serve para encontrar semelhança de conteúdo, que é a matéria-prima dessa análise — mas o veredito de plágio envolve contexto, citação e direito autoral, e continua sendo humano. A tarefa mostra o quanto dois textos se parecem; o julgamento é seu.
Preciso indexar os documentos antes?
Sim: a comparação roda sobre o seu índice, montado com as tarefas de indexação de texto ou de documentos. Depois disso, cada verificação é uma consulta simples.
Ele acha o mesmo texto em idiomas diferentes?
A comparação é por significado, o que ajuda mesmo quando o vocabulário muda. Entre idiomas, porém, o resultado varia conforme o material — teste com uma amostra da sua base antes de assumir esse caso de uso.
Quanto custa revisar minha base inteira?
Uma consulta por documento de referência: US$ 0,0035 cada. Cruzar 500 documentos novos contra o índice custa US$ 1,75, pagos por uso, sem assinatura.
Meus contratos são confidenciais. Quem vê o índice?
Só as suas chamadas de API consultam o seu índice — ele não é compartilhado nem exposto. Ainda assim, aplique o mesmo critério dos originais: indexe o necessário e controle quem na equipe usa a integração.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/search/similar-docs \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/search/similar-docs", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/search/similar-docs",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/search/similar-docs", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/search/similar-docs", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"input": "…"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "search.similar_docs",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_chunks | 10000 |
max_tokens | 20000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |