Обновить
1024K+

Python *

Высокоуровневый язык программирования

693,83
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Токены в нейросетях. Что это и откуда берётся?

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели40K

А вы задумывались, как текстовые нейросети видят текст, который мы им отправляем, если они сами мыслят цифрами?

В данной статье мы разберём как нейросеть видит текст, который мы ей отправили, познакомимся очень близко с термином ТОКЕНЫ, и даже сами создадим те самые ТОКЕНЫ на Python.

Узнать о ТОКЕНАХ

Часть 2: ChameleonLab — не просто утилита, а учебная лаборатория

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели13K

Привет, Хабр!

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

А для всех, кто хочет опробовать новые функции прямо сейчас, мы собрали свежую версию. Скачать ее можно по ссылке: ChameleonLab 1.3.0.0

Читать далее

Хамелеон в цифровых джунглях: Пишем десктопное приложение для стеганографии на Python и PyQt6

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели48K

Привет, Хабр!

Сегодня я хочу поделиться историей создания одного из моих проектов — десктопного приложения для стеганографии, которое я назвал "ChameleonLab". Это не просто очередной скрипт для LSB-метода, а полноценный инструмент с графическим интерфейсом, поддержкой разных типов файлов, шифрованием и, что самое интересное, встроенными утилитами для стегоанализа.

Идея заключалась в том, чтобы создать удобную «лабораторию», где можно не только спрятать данные, но и исследовать, насколько незаметно это получилось. Мы пройдем путь от базового алгоритма до интеграции с Matplotlib и анализа аномалий в Office-документах.

Читать далее

Легчайший бот на Python, который переводит ваш голос в текст

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели25K

Всем привет! Недавно вдохновилась всякими ботами в тгшке и решила для будущего портфолио сделать своего первого бота + подумала, что может быть это будет полезно кому-то из вас :-)

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

Читать далее

Astral выпустила pyx: разбираемся, какие боли он закрывает

Время на прочтение4 мин
Охват и читатели7.6K

Привет! На связи  Леша Жиряков, руководитель направления backend-команды витрины онлайн-кинотеатра KION. Сегодня хочу рассказать о горячем пирожке от Astral Software. Если вы следите за экосистемой Python, то наверняка знаете Astral по их хитам вроде ruff и uv. Теперь они выпустили pyx — реестр пакетов для Python, который обещает упростить жизнь разработчикам, особенно в проектах с машинным обучением и большими зависимостями. Давайте разберемся, что это за проект такой, почему стоит обратить на него внимание и как его использовать на практике.

Читать далее

Анализ лиц с домофона: как я победил несовместимости и собрал dlib+CUDA на Ubuntu — готовый скрипт

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели15K

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

Домофонная камера всё записывает, но вручную пересматривать часы видео бессмысленно. Мне стало интересно: можно ли разово прогнать архив записей через алгоритмы компьютерного зрения и посмотреть, как быстро GPU справится с такой задачей.

Это был чисто экспериментальный проект: не «система слежки», а тест производительности и возможностей CUDA в связке с dlib и face_recognition.

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

Проект выложен на GitHub.

CUDA

Semantic Retrieval-Augmented Contrastive Learning (SRA-CL) для sequential рекомендательных систем: обзор

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели6.5K

👋 Привет, Хабр!

Меня зовут Никита Горячев, я Research Engineer в WB, последние несколько лет работаю на стыке RecSys, LLM и мультимодальных моделей. Каждый день мы обрабатываем миллиарды событий, а модели, которые мы внедряем, напрямую влияют на CTR, удержание и конверсию, принося немало дополнительной выручки.

До этого я успел поработать в AI-стартапе в Palo Alto, где занимался голосовыми агентами (ASR/TTS), и в МТС, где мы строили AI-экосистему. Ранее в Сбере я занимался созданием единого RecSys SDK для всей экосистемы (от SberMegaMarket до Okko и Zvuk), а ещё раньше — развивал персонализацию и ML в ритейле и нейротехе.

Сегодня я хотел бы поговорить о том, как большие языковые модели могут починить контрастивное обучение в рекомендательных системах. Контрастивные методы давно стали стандартом в NLP и CV, но в последовательных рекомендациях они работают далеко не идеально: данные разрежены, а аугментации часто искажают смысл вместо того, чтобы его сохранять. Авторы свежей статьи с arXiv — “Semantic Retrieval Augmented Contrastive Learning for Sequential Recommendation (SRA-CL)” — предлагают элегантное решение: использовать LLM для генерации семантически осмысленных позитивных пар. Звучит просто, но даёт заметный прирост качества — давайте разберёмся, как именно это работает.

