Обновить
575.01

Python *

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

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

5 техник, применяемых в анализе временных рядов, которые должен знать каждый. Часть 1

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров7.5K

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

Читать далее

Мы внедрили Telegram-бота с ИИ в федеральной компании

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

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

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

Сегодня хочу поделиться историей о том, как мы внедряли сервис на основе Telegram-бота с элементами искусственного интеллекта для решения конкретной бизнес-задачи. Это история про то, как мы начали с MVP, постепенно добавляли ИИ, и как это помогло сотрудникам сэкономить время и повысить точность выполнения операций.

Читать далее

Решаем задачу про ферзей при помощи SMT-солвера

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

Автор статьи Modern SAT solvers: fast, neat and underused утверждает, что SAT-солверы «преступно мало используются в нашей отрасли». [SAT — Boolean SATisfiability Solver, то есть солвер, способный находить присвоения, делающие истинными сложные булевы выражения. Более подробно я писал о них ранее.] Какое-то время назад я задался вопросом, почему: как получилось, что они настолько мощны, но ими никто не пользуется? Многие специалисты заявили, что причина в неудобстве кодирования SAT: они лучше предпочтут работать с инструментами, которые выполняют компиляцию в SAT.

Я вспомнил об этом, когда прочитал пост Райана Бергера о решении «задачи ферзей с LinkedIn» как задачи SAT.

Вкратце опишу задачу про ферзей (Queens). У нас есть сетка NxN, разделённая на N областей, и нам нужно разместить N ферзей так, чтобы в каждом столбце, строке и области находился ровно один. Ферзи могут находиться на одной диагонали, но не соседствовать по диагонали.

Читать далее

Развёртывание ML-моделей в картинках

Время на прочтение6 мин
Количество просмотров4.6K

Всем привет! Меня зовут Алина, и ранее я вам рассказывала про то, как можно спроектировать Feature Platform. Сегодня я хочу рассказать про очень важный компонент ML-платформы — развёртывание ML-моделей, и затрону связанные с ним компоненты.

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

Читать далее

Разбираемся с суффиксами квантования LLM: что на самом деле значат Q4_K_M, Q6_K и Q8_0

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров17K

Привет!
Задумывались, какую версию квантованной LLM выбрать: Q4_K_M, Q6_K или Q8_0? Насколько Q6_K хуже справляется с задачами по сравнению с Q8_0? И что вообще означают все эти буквы в суффиксах?

Примечание: это адаптированный перевод моей статьи на Medium. Перевод был сделан при помощи мозга, а не нейросетей или Google Translate.

Узнать чуть больше про квантование LLM

BlackWave: Как я создал симулятор соцсети с тысячами ИИ-ботов и почему перешёл на Python

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

Эта статья — не просто рассказ о разработке. Это путь от сумасшедшей идеи «социальной сети для одного» до полноценной open-source платформы, где каждый бот — личность. Я поделюсь тем, как строил архитектуру, зачем отказался от C# в пользу Python и почему важно, чтобы ИИ-боты вели себя не как алгоритмы, а как настоящие люди.

Читать

Ищем игры для Atari в случайных данных

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

В рамках этого проекта я сгенерировал около 30 миллиардов файлов случайных данных по 4 КБ. Из этих файлов на основании эвристик из полной коллекции файлов ROM Atari было выбрано примерно 10 тысяч. Затем система классификатора просканировала их при помощи эмулятора Atari 2600, чтобы проверить, окажется ли какой-то из этих случайных файлов игрой для Atari. Этот проект отвечает на вопросы, которые никто не задавал, он никому не нужен и представляет собой огромную пустую трату ресурсов. Что, если засунуть в GPU миллиард обезьян и заставить их написать игру для Atari 2600?

Благодаря прогрессу GPU, ИИ и машинного обучения сегодня мы можем (очень быстро) написать на Python скрипт, который дампит мусор в ROM по 4 КБ и спрашивает: «похоже ли это на игру?». Проект был создан не из ностальгии, моей первой консолью была NES. Я вознамерился исследовать нечто невообразимо обширное и посмотреть, найдётся ли там что-нибудь странное.

Читать далее

5 техник, применяемых в анализе временных рядов, которые должен знать каждый. Часть 2

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров7.3K

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

В этом разделе мы рассмотрим некоторые из наиболее эффективных методов.

Читать далее

Ускорение тестового набора PyPI на 81%

Время на прочтение12 мин
Количество просмотров1.5K

Компания Trail of Bits уже несколько лет сотрудничает с репозиторием PyPI, помогая добавлять в проект новые возможности и улучшать стандартные параметры безопасности в экосистеме управления пакетами Python.

Читать далее

Брайлекс — мобильное устройство ввода текста шрифтом Брайля

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

Что такое BraiLex?

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

BraiLex можно использовать для ввода текста без фиксированного основания даже во время ходьбы.

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

(По состоянию на 11 июня 2025 года).

Читать далее

Как и когда использовать Celery — мой опыт на проде

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

Как и когда использовать Celery — мой опыт на проде

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

Читать далее

