Реальная эффективность Qwen 2.5 Coder против ChatGPT (или можно ли сэкономить 20$?)
Можно ли сэкономить 20$ и заменить ChatGPT локальным Qwen 2.5 Coder? Попробуем проверить логику моделей!
Пользователь
Можно ли сэкономить 20$ и заменить ChatGPT локальным Qwen 2.5 Coder? Попробуем проверить логику моделей!

Безумные штуки иногда можно найти в интернете. Листая 2024 JavaScript rising stars (https://risingstars.js.org/2024/en#section-all) обнаружил там удивительного зверя - Postgres скомпилированный через emcc в WASM версию, и допиленный до состояния, когда его можно запустить внутри JS-процесса (браузер/Node.js/Bun/etc).
Как он устроен, как им пользоваться, и, самое главное, зачем? Добро пожаловать под кат :)

У вас есть Postgres, где хранится множество текстовых данных. Вы хотите использовать векторные представления (embeddings), к примеру, от OpenAI/Anthropic, чтобы построить систему рекомендаций, улучшенный поиск или реализовать RAG для работы с LLM. Но при этом ставить расширения (extensions) не хочется, а может, и вовсе нельзя — например, в облачных Managed PostgreSQL зачастую нет нужных прав.
Под катом описание open-source решения pg_auto_embeddings, которое вам поможет.

В этой статье я расскажу о том, как можно определить географическое местоположение объекта на фотографии, используя только длину тени и время съёмки. Мы рассмотрим конкретный пример - историческую фотографию 1963 года из Сайгона (ныне Хошимин), и напишем Python-скрипт для анализа возможных локаций.
Казалось бы если ФИАС содержит эти данные, то просто выгрузи их ? Но не тут то было, дело в том что почтовые индексы есть у домов, но почтовых индексов нет у населённых пунктов, при этом населённые пункты через произвольное количество своёв "абстракции" связаны с домами. Эта связь записана в таблицу ADM_HIERARCHY - группировка по административному делению.
Собственно задача состоит в том что бы сгруппировать почтовые индексы всех домов и взять минимальный индекс как индекс собственно населённого пункта (индекс населённого пункта обычно заканчивается нолями, у "подчинённых" почтовых отделений индексы заканчиваются цифрами от 1 до 9).
Но прежде чем начать работать с данными, надо к этим данным получить доступ, разместить эти данные там где к ним можно будет выполнять запросы.
О том как это сделать и решить проблему с выборкой будет эта статья-инструкция.

Задумывались ли вы, кто на самом деле находится по ту сторону телефонной линии или чата? В современном мире за приятным голосом неизвестного абонента или ненавязчивым текстовым сообщением часто скрывается вовсе не человек, а искусственный интеллект. Этот робот обучен выполнять задачи маркетинга и клиентской поддержки. Но когда мы пишем негативный фидбек или выражаем свои пожелания, то надеемся если не на изменения, то хотя бы на эмоциональную реакцию. Но ИИ такой ответ — не по силам.

Галеры - это компании, которым плевать на сотрудников. Это естественным образом приводит к высокой текучке кадров. На мой взгляд, на аутстафе такое встречается чаще, чем на аутсорсе или в продуктовой компании. Потому что на аутстафе увеличение твоей полезности на проекте влияет на оплату примерно никак.
Чтобы бороться с текучкой, нужно выстраивать процессы, помогающие удерживать сотрудников. Но это большие инвестиции финансовых и человеческих ресурсов, без гарантий успеха. Поэтому настоящая галера в такие процессы не будет вкладываться вполне осознанно.
Cовмещаем Vless, WebSocket, VPN и сайт на одном порту средствами Haproxy, создаем альтернативу VPN на основе WebSocket.

С 2019 года я занимаюсь разработкой open source инструмента под названием pg-index-health, который позволяет анализировать структуру БД и находить потенциальные проблемы.
Все эти годы pg-index-health эволюционировал и развивался. За 2024 год мне при поддержке нескольких контрибьюторов удалось решить большинство остававшихся «детских болячек» и довести проект до состояния, когда он готов к масштабной экспансии.
В этой статье я хочу подробно рассказать об идеях, которые стоят за этим инструментом, и как его использовать в ваших проектах.

