Comments 21
Рассматривали ли вы готовые решения, например Immich?
Именно lmmich я не рассматривал. По февральской статье, его основная фишка - хранение фото и шаринг. Есть поиск по описанию и распознавание лиц. Но на английском.
Для хранения и шаринга у меня есть Nextcloud. А поиск на русском сделать, как оказалось, не сильно сложно.
И, конечно, не будем забывать про фатальный недостаток всех этих решений, Not Invented Here.
К иммичу есть русскоязычные модели. Впрочем, описание они не генерят.
А как же они ищут фото по строке, если не по описаниям? Или описание к каждому фото надо самому создать?
Фото индексируются. Но человекочитаемых описаний нет. И рассвет от заката не отличает.
Можно конечно и в ручную посидеть поразбирать фото 20к штук , шучу конечно, но думаю там полно повторов обычно делаешь несколько фото чтобы выбрать лучшую а потом просто жалко удалять , да думаю в таком случае AI должен помочь
и все равно вы какой-то велосипед сделали, давным давно есть clip от openai - давно есть консольная утилита rclip для поиска фото по тексту или картинке в качестве примера для поиска, работает это все очень быстро даже на cpu потому что модели не нужно напрягаться и выдавливать из себя текст, она сразу картинку превращает в вектор, и дает вам возможность текст превращать в вектор из такого же пространства. Это называется мультимодальность.
сколько лет этой модели? года 3 наверно. Зачем такое брать? clip правда еще старше, но она работает, она маленькая и она решает более простую задачу
С выбором векторной базы вопрос не стоял - разумеется, PostgreSQL с расширением pgvector. Не потому, что постгри весь такой крутой и сильный, а потому что дополнительных приключений на свой филей не хотелось. Раз финтех на нём работает, то и я как-нибудь разберусь.
разумеется? какой финтех на этом работает? я сам не ковырял это все, но по отзывам pgvector это решение чисто "на поиграть", под серьезные вещи ее никто не дизайнил. Может для ваших 20 тысяч фото пойдет, в rlicp вообще sqlite и тоже работает, но если для вашего приложения не нужен постгрес то тогда зачем?
Nvidia ChatRTX — там всё есть.
Отличная идея для слабовидящих. Голосовое описание фотографий даст подзабытым воспоминаниям вновь обрести образы в сознании.
-- кластеризация
-- переход от одной фотке к похожим (рядом с основной фоткой несколько миниатюрок похожих. возможно с ограничением на дату, что бы в один и тот же час не показывало).
Честно сказать, я бы вообще не заморачивался с локальными моделями.
Какой-нибудь Google Flash выдаст отличное описание картинки сразу на русском (если это вообще надо) за 0.0000…$ - пусть даже 20к фоток, ну будет это стоить 10-20 баксов - ФИО с ним, проиндексировал и забыл.
У меня, к примеру, 20к фоток только в телефоне. А в фотоархиве - около 300к.
Если предположить, что уже есть нормальная видеокарта, то конечно дешевле будет использовать локальную модель.
Но вот у меня ее нет. Есть только макбук. Тут конечно тоже можно все это завести, но скорости, скорее всего, будут больше секунды на фото, а это 3 с лишним суток непрерывной работы. Тоже такое себе.
К тому же сколько бы я ни пробовал локальные модели, они либо откровенно тупые, либо жутко медленные и все равно не дотягивают до проприетарных.
Возможно это лишь мой опыт.
Разбираю свой фотоархив