Постоянный логин в автотестах? Решаем с Playwright и экономим время

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.3K

Привет, тестировщики и кодеры! Представь: пишешь автотесты для UX, всё красиво, запускаешь — и каждый тест начинает с нуля: логин, пароль, кнопка. Как будто у тестов амнезия! Это бесит, тормозит и превращает код в копипасту. Давай разберёмся, как выкинуть повторный логин на свалку и ускорить всё с Playwright и Python.

Читать

Залезаем на плечи гигантов — создаем модуль для ComfyUI для свободного движения камеры и создание 6dof сцен из фото

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

Всем привет!

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

В этой статье мы рассмотрим, как расширить возможности генеративных моделей для виртуальной реальности (VR), создав модуль для ComfyUI, который позволит:

преобразовывать изображения и видео между pinholefisheye и equirectangular проекциями;

итеративно дорисовывать панорамы до полного сферического охвата;

синтезировать новые ракурсы свободным движением камеры в 3‑D‑пространстве.

Я покажy, как объединить продвинутый reprojection grid_sample с outoainting, картами глубины и облаками точек, чтобы получить реалистичные «новые виды» из одного изображения. Кроме того совместим этот подход с подходом Video Generation.

Читать далее

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

Делаем ИИ автоответчик в Telegram

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

Привет, Хабр! Хочу поделиться своим опытом создания бота, который может имитировать стиль общения любого пользователя Telegram. Проект AI Telegram Responder позволяет обучать модели на основе истории переписки и использовать их для автоматических ответов в определенных чатах.

Читать далее

Фундаментальные вопросы по ML/DL, часть 1: Вопрос → Краткий ответ → Разбор → Пример кода. Линейки. Байес. Регуляризация

Уровень сложностиСредний
Время на прочтение23 мин
Количество просмотров5.6K

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

Времени мало, объема много, цели амбициозные - нужно научиться легко и быстро объяснять, но так же не лишая полноты!

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

Будет здорово получить ваши задачи и разобрать в следующих выпусках!

Как только разберетесь приступайте к части 2!

Взглянуть на старое под новым углом →

MCP (Model Context Protocol). «Мне только попробовать!»

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

Если вам довелось уже почитав статьи про mcp технологию озадачиться вопросом «а что же происходит под капотом» и при этом какое то представление о том, что же такое mcp, у вас все таки есть, то, возможно, эта заметка поможет вам сделать еще один шаг к пониманию что за всем этим скрывается.

Читать дальше

Поговорим о DevSecOps и культурной трансформации в мире разработки

Уровень сложностиПростой
Время на прочтение21 мин
Количество просмотров2.9K

Киберугрозы растут, уязвимости в коде дороже, чем когда-либо, а традиционные подходы к безопасности терпят крах. Почему компании теряют миллионы, игнорируя безопасность до финального этапа разработки? Как DevSecOps меняет правила игры, превращая защиту данных в часть повседневной работы разработчиков? В этой статье вы узнаете:

Почему «последняя миля» в тестировании безопасности — это провал: статистика OWASP и NIST о том, как 97% приложений содержат уязвимости, а исправление ошибок после релиза обходится в 6 раз дороже.

Как DevSecOps убирает барьеры между командами: интеграция безопасности в CI/CD, автоматизация проверок и сдвиг «влево» (Shift Left) — от теории к реальным кейсам Microsoft, Netflix и Capital One.

Почему успех DevSecOps зависит не от инструментов, а от культуры: как руководство может создать среду, где безопасность становится общей ответственностью, а не «чужой заботой».

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

Статья подойдёт для разработчиков, руководителей IT-команд, специалистов по кибербезопасности и всем, кто хочет превратить уязвимости в прошлое.

Читать далее

Создаем свой RAG: от загрузки данных до генерации ответов с LangGraph. Часть 2

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6.9K

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

Технология RAG (Retrieval-Augmented Generation) сочетает поиск информации с генерацией ответов, делая AI-системы более точными и осмысленными. В этой статье разберём практическую реализацию RAG с помощью LangGraph — гибкого инструмента для построения агентов и графов.

Читать далее

Обыгрываем казино, с блэкджеком и стратегиями

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров7.8K

В данной статье рассмотрим работу с библиотекой gymnasium для изучения машинного обучения с подкреплением. Реализуем агента, который использует метод машинного обучения q-learning для максимизации выигрыша в карточной игре blackjack. Сравним средний выигрыш за 100000 игр при различных реализациях игры blackjack.

Читать далее

Быстрый деплой бота (и не только) на Docker-хостинге с Portainer

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров5.5K

18 июня будет два года как я создал сообщество "Код на салфетке". Сразу оговорюсь, что это некоммерческая история и возникло оно как решение важной для меня проблемы: "недостаток информации для начинающего разработчика". В процессе моего обучения и развития я сталкивался с различными нюансами, которые решались достаточно просто, но найти "комплексный ответ" зачастую было очень трудной задачей.

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

За эти два года мне в личку и в чат Telegram-канала довольно часто пишут новички и их вопросы можно разделить на две категории:

Читать далее

Вклад авторов