Интересное что-то
517 subscribers
2.71K photos
252 videos
138 files
4.51K links
Материалы и мысли, понадерганные отовсюду
Блог: https://t.iss.one/asisakov_channel
Чат: https://t.iss.one/youknowds_chat
Download Telegram
Forwarded from Dealer.AI
Что, если вы попробовали BM25 и SPLADE – FM index+Infini-gram.

Эта статья стала best paper EMNLP2025.

Статья "Infini-gram mini: Exact n-gram Search at the Internet Scale with FM-Index" представляет собой исследование по созданию системы для точного поиска n-грамм в сверхбольших текстовых корпусах. Что такое n-граммный поиск? Это подход аля tfidf основанный на поиске совпадения в строках путем сравнение общих n-грамм токенов или символов. Статья может быть потенциально интересной для тех, кто строит RAG системы с учетом bm25 индексов и иных (аля SPLADE).

🎯 Постановка задачи

Языковые модели обучаются на огромных объемах текстовых данных из интернета, и важно понимать эти данные. Точный поиск по таким корпусам позволяет подсчитывать вхождения строк и находить исходные документы, но существующие системы не справляются с большими масштабами данных из-за высоких требований к хранилищу. Авторы ставят задачу создать эффективную и масштабируемую систему, которая сделает петабайтные текстовые корпуса доступными для поиска.

💡 Идея алгоритма

Основная идея алгоритма — использование FM-Index (Full Text Minute Index). Этот метод, созданный Феррагиной и Манзини, одновременно индексирует и сжимает текст. Алгоритм дает пользователю:

1. Эффективность: Infini-gram mini значительно улучшает существующие реализации FM-Index. Система создает индекс, размер которого составляет всего 44% от исходного корпуса.

2. Производительность:
- Скорость индексации повышается в 18 раз.
- Использование памяти в процессе индексации сокращается в 3.2 раза.
- Потребление памяти при выполнении запросов снижается до незначительного уровня.

Про Infini-gram, он работает принципиально иначе, чем традиционные языковые модели n-грамм. Вместо заранее вычисленных таблиц частот, он использует структуру данных суффиксный массив, что позволяет обрабатывать n-граммы практически неограниченной длины с низкой задержкой .

Ключевая инновация Infini-gram — это отказ от классических таблиц n-грамм в пользу суффиксного массива всего корпуса текстов.

В чем проблема традиционных n-грамм? Для больших n длин последовательности таблицы частот становятся астрономически большими. Например, для корпуса в 1.4 триллиона токенов 5-граммная таблица заняла бы около 28 ТБ, что делает модели с большим n невозможными.

Итого, зачем оно все нам? Недавно, мы видели, как можно использовать поиск встроенный в файловую систему для эффективной работы rag и памяти. Подход с Infiniti gram+fm index может быть полезен для агентных систем с памятью в качестве альтернативы поиска по большим массивам данных. Да, и все это помимо прямой задачи - фильтрации больших сетов.
Forwarded from Записки Ппилифа (Ppilif)
Этот фильм уничтожит ваше FOMO и синдром самозванца. Хотябы ненадолго. Может быть.

В 2021 году Питер Джексон, в своих лучших традициях, выпустил 7-часовую трёхсерийную документалку про Битлз. Это очень скучный фильм. Челы большую часть его времени просто сидят на студии и пытаются записать альбом.

Узнал о нём от Ануара и поставил фоном во время работы. Возникает ощущение, что мы творим вместе. Битлы пытаются сделать что-то гениальное, а я прост пытаюсь им не мешать и занимаюсь своими делами. Я что-то вроде Рика Рубина, спящего на диване во время записи.

Битлы джемят, играют чужие песни, пытаются искать вдохновение и создавать что-то новое. Это очень длинный мучительный совместный процесс. Они кидают друг в друга идеи, пробуют что-то и нащупывают музыку, которую каждый из нас знает, но тогда её ещё нет.

Заглянуть в то как другие люди творят — офигенно. Ты начинаешь видеть, насколько процесс мучительный и сколько труда великие затрачивают для того, чтобы из ничего получить что-то. Именно благодаря этому они и великие.

Поэтому прекратили все быстро ныть, что выгорели и пиздуйте работать. Я тоже пойду.
Собрали для вас кейсы вайбкодинга для вдохновления

