Обновить
521.47

Python *

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

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

Выбор локальной LLM модели. Публикация на сайт с чатом

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

🐝 Выбор локальной LLM модели. Публикация на сайт с чатом.

В мире нейросетей - хайп. Не всегда заявления производителя соответствуют действительности, например, на бумаге DeepSeek R1 поддерживает русский язык, на деле не всё так гладко. Данная статья содержит подборку LLM моделей, хорошо работающих с русским языком и имеющих возможность tool calls - вызов внешних python/nodejs функций для интеграции в стороние сервисы

Читать далее

Передача данных от ESP32 по Bluetooth LE к Android

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

Идея приложения состоит в демонстрации IoT - интеграция различных устройств, и передача данных по разным протоколам в Edge или Cloud. Допустим, наш автономный механизм работает без подключения к интернету, а нам необходимо сделать замеры поведения движений во времени. Мы подключаемся с помощью смартфона по Bluetooth LE к контроллеру механизма и в течении определенного времени делаем запись. При этом наш смартфон успешно подключается к облачному MQTT-брокеру и передает данные в IoT платформу. Платформа производит аналитику и предоставляет нам результат. А мы в это время на основании полученных данных можем внести требуемые значения характеристик механизма в контроллер по BLE.

В статье Machine learning на ESP32 мы начали разработку проекта распознавания жестов для ESP32. В данной статье продолжим реализацию подключение и отправку данных по BLE и MQTT с помощью Android-устройства. Хотя ESP 32 может напрямую подключаться к Wi-Fi и MQTT, как, например, показано в статье Платформа с web-камерой на ESP32, мы все же реализуем передачу данных по BLE, руководствуясь выше изложенными соображениями.

Читать далее

Дискуссия: генеративный AI в разработке: yay or nay?

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

Собрались как-то на Conversations ребята из Яндекс Райдтех, Звука, Альфа-Банка и MTS AI, чтобы вместе с Just AI прийти к выводу: генеративный AI в разработке это супер или пока не очень?

Как можно использовать AI на разных этапах разработки – поддержки, дизайна, аналитики, солюшн-архитектуры, тестирования? Как разработчикам Copilot-сервисов учесть реальные интересны разработчиков-юзеров? Как замерять эффективность использования генеративок? А как бороться со скепсисом и саботажем (и нужно ли)? Как генеративный AI изменит культуру разработки и роль разработчика в целом?

Читать далее

Как отправлять критические уведомления из промышленных SCADA-систем по SMS API

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

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

Отправлять такие оповещения в Telegram значит их гарантированно потерять. Поэтому мы решили сделать интеграцию с Exolve API для их автоматической отправки для мгновенного оповещения ответственных специалистов через SMS.

Читать далее

Мультимодальные языковые модели: как нейросети учатся видеть и слышать

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

Мультимодальные языковые модели представляют собой самый прогрессивный класс нейросетевых архитектур, объединяющих способность воспринимать и обрабатывать различные типы данных одновременно - текст, изображения, аудио и видео. Это похоже на то, как наш мозг интегрирует информацию из разных органов чувств, чтобы создать полную картину мира. Как сказал философ Марсель Пруст, “Настоящее открытие не в том, чтобы увидеть новые земли, а в том, чтобы иметь новые глаза”.

Читать далее

Календарь IT-конференций на 2025 год

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

Всем привет! На связи Speach (ex. IT-People). В прошлом году мы сменили имя, но не изменили своей любви к конференциям. И продолжаем организовывать самые душевные и классные мероприятия для айтишников. Приглашаем принять в них участие.

25 апреля, DUMP EKB, Екатеринбург

Крупнейшая конференция разработчиков на Урале, куда приезжают более 2000 человек! Конференция, которая традиционно собирает топовых IT-экспертов со всей страны. В 12 секциях прозвучат десятки докладов ТОЛЬКО на актуальные темы. Впервые в этом году — новая секция: TechLead. А также — Backend (2), Frontend, Testing&QA, Team, Product, ML&DS, BA&SA, DevOps, Design, Science, круглые столы, воркшопы, нетворкинг и афтепати.

Читать далее

Тестировании торговой системы со случайными сигналами на вход для фьючерсов Московской биржи при помощи Python

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

В этой статье расскажу о том, как воспроизвел и протестировал торговую систему для фьючерсов Московской биржи, основанную на идеях Александра Резвякова. Недавно, просматривая раздел алготрейдинга на Смартлабе, я наткнулся на видео с его выступления на конференции 2024 года под названием "5-6 идей для построения прибыльной торговой системы на фьючерсах". Меня привлекла четкость и понятность предложенных им правил торговли.

Поскольку я активно занимаюсь автоматизацией процессов и стремлюсь глубже изучить возможности Python библиотеки backtesting.py, мне показалось это хорошей идеей для практического применения.

Хотя я лично не знаком с Александром, полагаю, что публичное представление идеи предполагает возможность её независимого анализа и тестирования сообществом трейдеров и программистов.

Код тестов на Гитхаб

Игра в имитацию: используем Python для генерации синтетических данных для ML и не только

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

Ручной сбор данных — это всегда боль. Он съедает время, деньги и нервы, особенно в таких областях, как медицина или финансы, где затраты могут быть космическими, а юридические барьеры — непреодолимыми. По прогнозу Gartner, к 2030 году синтетические данные полностью затмят реальные данные в моделях ИИ.Почему? Потому что это работает.

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

Читать далее

Оптимизация работы с REST API: когда и как использовать пагинацию (+ простой пример на Python)

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