Читать далее

Functools, Itertools, Collections и с чем это всё едят

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели10K

В этой статье я коротко показываю, как три стандартные библиотеки Python — itertools, collections и functools — упрощают повседневные задачи.

В itertools разбираю полезные итераторы и паттерны работы с последовательностями: от count/cycle/repeat до groupby, permutations/product и zip_longest — всё с минимальными примерами.

В collections показываю готовые контейнеры для практики: Counter, deque, defaultdict, OrderedDict и namedtuple — где они уместны и чем удобнее обычных структур.

В functools делюсь инструментами “функционального” стиля и декорирования: lru_cache, cmp_to_key, total_ordering, partial, reduce, update_wrapper и wraps — зачем они нужны и как их быстро применить.

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

Читать далее

LLM на прокачку: практический гайд по Alignment

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели12K

Мы в Точка Банке делаем свою LLM. Чтобы она работала хорошо, недостаточно просто обучить её на куче текстов. Для получения осмысленного и предсказуемого поведения модели, нужен Alignment — дообучение с учётом предпочтений и ограничений. В статье расскажу, какие методы применяют в современных моделях, и как мы адаптировали их под себя.

Читать далее

Эксперимент: может ли AI реально помочь с рефакторингом легаси-кода на Python

Время на прочтение11 мин
Охват и читатели14K

Показываем на практике, как с помощью ChatGPT можно за несколько минут преобразить реально существующие фрагменты легаси-кода на Python.

Читать далее

Spring Boot + Python: от эксперимента до open-source

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели9.1K

Как исполнять Python внутри Spring Boot?

Я прошёл путь от сырых AOP-костылей до production-ready библиотеки с REST, gRPC и безопасным исполнением скриптов. В статье: опыт, архитектура и базовые примеры использования.

Читать далее

Ищем порт на коммутаторах D-Link

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели17K

Предисловие.

Есть у нас сеть. Не вдаваясь в подробности, состоит она из нескольких десятков коммутаторов D-Link и Cisco. Последние выполняют роль агрегаторов трафика, а D-Link занимаются доступом. Соответственно много VLAN, много устройств. И очень часто, пользователи меняют свое расположение, а вместе с ними переезжают их компьютеры и МФУ. Всё это дело хоть и подключается к нумерованным розеткам, часто поиск порта на коммутаторе для замены VLAN довольно долог и не удобен. Кроме того, техники, которые занимаются непосредственно подключением оборудования, не имеют доступа на коммутаторы. Им приходится глазами искать кабель в стойке, а потом просить инженеров проверить VLAN. Хотелось как-то упростить процесс.

Я уже давно неспешно изучаю Python в качестве дополнительного образования. В основном для применения в автоматизации на работе и дома. Ну тут вот и сошлось: Python, проблема и статья на Хабре Python3. Автоматизация конфигурации мультивендорного сетевого оборудования / Хабр. Прямо брать код из ее не стал, такой функциональности не требуется. Да и хотелось самому разобраться, опираясь на идею.

Написание кода началось с запроса к GigaChat, заодно было интересно проверить насколько он хорошо пишет скрипты. Не буду утомлять приводя весь цикл нашего общения, остановлюсь кратко: сперва GigaChat выдал скрипт на основе библиотеки paramiko, после уточнения, что нужно для Telnet выдал и эту версию. После нескольких итераций, в том числе с асинхронными функциями, остановился на библиотеке telnetlib. В Python 3.12 есть ее замена telnetlib3, т.к. сама telnetlib вырезана в релизе - устарела. ИИ вполне можно использовать для написания небольших скриптов, как отработка идеи или небольших функций в проектах. Однако стоит проверять код, т.к. в части случаев он получается совсем не рабочий. Ну и заодно - изображение в начале текста тоже сделал GigaChat, я то рисовать не умею.

Читать далее

Telegram Bot API 9.2: прямые сообщения и рекомендуемые посты

Время на прочтение4 мин
Охват и читатели18K

