Pull to refresh
-1
0
Send message

Ежегодный опрос PHP-сообщества: итоги 2024 года

Level of difficultyEasy
Reading time8 min
Views603

2024 стал насыщенным годом для русскоязычного сообщества PHP-разработки. PHP Russia 2024, релизы PHP 8.4, Symfony 7.2 и Laravel 11.

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

Читать далее

Почему измерять ≠ управлять: как KPI искажают реальность и какой инструмент использовать осознанному руководителю

Reading time8 min
Views5.6K

Если бы все популярные цитаты действительно принадлежали тем людям, которым мы их приписываем, то фраза «если вы это не  измеряете, то значит вы этим не управляете» стояла бы в списке мудростей Питера Друкера. Однако Друкер никогда не произносил этих слов и не поддерживал такой подход. И самое главное, эта идея сама по себе неверна.

В этом материале расскажем к чему это приводит и какой инструмент использовать осознанному руководителю.

Читать далее

Как я объединил перевод и суммаризацию текстов, и что из этого вышло

Level of difficultyMedium
Reading time8 min
Views1.3K

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

Однако при ближайшем рассмотрении эти задачи имеют много общего...

Читать далее

Perforator: новая система непрерывного профилирования теперь в опенсорсе

Level of difficultyMedium
Reading time21 min
Views27K

Привет! Сегодня мы выложили в опенсорс Perforator — систему непрерывного профилирования (continuous profiling), которую используем внутри Яндекса для анализа производительности большинства сервисов.

В Github-репозитории доступен исходный код системы и инфраструктура для развёртывания своей инсталляции Perforator на кластере Kubernetes. Кроме того, Perforator можно использовать на своём компьютере как более простую замену perf record: профили получаются точнее, а оверхед меньше. Исходный код доступен под лицензией MIT (и GPL для eBPF-программ) и запускается под x86-64 Linux.

При помощи Perforator и прошлых подходов к задаче профилирования мы регулярно оптимизируем самые крупные сервисы в Яндексе, например Баннерную крутилку или Поиск, на десятки процентов. Кроме того, Perforator реализует недостающий в опенсорсе компонент профилирования для простой автоматической оптимизации программ с использованием profile-guided optimization. Наши тесты показывают, что использование PGO даёт ускорение около 10% в разных сценариях.

Под катом поговорим про профилирование под Linux, опишем вызовы и сложности, возникающие при профилировании, изучим, как устроен Perforator внутри, и обсудим, как можно использовать полученную систему.

Читать далее

Как с помощью deep learning мы построили Геокодер, масштабируемый для разных стран

Reading time11 min
Views8.5K

Давным‑давно, когда мир ML состоял из бустингов, линейных моделей и статистических подходов, перед нашей командой API Яндекс Карт стояла задача сделать качественный Геокодер. Это алгоритм, который конвертирует текстовые запросы пользователей в поисковой строке карт в координаты и обратно. Он нужен, когда люди вводят адреса с ошибками, опечатками или народными наименованиями, например «Мяснитская 8». Геокодер должен понять, что имелось в виду «улица Мясницкая, дом 8/2», и вернуть на карте отметку с точной локацией и координатами.

Разработанный для России Геокодер отлично справлялся, но мы хотели найти способ быстро адаптировать это решение к адресным системам других стран. Технологические ограничения не позволяли быстро адаптировать решение, поскольку для каждой страны требовалась разработка собственных правил геокодирования, которые бы учитывали различия и языковые особенности. Однако появление и развитие алгоритмов deep learning открыло новые горизонты: методы active learning, аугментации данных и contrastive learning позволяют значительно улучшить итоговое качество геокодирования и учитывать нюансы различных адресных систем.

В этой статье мы рассмотрим основные этапы и методы построения нового Геокодера, который быстро масштабируется на адресные системы разных стран. Расскажем, что у него под капотом, как именно использовались механизмы deep learning при его создании, с какими проблемами мы столкнулись и как научили его понимать адреса с ошибками и опечатками.

Читать далее

Разворачиваем Langfuse в Kubernetes: open-source альтернатива Langsmith

Reading time4 min
Views1.8K

Привет, Хабр! Меня зовут Арсений @kazars24, я студент 2 курса магистратуры [AI] Talent Hub и ML инженер в компании Вита. Последнее время я активно занимаюсь разработкой LLM-приложений, и в процессе работы столкнулся с необходимостью их мониторинга. После долгих поисков и экспериментов я нашел отличное решение — Langfuse, о котором сегодня и поговорим.

Читать далее

Используем HTTP API Gemini 2.0 thinking бесплатно

Level of difficultyMedium
Reading time4 min
Views9.2K

Давно не писал статей на хабр, потому что редко находится что-то такое полезное.

Недавно обнаружил, что гугл даёт делать 1500 бесплатных в сутки на свою модель gemini. Что вполне достаточно для создания прототипа или даже небольшого пет-проекта. Как по мне так это не плохой способ начать эксперементировать с gpt-моделями и при этом ничего не платить.

На ai.google.dev видно, что можно использовать 1500 запросов на gemini 1.5 flash и 1500 на gemini 1.5 flash 8b. Размер контекста - 1 миллион токенов.
Карту привязывать не надо. Я вообще создал под это дело новый гугловый аккаунт, чтобы не париться, что могу не уложиться в бесплатные лимиты.
Чего не написано в прайсе так это то, что помимо моделей 1.5 flash также доступны бесплатно ещё и топовые модели gemini 2.0 flash и gemini 2.0 flash thinking. С теми же ограничениями - не более 1500 запросов в сутки на каждую.

