Versão do manual: 1.0
Idioma: Português
Projeto: volotat/Anagnorisis
Site/artigo relacionado: File Sharing is All We Need
O Anagnorisis é uma plataforma local de gerenciamento, busca e recomendação de arquivos. A proposta é permitir que você organize e descubra conteúdos como imagens, músicas, textos e vídeos usando modelos de inteligência artificial que rodam no seu próprio computador.
A ideia principal é simples:
O foco do projeto é privacidade: seus arquivos, avaliações e modelos ficam no seu computador, sem depender de uma plataforma centralizada.
O Anagnorisis pode ser útil para quem quer:
Este não é, pelo menos por enquanto, um programa casual com instalador simples. Ele é mais indicado para usuários com alguma familiaridade com terminal, Docker, Git e configuração de caminhos de pastas.
Segundo a documentação do projeto, o sistema pode rodar com:
Para uma experiência melhor, o próprio autor recomenda algo mais próximo de:
O container Docker pode ocupar dezenas de gigabytes depois de baixar dependências e modelos de IA.
Você vai precisar de:
A forma recomendada de executar o Anagnorisis é via Docker. Isso evita boa parte dos problemas com dependências Python, versões de CUDA, PyTorch e bibliotecas de machine learning.
O fluxo geral é:
Abra um terminal e execute:
git clone https://github.com/volotat/Anagnorisis.git
cd Anagnorisis
Isso baixa o código do projeto para uma pasta chamada Anagnorisis.
Depois de entrar na pasta do projeto, copie o arquivo de configuração de exemplo:
cp docker-compose.override.example.yaml docker-compose.override.yaml
No Windows PowerShell, o comando equivalente pode ser:
Copy-Item docker-compose.override.example.yaml docker-compose.override.yaml
Agora abra o arquivo docker-compose.override.yaml em um editor de texto.
Você deverá configurar quais pastas do seu computador serão acessíveis dentro do container.
Exemplo em Linux/macOS:
volumes:
# Configuração do projeto: banco de dados, modelos treinados e cache
- /home/seu_usuario/Anagnorisis-config:/mnt/project_config
# Imagens
- /home/seu_usuario/Fotos:/mnt/media/images/Fotos
# Músicas
- /home/seu_usuario/Musicas:/mnt/media/music/Musicas
# Textos/documentos
- /home/seu_usuario/Documentos:/mnt/media/text/Documentos
# Vídeos
- /home/seu_usuario/Videos:/mnt/media/videos/Videos
Exemplo conceitual no Windows:
volumes:
- C:/Users/SeuUsuario/Anagnorisis-config:/mnt/project_config
- C:/Users/SeuUsuario/Pictures:/mnt/media/images/Pictures
- C:/Users/SeuUsuario/Music:/mnt/media/music/Music
- C:/Users/SeuUsuario/Documents:/mnt/media/text/Documents
- C:/Users/SeuUsuario/Videos:/mnt/media/videos/Videos
Cada linha segue este formato:
/caminho/no/seu/computador:/mnt/media/TIPO/NOME
Onde:
/caminho/no/seu/computador é a pasta real no seu sistema;/mnt/media/TIPO/NOME é o caminho usado dentro do container;TIPO pode ser images, music, text ou videos;NOME é o nome que aparecerá dentro da interface do Anagnorisis.Exemplo:
- /home/pablo/FotosViagem:/mnt/media/images/Viagens
Nesse caso, a pasta local /home/pablo/FotosViagem aparecerá no módulo de imagens com o nome Viagens.
Se você usa Docker Desktop, especialmente no Windows ou macOS, talvez precise permitir explicitamente o acesso às pastas de mídia.
No Docker Desktop:
Se você não fizer isso, o container pode iniciar, mas não conseguir ler suas pastas.
Na pasta do projeto, execute:
docker compose up -d
O parâmetro -d executa o container em segundo plano.
Na primeira inicialização, o sistema pode demorar bastante porque precisa baixar modelos de IA e preparar caches.
Depois de iniciado, abra no navegador:
http://localhost:5001
Se você alterou a porta no arquivo de configuração, use a porta configurada.
Se a interface não abrir ou parecer travada na inicialização, consulte os logs.
Na pasta do projeto, procure a pasta:
logs/
O arquivo de log costuma seguir o padrão:
logs/anagnorisis-app_log.txt
ou usar o nome do container configurado.
Você também pode verificar pelo Docker:
docker compose logs -f
Esse comando mostra os logs em tempo real.
Para parar o Anagnorisis, execute:
docker compose down
Isso desliga o container, mas mantém suas configurações, banco de dados e arquivos de projeto nas pastas configuradas.
Para iniciar novamente:
docker compose up -d
Para reiniciar reconstruindo a imagem, por exemplo depois de atualizar código ou módulos:
docker compose up -d --build
Depois de abrir http://localhost:5001, você deve ver a interface web do Anagnorisis.
A interface é organizada por módulos. Os módulos internos incluem:
A disponibilidade e comportamento exato podem mudar conforme a versão instalada.
O uso básico do Anagnorisis segue este ciclo:
Adicionar dados
Você monta pastas com seus arquivos no docker-compose.override.yaml.
Explorar arquivos
Você navega pelos módulos de imagem, música, texto ou vídeo.
Avaliar conteúdos
Você dá notas para os itens, geralmente em uma escala de 0 a 10.
Treinar o modelo
Depois de acumular avaliações suficientes, você usa a página Train para ajustar um modelo às suas preferências.
Receber recomendações ou ordenações melhores
O modelo passa a estimar quais arquivos você provavelmente avaliaria melhor.
Corrigir o modelo
Se o sistema errar, você altera a nota. Essas correções viram novos dados para treinamentos futuros.
Repetir o ciclo
Quanto mais avaliações boas e variadas você fornece, melhor tende a ficar o modelo.
A avaliação é a base do sistema.
Use uma escala consistente. Uma sugestão prática:
| Nota | Significado sugerido |
|---|---|
| 0 | Detesto / irrelevante / não quero ver |
| 1-2 | Muito ruim |
| 3-4 | Fraco ou pouco interessante |
| 5 | Neutro |
| 6-7 | Bom |
| 8 | Muito bom |
| 9 | Excelente |
| 10 | Exatamente o tipo de coisa que quero encontrar mais |
O ponto importante: não avalie tudo com nota alta. Se você der 8, 9 ou 10 para quase tudo, o modelo aprende pouco. Ele precisa de contraste.
Depois de avaliar uma quantidade razoável de arquivos, vá até o módulo Train.
O objetivo do treinamento é criar um modelo que tente prever suas notas para conteúdos ainda não avaliados.
Um fluxo sensato:
Não espere mágica com poucas avaliações. Um modelo com 20 avaliações provavelmente será instável. Um modelo com centenas de avaliações bem distribuídas tende a ser muito mais útil.
O Anagnorisis oferece mecanismos de busca baseados em nomes, conteúdo, embeddings e metadados, dependendo do módulo e da versão.
Na prática, você pode usar o sistema para:
A versão 0.3.x do projeto dá bastante ênfase a busca unificada e uso de descrições .meta.
.meta¶Uma ideia importante do projeto é usar arquivos pequenos de metadados para representar arquivos grandes.
Exemplo:
video_exemplo.mp4
video_exemplo.mp4.meta
O arquivo .meta pode conter descrições como:
Isso permite que o sistema busque e recomende arquivos pesados sem precisar processar o arquivo inteiro o tempo todo.
Exemplo simples de .meta:
Title: Aula sobre redes P2P
Author: Exemplo
Description: Vídeo explicando BitTorrent, IPFS, compartilhamento de arquivos e descoberta descentralizada de conteúdo.
Tags: p2p, bittorrent, ipfs, redes, descentralização
Uma estrutura simples pode ser:
Anagnorisis-config/
Fotos/
Musicas/
Documentos/
Videos/
Exemplo mais organizado:
Midia/
Imagens/
Fotos Pessoais/
Referencias Visuais/
Screenshots/
Musicas/
Biblioteca Principal/
Downloads/
Textos/
Artigos/
Notas/
PDFs/
Videos/
Aulas/
Documentarios/
No docker-compose.override.yaml, você pode montar várias pastas por módulo:
volumes:
- /home/user/Anagnorisis-config:/mnt/project_config
- /home/user/Midia/Imagens/Fotos Pessoais:/mnt/media/images/Fotos
- /home/user/Midia/Imagens/Screenshots:/mnt/media/images/Screenshots
- /home/user/Midia/Musicas/Biblioteca Principal:/mnt/media/music/Biblioteca
- /home/user/Midia/Textos/Artigos:/mnt/media/text/Artigos
- /home/user/Midia/Videos/Aulas:/mnt/media/videos/Aulas
O projeto permite executar várias instâncias independentes. Isso pode ser útil para:
O repositório inclui exemplos na pasta instances/.
Fluxo geral:
cp instances/example-personal.yaml instances/personal.yaml
Edite instances/personal.yaml e configure:
Depois execute:
docker compose -f docker-compose.yaml -f instances/personal.yaml up -d
Para parar:
docker compose -f docker-compose.yaml -f instances/personal.yaml down
O Anagnorisis usa um sistema modular. Módulos ficam dentro da pasta:
modules/
Para instalar um módulo externo:
cd modules
git clone <url-do-modulo>
cd ..
docker compose up -d --build
Segundo a documentação do projeto, existem módulos externos experimentais como:
Por serem experimentais, use com cautela. A estabilidade pode variar.
Para atualizar o código:
git pull
Depois reconstrua e reinicie:
docker compose up -d --build
Antes de atualizar, faça backup da pasta de configuração, especialmente do banco de dados.
O arquivo mais importante é o banco de dados do projeto. Ele guarda suas avaliações, preferências e histórico.
Depois da primeira execução, o projeto cria uma estrutura dentro da pasta configurada como:
/mnt/project_config
No seu computador, isso corresponde à pasta que você mapeou, por exemplo:
/home/user/Anagnorisis-config
Dentro dela, procure por algo como:
database/project.db
Faça backup periódico desse arquivo ou da pasta inteira de configuração.
Exemplo:
cp -r /home/user/Anagnorisis-config /home/user/Backups/Anagnorisis-config-backup
Por padrão, o Anagnorisis foi pensado para rodar localmente, acessível apenas pela própria máquina.
A configuração padrão costuma usar:
127.0.0.1
Isso significa que apenas o computador local acessa o sistema.
Evite expor o Anagnorisis diretamente à internet. O próprio projeto alerta que ainda não há trabalho de segurança suficiente para tratar a aplicação como um serviço público exposto.
Se você alterar o binding para:
0.0.0.0:5001:5001
outros dispositivos da rede poderão acessar. Isso pode ser útil em uma rede doméstica, mas aumenta o risco.
Recomendação direta: se você não entende bem rede, autenticação, firewall e proxy reverso, não exponha esse sistema fora do seu computador.
Verifique se o container está rodando:
docker compose ps
Veja os logs:
docker compose logs -f
Confirme se está acessando a porta correta:
http://localhost:5001
Isso pode ser normal. Na primeira inicialização, o sistema baixa modelos grandes de IA e prepara caches.
Espere e acompanhe os logs.
Se aparecer erro parecido com:
Cannot start service anagnorisis: error while creating mount source path ... operation not permitted
Crie manualmente a pasta no sistema host e garanta que o Docker tenha permissão para acessá-la.
Confira:
docker-compose.override.yaml estão corretos;images, music, text ou videos;Possíveis causas:
Solução prática: espere a indexação inicial terminar, reduza o número de pastas montadas ou use uma máquina com GPU Nvidia compatível.
Se a inicialização foi interrompida durante o download de modelos, tente iniciar novamente. O sistema deve tentar corrigir automaticamente.
Se continuar falhando, pare o container e remova a pasta de modelos dentro da configuração/projeto, conforme orientação do README, para forçar novo download.
project.db.Você quer usar o Anagnorisis para organizar fotos e músicas.
git clone https://github.com/volotat/Anagnorisis.git
cd Anagnorisis
cp docker-compose.override.example.yaml docker-compose.override.yaml
volumes:
- /home/pablo/Anagnorisis-config:/mnt/project_config
- /home/pablo/Fotos:/mnt/media/images/Fotos
- /home/pablo/Musicas:/mnt/media/music/Musicas
docker compose up -d
http://localhost:5001
Entre nos módulos de imagens e músicas. Avalie arquivos de 0 a 10.
Entre no módulo Train e inicie o treinamento.
Volte aos módulos e ordene/filtre arquivos com base nas notas previstas.
Quando o modelo errar, ajuste a nota manualmente.
Depois de novas avaliações, treine de novo.
O Anagnorisis é promissor, mas ainda tem limitações claras:
Em termos práticos: trate como um projeto poderoso, mas ainda hacker/experimental, não como um produto comercial polido.
git clone https://github.com/volotat/Anagnorisis.git
cd Anagnorisis
cp docker-compose.override.example.yaml docker-compose.override.yaml
docker compose up -d
docker compose logs -f
docker compose down
docker compose up -d --build
git pull
docker compose up -d --build
O Anagnorisis é um sistema local de busca, organização e recomendação de arquivos. Você monta suas pastas, avalia conteúdos, treina um modelo com base no seu gosto e passa a usar esse modelo para filtrar e descobrir arquivos de forma personalizada.
A ideia é forte: criar um recomendador privado, local e treinável. A execução ainda exige paciência técnica. Para usuários comuns, pode ser áspero. Para quem gosta de self-hosting, IA local e controle sobre os próprios dados, é um projeto muito interessante.