Вчера попросили поделиться кейсами, в результате получилась классная вдохновляющая подборка от подписчиков канала и выпускников курса. Напомню: у всех людей из подборки ранее не было опыта разработки.

Подписчики канала:

1. Кирилл Макаров — собрал за 3 часа тг-бота на Replit для своего челленджа по креативам. Бот мониторит выполнение домашек, хвалит и напоминает про штрафы, а также удаляет из челленджа после пропуска дедлайна.

2. Даниил Прокофьев — за 2 месяца на Lovable переписал всю операционку своей компании барных викторин (8 лет процессов, десятки городов, международные франшизы). Вместо разрозненных Google Sheets, Airtable и кастомного кода собрал единую ОС, которая покрывает ~70% логики и уже проходит тестирование командой.

3. Николай Березовский — за месяц собрал MVP собственной IDE для не-разработчиков: смесь Cursor и Arc прямо в браузере. Локальные файлы, вкладки, Markdown-редактор уровня Notion, сессионный контекст, встроенный Chrome и агент на Claude Code, который умеет всё — искать, читать, редактировать файлы, работать с вебом, обновлять метрики, коммитить, запускать команды.


Выпускники первого потока курса:

4. Marika Taavet — на Replit собрала себе собственный финтул под малый бизнес: загрузка банковских выписок, автокатегоризация на старых данных, отчёты, полный контроль над логикой. Начала с Cursor, но интерфейс показался перегруженным — ушла в Replit и там зажглась

5. Игорь Ленский — собрал семейное веб-приложение под реальные бытовые процессы. Дела на день с участниками и дедлайнами, список покупок с быстрыми подкатегориями, отдельный экран благодарностей с простым вводом. Минимум лишнего, максимум пользы — лёгкая внутренняя «семейная ОС»

6. Булат Ахметшин — создал бесплатный онлайн-тул для создания и обмена виш-листами. Пользователь быстро заполняет название и дату события, добавляет подарки с фото, ссылкой и комментарием, затем получает публичную ссылку, отправляет друзьям — они могут резервировать подарки без регистрации.

——

Напоминаем, что можно делиться кейсами и тогда будем публиковать еще подборки
Forwarded from DevFM
Шаблонный сервис

Я всячески люблю, когда разработка идёт предсказуемо – и многое для этого делаю.
Давно хотел написать пост о важности шаблонного сервиса, но не было хорошего примера под рукой. И тут мой коллега выложил наш шаблонный сервис на FastAPI, который мы долгое время использовали и развивали.

Так зачем же нужен шаблонный сервис?

Легко ориентироваться в других сервисах. Иногда нужно залезть в сервис коллег, или поддерживаешь несколько сервисов. Никаких проблем – структура везде одинаковая, всё знакомо, не нужно тратить время на раскопки.

Быстрый старт. Стартуете новый сервис? Полчаса – и он готов. Никаких лишних приседаний.

Единые практики. Шаблон определяет, не только структуру, но и то, как мы, например, делаем ретраи, какие у нас зависимости. как устроен circuit breaker, обработка ошибок и т.д.

Лучшие практики – в одном месте. Если появляется что-то классное, мы добавляем это в шаблон и новые сервисы сразу это наследуют.

Обсервабилити, логирование, работа с секретами – готово из коробки. И меньше шансов, что кто-то забьёт на логирование до лучших времён»:)

Онбординг на кошечках. Новый человек сначала изучает шаблонный сервис, понимает подходы, а потом уже ныряет в боевые системы.

Просто экспериментировать. Создал веточку от шаблона – и прикручиваешь свою новую махарайку, не тратя время на базовую структуру.

Унификация линтинга. Конфиги линтеров лежат в шаблоне. Ничего настраивать не нужно, а код-ревью идёт быстрее – обо всём уже однажды договорились и зафиксировали.

Базовый CI/CD. Для шаблонного сервиса существует шаблонный ci/cd – и это очень удобно.

Мы активно использовали шаблонный сервис в микросервисной архитектуре, но и для монолитных решений он тоже отлично зашёл – стартовали с ним несколько проектов.

Понимаю, что это нужно не всем. Но если вы занимаетесь продуктовой разработкой и играете вдолгую — на мой взгляд, это мастхев.

