Você está reservando um carro de aluguel pela internet, e o formulário pede o número e a validade da sua carteira de motorista. A carteira não está por perto. Você lembra que tirou fotos dela no ano passado, frente e verso, quando recebeu a nova, mas elas estão perdidas entre dezenas de milhares de fotos no seu iPhone. Você quer pedir ao Comma com suas palavras e recuperar essas duas fotos.
Este guia mostra um jeito de montar isso: criar um índice das suas fotos com modelos locais e deixar o Comma pesquisar nele. É um exemplo de configuração em um Mac, não um recurso nativo do Comma.
Sua fototeca fica local
O Comma não precisa de uma cópia das suas fotos. O trabalho pesado, ler o texto de cada imagem e transformar cada foto em vetores, é feito por modelos locais. O que o agente recebe é o resultado de uma busca: alguns IDs de fotos, as datas delas, o texto encontrado nelas e, quando você precisa escolher, uma folha de contatos com miniaturas. Só as fotos que você escolhe no final vão para a conversa.
As fotos em si continuam sincronizando pelo iCloud; “local” aqui quer dizer o reconhecimento de texto, os vetores e o índice depois da exportação. Se o Comma usa um modelo na nuvem, esses resultados de busca, e qualquer imagem que você peça para ele olhar, vão para o provedor de modelos que você escolheu. Num documento como a carteira de motorista, o texto reconhecido inclui o número e o endereço. O índice em si nunca é enviado para lugar nenhum. O Comma é de código aberto, e você também pode rodá-lo na sua própria máquina.
Monte o índice de fotos
O índice se conecta ao caminho que suas fotos já percorrem. Nada muda no iPhone.
A montagem tem três passos:
Traga as fotos para o Mac. Sincronize as fotos do iPhone com o Mac pelo Fotos do iCloud e exporte as fotos novas para uma pasta todos os dias.
Processe com modelos locais. Reconheça o texto de cada imagem e transforme a imagem em vetores com Chinese-CLIP e Qwen3-VL-Embedding.
Guarde num índice local. Armazene os resultados num banco de dados local, com um comando para pesquisar nele. Neste exemplo, o comando se chama
lpa.
O que uma busca retorna
Localmente, uma busca é um comando. Uma única chamada pode levar várias formulações, e os modelos carregam uma vez só. O agente transforma expressões como “ano passado” num intervalo de datas.
Cada resultado mostra que tipo de evidência está por trás dele:
--prefer text coloca os resultados de texto primeiro, o que serve para documentos, cartões e capturas de tela. --prefer picture coloca primeiro as imagens parecidas, o que serve para um gato ou uma praia. Fotos quase idênticas tiradas em poucos minutos ocupam um único lugar na lista, e as outras ficam agrupadas abaixo dela.
Quando os primeiros resultados são incertos, o agente não chuta. Ele junta as miniaturas dos candidatos numa folha numerada, no máximo nove, e pede para você escolher.
O jeito de combinar os dois conjuntos de vetores foi definido calibrando numa fototeca completa de cerca de 50.000 fotos. Com o Qwen3-VL-Embedding sozinho, as respostas certas escolhidas por uma pessoa ficavam mais abaixo do que com o Chinese-CLIP sozinho. Com as duas classificações combinadas, cada item verificado se saiu pelo menos tão bem quanto com qualquer um dos modelos sozinho. “Possível” também só é marcado quando a similaridade dos dois modelos passa do limite: numa consulta de teste, as fotos marcadas como “Possível” caíram de 4.970 para 4. O custo é que uma busca leva de 3,5 a 6 segundos em vez de cerca de 3.
Este exemplo roda num MacBook Air com 16 GB de memória, com a versão 2B do Qwen3-VL-Embedding. Numa máquina mais potente, dá para usar modelos Qwen maiores:
Um modelo de vetores maior. Troque o Qwen3-VL-Embedding-2B pelo Qwen3-VL-Embedding-8B. Depois da troca, os vetores de todas as fotos precisam ser calculados de novo com o novo modelo.
Descrições e tags para cada foto. Rode também o Qwen3-VL-4B-Instruct ou o Qwen3-VL-8B-Instruct para escrever uma descrição de uma linha e algumas tags para cada foto, e guarde-as no índice de texto. Num MacBook Pro com 24 GB de memória, por exemplo, o modelo 8B roda com quantização de 8 bits. As tags servem para uma triagem inicial; não há garantia de que estejam certas.
E o inglês? O Chinese-CLIP foi treinado principalmente com imagens e legendas em chinês, então não é confiável para consultas em inglês. As outras duas partes não são afetadas: o reconhecimento de texto lê chinês e inglês, e o Qwen3-VL-Embedding suporta muitos idiomas. Por isso, coloque formulações em chinês e em inglês na mesma busca, como faz o comando acima; dá para registrar isso num Skill. Se a sua fototeca e as suas perguntas são principalmente em inglês, você também pode trocar o Chinese-CLIP pelo CLIP original, o que de novo exige recalcular os vetores.
Encontre família e amigos
O Fotos já agrupa os rostos de uma mesma pessoa. O índice usa esses grupos diretamente e não faz reconhecimento facial próprio.
Primeiro, dê nome às pessoas. Na primeira vez, o agente pega alguns lotes de fotos desses grupos, numera e pergunta quem é. Só quando você responde “a 3 é a mamãe” ele guarda. Um grupo que você não confirmou não é tratado como ninguém.
Busque por pessoa. Depois disso, quando você cita um nome, a busca olha só as fotos em que essa pessoa aparece. Os nomes se somam: cite duas pessoas e você recebe só as fotos com as duas, ou seja, as fotos de vocês juntos.
Combine com outras condições. Um nome pode ir junto com o que aparece na imagem e com a data, como “fotos minhas com a mamãe na praia no ano passado”:
Se um nome não foi confirmado, ou se duas pessoas têm o mesmo nome, a busca avisa em vez de chutar. Um nome errado pode ser corrigido, e cada correção pode ser desfeita.
Como os vídeos são encontrados
Vídeos são pesquisados separadamente das fotos. Uma busca padrão olha só fotos. Se você quer, por exemplo, o vídeo do seu filho apagando as velas de aniversário, diga ao Comma que está procurando um vídeo, e ele adiciona --source video à busca:
Por trás há três passos:
Extrair quadros. O vídeo em si nunca entra num modelo. O indexador tira um quadro a cada 5 segundos, no máximo 12 por vídeo.
Buscar por quadro. Os quadros passam pelo mesmo processamento das fotos: reconhecimento de texto e os dois conjuntos de vetores. Uma busca compara esses quadros; quando um bate, o vídeo inteiro é encontrado e ocupa um único lugar nos resultados.
Enviar o vídeo. Depois que você escolhe, o agente envia com
lpa video.
Por enquanto ele olha só a imagem, não o som. O que é dito num vídeo ainda não pode ser pesquisado, e as pessoas num vídeo ainda não são reconhecidas. O número de quadros tem limite, então algo que passa rápido num vídeo longo pode não ser encontrado.
Como o LocalPhotoAgent é feito
O lpa deste guia vem do LocalPhotoAgent, um indexador que nós mesmos escrevemos e que vamos abrir como código aberto. A parte de indexação já foi explicada; mais dois pontos:
Ele pode parar a qualquer momento. Cada passo de cada foto é registrado separadamente. Se parar no meio, continua da próxima vez; se você muda uma configuração, só o passo afetado roda de novo. Enquanto trabalha, ele acompanha memória, temperatura e espaço em disco, e pausa quando algum passa do limite.
Ele dá ao agente alguns comandos.
lpa searchpesquisa,lpa sheetcria uma folha de contatos,lpa previewenvia fotos elpa videoenvia vídeos. Quando o agente procura fotos, ele os chama nesta ordem:
Conecte o Comma
Isto supõe que o LocalPhotoAgent já funciona no seu Mac. A conexão tem quatro passos:
Adicione um dispositivo. No Comma, vá em Settings > Devices e clique em Add device para receber um comando de instalação.
Rode o comando. Rode-o no Terminal do Mac que guarda a fototeca, para instalar o Comma Connector.
Libere o acesso. Um dispositivo novo começa em Off. Mude para Full para que o agente possa rodar
lpa.Escreva um Skill. Diga ao agente para pesquisar primeiro, enviar uma folha de contatos quando estiver em dúvida e enviar as fotos só depois que você escolher. Você pode simplesmente pedir ao Comma para “criar um Skill”.
A partir daí, é só perguntar como em qualquer conversa: “Encontre as fotos da minha carteira de motorista do ano passado, frente e verso.”
Confiança e limites
O índice só lê os originais. Ele nunca os move, edita ou apaga. Uma busca não toca no disco externo; só a criação de uma folha de contatos e o envio de uma foto leem dele. Mover ou apagar fotos está fora desta configuração. Mas atenção: com acesso Full, o agente pode rodar neste Mac outros comandos além de lpa.
Texto encontrado só significa que as palavras foram achadas, não que é a foto que você quer. “Possível” é só um candidato. Quando o Comma marcar um pedido como concluído, confira as fotos que ele enviou.
Na primeira vez, você pode dizer: “Encontre as fotos da minha carteira de motorista do ano passado. Me mostre primeiro a folha de contatos e não envie, mova nem apague nada.”