А теперь посмотрим как обойти блокировки

Agile умер: из-за своего сострадания к product- и project-менеджерам (с) Фридрих Ницше

Level of difficultyEasy
Reading time8 min
Views39K

Agile — бог управления проектами последних лет. И неужели он умер? Или многочисленные прожект- и продакт-менеджеры убили его? Разбираемся, почему прозрачность Agile зачастую приводит к хаосу и анархии, а не гибкости и высокой ценности продукта. 

Читать далее

Заменяем хабраюзеров ИИ-агентами. Гайд по browser-use

Level of difficultyEasy
Reading time4 min
Views11K

TLDR: видео с результатом в конце статьи

Библиотека browser-use невероятно стрельнула практически в день релиза, на текущий момент это около 16 тысяч звезд на Гитхабе, и сотни восторженных отзывов на Reddit, в Твиттере, и так далее. Команду, создавшую browser-use даже приняли в YC. У неё революционная точность по сравнению с другими "ИИ агентами использующий браузер" (89% против Runner H с 67%).

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

Добро пожаловать в мир ИИ-агентов!

Open-source альтернативы Operator от OpenAI

Level of difficultyEasy
Reading time3 min
Views4.1K

Ну вот, буквально позавчера я написал статью про Browser Use, и уже на следующий день OpenAI объявил о выпуске Operator — ИИ-агента, который может работать в браузере вместо вас.

Мало того, что OpenAI открыто манипулируют данными, не включая Browser Use в свой бенчмарк (потому что Browser Use лучше Operator — 89% против 87% в тестах Web Voyager), так ещё и работа идет в браузере на удаленном сервере (уже дико по отношению к приватности), то ещё и скрины всего, что происходит OpenAI будут хранить 3 месяца.

В общем, let's make AI open again: вот подборка альтернатив Operator, которые работают локально и не требуют ни денег, ни делиться своими данными.

Поехали!

Реальная эффективность Qwen 2.5 Coder против ChatGPT (или можно ли сэкономить 20$?)

Level of difficultyEasy
Reading time8 min
Views14K

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

Читать далее

PGlite — полноценный Postgres-сервер на WASM. Работает прямо в браузере и Node.js

Level of difficultyEasy
Reading time4 min
Views4.8K

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

Как он устроен, как им пользоваться, и, самое главное, зачем? Добро пожаловать под кат :)

Поехали!

pg_auto_embeddings — считаем эмбеддинги для текста прямо в Postgres, без экстеншенов

Level of difficultyEasy
Reading time4 min
Views1.7K

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

Под катом описание open-source решения pg_auto_embeddings, которое вам поможет.

Скорее под кат!

Геолокация по теням: как определить место съёмки исторической фотографии

Level of difficultyEasy
Reading time4 min
Views4.7K

В этой статье я расскажу о том, как можно определить географическое местоположение объекта на фотографии, используя только длину тени и время съёмки. Мы рассмотрим конкретный пример - историческую фотографию 1963 года из Сайгона (ныне Хошимин), и напишем Python-скрипт для анализа возможных локаций.

Читать далее

Извлекаем почтовые индексы из ФИАС

Level of difficultyMedium
Reading time9 min
Views721

Казалось бы если ФИАС содержит эти данные, то просто выгрузи их ? Но не тут то было, дело в том что почтовые индексы есть у домов, но почтовых индексов нет у населённых пунктов, при этом населённые пункты через произвольное количество своёв "абстракции" связаны с домами. Эта связь записана в таблицу ADM_HIERARCHY - группировка по административному делению.

Собственно задача состоит в том что бы сгруппировать почтовые индексы всех домов и взять минимальный индекс как индекс собственно населённого пункта (индекс населённого пункта обычно заканчивается нолями, у "подчинённых" почтовых отделений индексы заканчиваются цифрами от 1 до 9).

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

О том как это сделать и решить проблему с выборкой будет эта статья-инструкция.

Читать далее

RAG в действии: актуальные инструменты и возможности их применения

Level of difficultyEasy
Reading time18 min
Views5.4K

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

Читать далее

Индекс галерности и удержание сотрудников

Level of difficultyEasy
Reading time5 min
Views10K

Галеры - это компании, которым плевать на сотрудников. Это естественным образом приводит к высокой текучке кадров. На мой взгляд, на аутстафе такое встречается чаще, чем на аутсорсе или в продуктовой компании. Потому что на аутстафе увеличение твоей полезности на проекте влияет на оплату примерно никак.

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

Читать далее

Cовмещаем Haproxy, Vless, WebSocket, VPN и сайт на одном порту

Level of difficultyHard
Reading time13 min
Views18K

Cовмещаем Vless, WebSocket, VPN и сайт на одном порту средствами Haproxy, создаем альтернативу VPN на основе WebSocket.

Читать далее

pg-index-health – статический анализ структуры PostgreSQL баз данных

Level of difficultyHard
Reading time19 min
Views5.7K

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

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

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

Читать далее

Будущее LLM в XS, S, M и других размерах

Level of difficultyEasy
Reading time4 min
Views1.1K

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

Читать далее
1
23 ...

Information

Rating
4,975-th
Registered
Activity