В общем – заходите, смотрите, ставьте звездочки. И если с чем-то не согласны – пишите в комменты, автор обязательно ответит 🙂

#devfm #systemdesign
🆎 [EN] Бесплатный курс по A/B тестированию

🐸 Знаю, что их не так много, но я нашел годноту, которую добавил к себе в материалы на сайт

😍 От Сколтеха есть курс, который ведется на английском языке, но ведут его русскоговорящие ребята (в т. ч. Александр Сахнов).

Всего 40 уроков, 5 недель обучения и есть практика в Google Colab (ipynb)

🤔 Программа курса

— Неделя 1. А/B-тесты. Введение
— Неделя 2. Основы статистики. Параметрическое оценивание. Бутстреп
— Неделя 3. Основы статистики. Проверка гипотез
— Неделя 4. А/B-тесты. Базовый уровень
— Неделя 5. А/B-тесты. Повышение чувствительности. Обзор современных методов

Конечно же, я добавил еще лекции ШАДа по A/B тестированию, как же без них 🍪🍪

Ставьте 🕺, если нужны мысли про вайбкодинг в целом и как я это вижу в плане разработки
Если уже хватит апдейтов про сайт, ставьте 😮

🥺 Пока вы здесь, киньте бустов (это бесплатно для Premium), плиз, чтобы я смог поменять фон и добавить больше эмодзи в реакции на постах

@zasql_python
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from АННА В ДАННЫХ
SQL не достаточно: топ вопросов о предыдущем опыте, которые зададут на собеседовании 🥺

Для того, чтобы успешно пройти собеседование, нужно не только уметь решать задачки по SQL и дизайнить АБ-тесты, но и уверенно рассказывать о своем предыдущем опыте

Кстати, по ответам на эти вопросы проверяют не только самостоятельность и умение работать в команде, но и соответствие резюме реальности

Если человек приукрасил опыт и на самом деле никогда не работал аналитиком, одни только ответы на технические вопросы не спасут: без умения рассказать как именно происходил процесс работы, он быстро выдаст себя

Организация процессов
▪️Была ли какая-то методология (скрам / канбан) и были ли спринты, соответственно?
▪️Был ли таск трекер?
▪️Был ли ты единственным аналитиком или работал в команде?
▪️Как и кем ставились задачи?
▪️Как приоритезировались задачи? Кто принимал финальное решение?
▪️Как и кем оценивались сроки выполнения задач?
▪️Как выглядел полный цикл твоей работы над задачей?

Взаимодействие с командой
▪️Был ли у тебя на работе конфликт с коллегой? Как ты его решил?
▪️Как происходило взаимодействие с разработчиками, дата-инженерами, маркетингом и др?
▪️Как формировал ожидания со стейкхолдерами?

Поведение в нестандартных ситуациях и достижения
🔴Были ли ситуации, когда ты не успевал сделать задачу к дедлайну? Почему так происходило? Как ты действуешь в такой ситуации?
🔴Как действуешь, если требования меняются посреди задачи?
🔴Какие типы задач любишь меньше всего и почему?
🔴Как относишся к adhoc-ам?
🔴Были ли ситуации, когда нужно было работать в условиях высокой неопределённости?
🔴Каким кейсом в своей карьере ты гордишься больше всего?

Стек и работа с продуктом
▫️Какой был технический стек?
▫️Была ли своя АБ платформа?
▫️С какими продуктами ты работал? Какие там были ключевые метрики?

Пройдись по списку и убедись, что сможешь ответить на все

Если есть чем дополнить список, пишите в комментариях
Please open Telegram to view this post
VIEW IN TELEGRAM
Хотите я ультану гайдом на оконные функции?💪

Специально для вас подготовил мини урок на оконные функции в SQL. Постарался осветить данную тему максимально просто и без лишней воды, каждую функцию показывал через примеры и пояснения, в конце дал 3 своих задачи и 4 задачи из литкода. Надеюсь, что вам понравится такой мощный хардовый пост и вы будете увереннее чувствовать себя на собеседованиях с ними😎

По моим ощущениям на всех собесах у меня спрашивали про оконки хотя бы базово и каждый второй собес предполагал написание задач через оконки. Изучайте сами и делитесь с друзьями полезным материалом😘

