Skip to content

cade v0.2.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 16:26
· 96 commits to dev since this release
3f73d9e

cade mascot: a Go gopher filing folders

Third version of cade: it now understands who and what appears in your history. People, files and images become entities, with the relationships between them, and the search uses them ("imagens do João que o Pedro me mandou", "quem mais mexeu no arquivo que o Rui alterou?"). Other apps' messages are read from the browser's storages through schemas, the database drops to less than half its size (on the reference machine, 1.8 GB → 0.77 GB with int8 vectors and one set of vectors per text), and you can export everything, or forget everything about one person.

Português: terceira versão do cade: ele passa a entender quem e o que aparece no seu histórico. Pessoas, arquivos e imagens viram entidades, com as relações entre elas, e a busca usa isso ("imagens do João que o Pedro me mandou", "quem mais mexeu no arquivo que o Rui alterou?"). Mensagens de outros apps são lidas dos armazenamentos do navegador por schemas, o banco cai para menos da metade do tamanho (na máquina de referência, 1,8 GB → 0,77 GB, com vetores int8 e um conjunto de vetores por texto), e dá para exportar tudo ou esquecer tudo sobre uma pessoa. As notas abaixo estão também no CHANGELOG.pt-BR.md.

Install

  • Binary (Linux x86-64, CPU, any CPU with AVX2): download cade-v0.2.0-linux-amd64-cpu.tar.gz below, check it with the .sha256 file, and follow the README. The models are downloaded separately; they are the same as v0.1.0's.
  • From source (and for NVIDIA GPUs): the README's steps. go tool mage build compiles the NVIDIA binary and needs the CUDA Toolkit; without it, use go tool mage cpu.
  • Then cade init, cade doctor, cade ingest all, cade ask.

Before upgrading from v0.1.0

  • The first command copies the database, then migrates it. Migrations 11 to 19 run on the first command that opens a v0.1.0 database. Before the first one that rewrites data, cade writes cade.db.before-v11-<date> (mode 600) next to the database: it needs as much free disk as the database, plus the vectors while they are rewritten, and on a 270 k-event database the migrations add up to about two minutes. cade doctor tells, without changing anything, what is pending and whether it will copy.
  • The copy keeps everything, including what you forget later. Once the new version works, delete it with cade forget --backups; cade forget and cade doctor now list such copies.
  • No reindex, no new embedding, no new model.
  • ask --json: the plan may carry modality, entities and related; they are left out when empty, so other questions give the same JSON.
  • Do not re-import instead: the Teams cache expires and Chrome keeps ~90 days of history, so forget + ingest loses data.

New, and off until you turn it on

  • ingest.names_from_email: keeps on each commit the name its author's e-mail spells ("F. Rocha <fernanda.rocha@…>" is found as Fernanda Rocha). It is a new kind of personal data; turning it off deletes the names on the next cade ingest git.
  • Teams pictures (with sources.images on): the pictures in Teams messages are read from the browser's HTTP cache and described like image files; only the description is kept.
  • Other apps are read only from the origins and URLs you configure (sources.storage_origins, sources.request_cache_urls) and the schemas you save.

See PRIVACY for what each source keeps, and the new comparison with the LGPD and the GDPR.

What is in it

See the CHANGELOG for every change, measurement and migration.