15 августа 2025 года Telegram выпустил обновление Bot API 9.2. Если прошлые версии (9.0 и 9.1) в основном усиливали возможности ботов в работе с платным контентом, подарками и чек-листами, то 9.2 делает шаг в сторону более тесной интеграции ботов с каналами и их экосистемой.

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

Читать далее

Ближайшие события

Скриншоты сайта в адаптивную Tailwind верстку

Время на прочтение2 мин
Охват и читатели13K

Я знаю, что существует 100 500 способов перекинуть картинку в готовую вёрстку.
Но когда у меня дошло до дела, результат оказался так себе.
То ли я криворукий, то ли все эти инструменты ещё далеки от совершенства.
В итоге понял, что мне проще накидать свой собственный велосипед — скрипт на Python (~200 строк).

Решил выложить, может, кому‑то пригодится.

Скрипту можно скормить три скриншота сайта:

1) Десктоп‑версия

2) Планшет

3) Мобильная версия

На выходе получим одну HTML‑адаптивную вёрстку (десктоп, планшет, мобила) с использованием Tailwind CSS.

Читать далее

QTune — open-source решение для быстрого файн-тюнинга моделей

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели11K

Сегодня я хочу рассказать о своем проекте QTune. Это open-source приложение с графическим интерфейсом, которое превращает сложный и требовательный процесс файнтюнинга в понятный и управляемый процесс, доступный каждому. Это не просто набор скриптов, а полноценная студия, охватывающая весь цикл: от создания датасета до запуска готовой модели локально.

Читать далее

Создаем простого грид-бота для Московской биржи через QUIK и Python

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели38K

Алгоритмическая торговля на Московской бирже с помощью терминала QUIK остаётся популярным способом автоматизировать стратегии. В этой статье мы напишем грид-бота, который выставляет ордера сеткой вокруг текущей цены и зарабатывает на колебаниях.

Читать далее

Сказ о том, как мы приложение для падел-тенниса создавали

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели14K

Как‑то раз двое ML‑щиков решили соединить свою любовь к компьютерному зрению и ракеточным видам спорта. Так родилась идея сделать систему видеоаналитики для падел‑тенниса.

Падел — это игра на стыке большого тенниса и сквоша. От сквоша падел взял стеклянные стенки вокруг корта, а от большого тенниса — почти всё остальное.

Читать далее

Мой первый пет‑проект: как я создавал ядро для Telegram‑ботов

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели15K

Я собрал ядро для Telegram‑ботов и описал архитектуру, которая держится на YAML‑сценариях и очереди в БД. Почему отказался от брокера, как экономлю апдейты в базе, как работает «разблокировщик» цепочек и что это даёт в предсказуемости. Показываю решения и компромиссы без «магии».

Читать далее

Хватит тестировать на «кошках»! Разворачиваем циничный API на FastAPI за 5 минут для реальных AQA-задач

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели13K

Привет, Хабр! Меня зовут Ваня, и я AQA-инженер. Как и многие из вас, я занимаюсь обучением будущих покорителей Postman и Pytest. И, как многие из вас, я столкнулся с проблемой: все существующие тестовые API — невыносимо скучные.

Todo-листы, интернет-магазины с товарами Item 1, Item 2, API для управления книгами... Серьезно? После пятого GET /todos начинаешь сомневаться не только в своей карьере, но и в смысле бытия. Данные в них стерильны, как операционная, а сценарии предсказуемы, как сюжет российского сериала.

Моим ученикам было скучно. Мне было скучно. Я понял, что нужен свой API. С блэкджеком и... ну, вы поняли. С API, который будет не просто функциональным, но и забавным. Который захочется «потыкать» просто ради того, чтобы увидеть очередной перл в ответе сервера.

Так родился «Cynical Circle API» — API для тех, кто понял жизнь и устал от ванильных примеров.

(Так выглядит наша интерактивная документация. Уже интригует, не правда ли?)

Читать далее

От консоли к GUI: Как написать игру «Сапёр» на Python с нуля версия GUI (часть вторая)

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели14K

Создайте свою версию легендарного «Сапёра» на Python с графическим интерфейсом. В этом подробном руководстве вы шаг за шагом реализуете полноценную игру: от настройки игрового поля с помощью Tkinter до обработки кликов, управления флагами и интеллектуального открытия клеток. Вы освоите генерацию мин с безопасной зоной, рекурсивное раскрытие пустых областей, систему подсчёта времени и проверку условий победы

Читать далее