https://colab.research.google.com/drive/1VZL9nBnZHAwMICNzN0IJo0VMpr863U8R?usp=sharing

Поставьте лайк, если полезно!😊
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from дAI потестить!
Базовый ролик получен — нашу Ясю уже можно грузить в Одноклассники и начинать лутать Суперклассы. Но мы же тут собрались как люди творческие, высокодуховные и слегка помешанные на перфекционизме, так что хотим не просто ролик, а шедевр. Правильно? Ну вот и давайте попробуем сделать вид, что мы всё контролируем.

Перове на что обращаешь внимание, это "утекает" мелкая детализация: зубы местами в кашу, глаза при моргании деформируются (см. видео 1). Лечить будем апскейлом на Wan2.2. В интернете схем полно, принцип один — аккуратно прошлифовать картинку Wan-ом на малых шагах и молиться, что сегодня ComfyUI будет работать. Можно взять схему, которой поделился Дмитрий @TuXoHoB в комментариях. Спасибки направляйте ему в ЛС, и лучше если это будут спасибки от Сбера😊. Что получилось см. видео 2.

Второе, что портит видео, — маленькое разрешение (720p… Google, серьёзно?). Есть несколько путей решить этот позор:
astra.app
www.topazlabs.com

Из опенсорса (если сможешь настроить)
https://huggingface.co/JunhaoZhuang/FlashVSR-v1.1
https://github.com/IceClear/SeedVR2

Я же решил воспользоваться новинкой https://fal.ai/models/fal-ai/bytedance-upscaler/upscale/video просто потому что она стоит 4 цента на Fal.ai. Результат средний, astra.app может лучше, но деньги я уже потратил, поэтом придется вам смотреть на это (см. видео 3).

Это ещё не всё, что можно улучшить, но я на сегодня закончился и пошёл спать.

P.S. И немного ночных рассуждений. Чтобы сделать базовый ролик, достаточно уметь работать в нескольких сервисах. Например, я люблю Google. Но чтобы «дотянуть» его до приемлемого качества, уже нужно лезть в дебри, расширять инструментарий и дружить с опенсорсом.
P.S.S. Если хотите еще поработать с этим видео, мне нужны сердечки под постом.
Forwarded from Get Rejected
Вы вроде любите посты про то как экономить в облаках:

Вот вам пример:
Есть AWS S3, у него есть несколько вариантов Storage Class'ов, которые стоят по разному.

Допустим, у нас 70 TB данных в S3 Standard без версионирования.
Это примерно, 1600$.

Вот примерная тарификация:
Первые 50 ТБ в месяц - 0,0245 USD за 1 ГБ
Последующие 450 ТБ в месяц - 0,0235 USD за 1 ГБ
Свыше 500 ТБ в месяц - 0,0225 USD за 1 ГБ

Многие скажут, всего лишь 1600 баксов, а что если я скажу что можно сэкономить в несколько раз?

Тогда мы просто создаем правила для перемещения lifecycle, которые будут переносить ваши файлы в холодное хранилище.

Вот пример несколько архивных Storage class'ов для холодного хранения данных, которые могут потребоваться раз в квартал/год и тд c разным временем доступности от миллисекундной до 12 часов. Более подробно можете почитать на сайте AWS в ценообразовании.
S3 Glacier Instant Retrieval - 0,005 USD за 1 ГБ
S3 Glacier Flexible Retrieval 0,00405 USD за 1 ГБ
S3 Glacier Deep Archive - 0,0018 USD за 1 ГБ

Итого:
Настроив одно правило перехода данных старше 90 дней в холодное хранилище S3 Glacier Instant Retrieval мы сможем понизить счет до 350$.
Получается 1600$ -> 350$. Экономия ~1250$

Можно конечно еще больше заморочиться и настроить несколько правил для перехода данных спустя 180 дней в Deep Archive и так далее, но это уже у кого больше 400 ТБ данных мне кажется будет играть значительную роль. Важно еще учесть что файлы должны быть больше чем 128 КВ, так как перенос более мелких файлов может быть стоить гораздо больше чем держать их в Standart Class. (это тоже можно настроить и переносить только те что больше чем 128 КВ)