Итак, пользователи вашего приложения уже жалуются на долгую загрузку данных, а серверы едва справляются с нагрузкой. Одна из возможных (и частых) причин в том, что API пытается выгрузить тысячи записей за один запрос. Без пагинации базы данных захлебываются под тяжестью SELECT-запросов, а клиенты уходят к конкурентам, не дождавшись ответа.

Почему пагинация — это не опция, а must-have для любого API? Как избежать типичных ошибок при ее внедрении? И почему даже стартапам с небольшим трафиком стоит задуматься о ней уже сегодня? Ответы — в разборе принципов, которые превращают пагинацию из технической детали в инструмент роста бизнеса.
Читать дальше →

Шардирование гео-данных в Redis

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

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

Для тех, кто не хочет много читать про то, как мы реализовывали гео-поиск - ключевые слова: geoadd, georadius, пространственные индексы h3. Всем остальным - добро пожаловать под кат.

Читать далее

Настраиваем паука для сбора данных: как работает фреймворк Scrapy

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

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

Читать далее

5 листингов для лучшего понимания Python

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

На протяжении нескольких лет я занимаюсь программированием на Python. За это время мне удалось собрать несколько занятных листингов кода. Какие-то из этих листингов я находил в литературе, посвященной Python, некоторые листинги я встречал на собеседованиях, а на какие-то натыкался во время выполнения рабочих задач. Однако все эти листинги объединяет одно: на мой взгляд они имеют неплохой образовательный потенциал и помогают лучше понять некоторые концепции Python. В этом посте привожу пятерку из моего списка листингов.

Читать далее

Боремся с токсичными комментариями с помощью ИИ, FastAPI и React

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

В последнее время я перестал читать комментарии к статьям на Хабре. Причина — токсичность и ненависть друг к другу. Абсолютно безобидные технические статьи подчас вызывают бурю агрессии у отдельных лиц. Всех банить тоже нельзя — свобода слова закреплена в Конституции. Но есть решение: давайте используем искусственный интеллект, который будет анализировать комментарий и переписывать его, меняя токсичность на вежливость, сохраняя основную мысль комментария.

Мы воспользуемся FastAPI для бэкенда, React для фронтенда, заставим их между собой общаться через RESTful API, а бизнес-логику реализуем путём обращения к ИИ через gRPC.

Читать далее

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

Задача про n-ое число Фибоначчи

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

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

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

Читать далее

Программный код в Big data и Power law

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

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

Для процессов SOC характерно отсутствие управляющих параметров и масштабная инвариантность. Универсальность сложных процессов SOC со степенным законом Power law имеет тот же характер, как и универсальность простых линейных систем, не обладающих масштабной инвариантностью, по отношению к закону нормального распределения вероятности.

Зависимость от масштаба возникает при аналого-цифровом преобразовании битов в позиционную систему счисления и проявляется в законе нормального распределения вероятности в виде дисперсии и математического ожидания. Потеря масштабной инвариантности в позиционной системе счисления компенсируется приобретением принципа причинности. Например, в Древнем Риме, где была принята непозиционная система счисления, вычисляли, что «после того - не вследствие того» и сильно удивились бы истории с падающим на Ньютона яблоком.

Значительные достижения в анализе Big data заставляют предположить связь с распределением вероятности Пуассона: чем больше данных, тем чаще должны встречаться пуассоновские события и вопрос лишь в поиске подходящей метрики и системы счисления.

Читать далее

CPython C API: 5 вопросов на собеседовании

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

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

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

Читать далее

Как мы искали должников при помощи Pandas

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

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

Я занимаюсь анализом данных и дата‑журналистикой в газете «Деловой Петербург». Расскажу о том, как объединяли информацию из множества локальных html‑таблиц и приведу примеры кода на «Питоне».

Читать далее

Как мы ускорили ванильную FreeIPA в 20 раз!!! (почти)

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

В статье речь пойдет об ALD Pro (Astra Linux Domain Pro).
Один заказчик попросил предоставить инструмент нагрузки LDAP-запросов, да не простой, а с GUI и графиками.

Наша команда в своей работе активно использует open source инструмент нагрузочного тестирования Locust (англ. Саранча). Сам по себе Locust является ядром нагрузки с минимальным функционалом из коробки, но этот функционал расширяется за счет использования Locustfiles, которые пишутся на чистом Python, что позволяет не ограничиваться набором инструкций, как, например, в Dockerfile/Containerfile/Vagrantfile, а писать отдельные Python-модули.
На создании инструмента нагрузки ничего не закончилось, а все только началось.

Мы нагрузили ALD Pro, получили графики и...обнаружили катастрофу.

Читать далее

Производительность интерпретатора Python 3.14 с оптимизацией хвостовых вызовов

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

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

OpenSearch как сервис: обзор и тривиальный пример использования на Python

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

Привет, Хабр! Проблема традиционных реляционных баз данных в том, что они не всегда справляются с обработкой огромных объемов информации. Вот вам нужно быстро найти, проиндексировать и проанализировать логи, события или метрики, но вы упираетесь в ограничения масштабируемости, автошардирования и скорости обработки запросов специфического профиля нагрузки. Знакомо?

Меня зовут Гришин Александр, я продакт-менеджер в Selectel и отвечаю за развитие объектного хранилища и облачных баз данных. В этой статье расскажу, как описанные проблемы решает OpenSearch, как развернуть кластеры этой платформы за несколько минут и начать с ней работать в Python.
Читать дальше →

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