Как научить ИИ думать масштабно, но экономно? Представьте интеллект, который выбирает, какой «размер мозга» нужен для каждого запроса: от простого ответа «2+2» до сложных вычислений. Заставить модель говорить «я не знаю» и «просить о помощи», при этом эффективно расходуя ресурсы?

dumbproxy уже упоминался на Хабре в одной из моих прошлых статей. Это HTTP(S) прокси-сервер, который работает через TLS, напрямую совместим с браузерами и браузерными расширениями, и имеет заметное количество дополнительных функций, расширяющих его границы применимости и облегчающих его использование.

.htaccess и htpasswd. Но что, если нужно выложить зашифрованную веб-страницу и файлы на публичном хостинге, где у нас нет контроля над сервером? Эту проблему решают инструменты StatiCrypt и Portable Secret.
Звучит слишком громко? Давайте уточним, чтобы избежать обманутых ожиданий: этот пакет использует немного магии вне Хогвартса, и будет действительно полезен любителям строгой типизации в PHP.

Для любой технической задачи на TON, вам необходимо использовать индексаторы. Индексаторы это сервисы, которые агрегируют внутри себя транзакции блокчейна, обогащают данные и позволяют получить эти данные в необходимом виде.
Без использования таких сервисов, для каждого запроса информации, вам бы пришлось парсить кучу блоков блокчейна, чтобы вернуть данные. В данной статье, я покажу вам как делать GraphQL запросы в dton.io на блокчейне TON. Возьмем простую задачу и пройдем весь путь формирования запроса и параллельно рассмотрим основные возможности индексатора.

В нашей работе с большими языковыми моделями (LLMs), один из самых популярных вопросов касается их до-обучения. Каждый второй клиент спрашивает, нужно ли проводить дополнительное обучение модели.
Давайте рассмотрим нужно ли это, как это сделать.

Привет, Хабр!
Когда мы говорим о PostgreSQL и оптимизации запросов, большинство тут же вспоминает B-Tree индексы, GIN, GiST и так далее. Но вот BRIN иногда остается в тени, хотя в некоторых сценариях он способен творить чудеса с производительностью, особенно когда ваши таблицы размером с космический лифт, а места на диске жалко. Сегодня я расскажу, как именно работает BRIN.

Привет!
Кажется, первая статья нашла своего благодарного читателя.Снова мысли от CDO трудящегося вместе с одной небольшой компанией ру-сегмента.
Продолжу о том, что "наболело".
Эта статья может быть Вам полезна, если консалтинг/интегратор/CTO/CIO/сын маминой подруги настойчиво хочет решить все Ваши "проблемы" в аналитике классным корпоративным хранилищем, далее - DWH.

В разработке ПО мы часто сталкиваемся с ситуацией, когда большая часть дефектов концентрируется в относительно небольшом количестве модулей. Это явление называется скоплением дефектов (Defect Clustering). Принцип Парето (80/20) здесь прекрасно иллюстрирует ситуацию: 80% проблем обычно обнаруживается в 20% кода. Понимание причин этого феномена и умение идентифицировать "зоны риска" — ключ к эффективному тестированию.
Почему дефекты кучкуются?
Существует несколько причин, по которым дефекты имеют тенденцию скапливаться в определенных областях.

Пользователи PostgreSQL нередко оперируют аналитическими запросами, при выполнении которых данные сортируются и группируются по разным правилам. За счёт оптимизации вычисления агрегатов и сортировок можно значительно сократить время и стоимость выполнения запросов. Об одной из таких оптимизаций — выборе порядка колонок в выражении GROUP BY — расскажем в этой статье.
Postgres уже умеет перестраивать список группируемых выражений в соответствии с порядком колонок из условия ORDER BY, чтобы исключить дополнительную сортировку и сэкономить вычислительные ресурсы. Мы пошли дальше, реализовали свою идею в дистрибутивах Postgres Pro Standard и Enterprise и вынесли патчи на обсуждение сообщества Postgres (первое и второе) в надежде, что они войдут в ближайшую версию ванильного PostgreSQL.

Привет, меня зовут Роман Симановский, я Junior Data Scientist в команде Геоаналитики Альфа-Банка. Сегодня поделюсь опытом того, как мы работаем с пространственными данными, преобразовывая их в гео-признаки. С их помощью мы улучшаем модели машинного обучения, добавляя в них информацию об окружающем мире. На самом деле, это не так уж сложно, поэтому статья будет короткой.