Обновить
1024K+

Python *

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

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

Слушаем события в Selenium с помощью Listeners. Как реагировать на события без тонны кода

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

Привет!

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

Читать далее

Простыми словами про метрики в ИИ. Регрессия. MSE, RMSE, MAE, R-квадрат, MAPE

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

Привет, Хабр! Меня зовут Александр Троицкий, я автор канала AI для чайников, и я продолжаю серию коротких статей по метрикам качества моделей для машинного обучения!

Читать далее

Триггербот для Rainbow Six Siege на Python

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

Доброго дня, если это день. Мне немного жаль тратить время на такие развлечения, как компьютерные игры, но иногда не могу отказать себе в удовольствии чуть-чуть пострелять в виртуальном пространстве. Одной из игр, которая находится в моем арсенале, является Rainbow Six Siege, онлайн шутер с элементами тактико-специальной подготовки.

Одной из "фишек" игры являются индивидуальные умения оперативников. И в данной статье рассмотрена реализация бота-помощника, написанного за 5 минут на Python, который помогает играть за российского оперативника GLAZ.

Читать далее

Как я писал свой первый проект на Python

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

Кто-то в качестве своего первого серьезного проекта пишет калькулятор, другие веб-сайт и в принципе идея ограничивается только скилами и вашей собственной фантазией (или фантазией преподавателя, если у вас такой есть). Калькулятор мне писать не хотелось (как минимум из-за наличия прекрасной функции eval частично заменяющей его), а для веба на тот момент я был слишком зелен и ничего не понимал в протоколах, html, фреймворках и т.д.

Но месяцы за изучением Python были пройдены, сотни задач на Stepik, Leetcode и подобных ресурсах решены, десятки часов Хирьянова и других святил на Youtube с упоением просмотрены и руки невероятно чесались написать что-то «своё, масштабное и нужное».

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

Планировщик на основе искусственного интеллекта

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

Часто ли нам приходится пользоваться записными книжками? Удобно ли это? Всегда ли
тот кусочек бумаги, на котором записано время и место встречи, под рукой? Насколько
 быстро можно записать необходимую информацию? Все эти вопросы не открывают
Америку, всем понятно, что цифровые планировщики гораздо практичнее, нежели
традиционные письменные. Но что может быть не так с электронными записными
книжками? Например, для внесения очередной записи необходимо произвести большое количество действий: от создания плана новой встречи до ручного ввода места и времени встреч в каждое отдельное поле. Казалось бы, пустяк, да и отнимает не так уж много времени. Но ведь нет предела совершенству! Как раз для улучшения данного аспекта: планирования повседневной (и не только) жизни, предназначен мой проект. Стоит отметить, что он будет полезен в основном для бэк‑офиса: поможет не опоздать на важную встречу, не пропустить совещание и не забыть про дедлайн. И так, перейдем от пустых слов, непосредственно к разработке. В последующей статье описан мой опыт по разработке такого рода проекта, а я это делал впервые, поэтому сильный хейт не принимается:‑)

Читать далее

Как мы сломали языковой барьер с помощью одной модели?

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

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

Виртуальный ассистент поддерживает 109 языков, понимает на каком языке к нему обратились и генерирует ответ уже на этом языке. И все это благодаря пайплайну на основе языковой модели LaBSE (Language-agnostic BERT Sentence Embedding) и фреймворка RASA.

Читать далее

Sentiment Analysis Bot на Rasa 3.1

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

Начну с того, что последние 3 месяца я стажировалась в лаборатории искусственного интеллекта ООО "ОЦРВ" в группе обработки естественного языка. За это время успела поучаствовать в разработке системы сентимент-анализа для компании. В этой статье расскажу как вижу эту задачу я, что делала и с какими проблемами пришлось столкнуться.

Читать далее

Анализ повторяемости инцидентов

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

Привет, Хабр!
Мой телеграм канал dostavka_bagov

Здесь начинаем разбирать анализ текстовых данных. По-разному «от руки» написанных отчетов о причинах возникновения инцидентов. Сегодня о том, как я пытаюсь выявлять паттерны возникновения Инцидентов, другими словами, искать мелкие Проблемы.

Эта статья не будет полезна матерым дата-сатанистам, но может быть полезна менеджерам, которые хотят отследить повторяемость похожих задач, или как я – похожих технических неполадок.

Читать далее

aiogram bot для вуза и куча всего остального

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

Краткий обзор изнутри нашего технологичного помощника в студенческих тяжбах. Проект для студентов, в котором мы помогаем им получать расписание ,отправлять жалобы и еще много всего. А также показано как это все реализовано с любимой асинхронностью, а точнее aiogram, aiohttp, asyncpg .

Читать далее

Новый Selenium Python: стелс-режим, профиль, скрытая автоматизация

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

Привет всем! У меня отличные новости: работа с Selenium стала еще проще. Больше никаких танцев с вебдрайверами — теперь всё работает "из коробки"!

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

Читать далее

Где лучше всего пробовать идеи для обучающихся систем?

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

Для того, чтобы разобраться в сложной и объемной теме машинного обучения, попробовать свои силы и отточить навыки, оптимально подходит библиотека scikit-learn (sklearn).

Читать далее

Не статья, а позорище какое-то! Sentiment-анализ комментариев из блога Selectel на Хабре

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

Каждый месяц в блоге Selectel на Хабре появляется 35-40 публикаций. Сбор статистики по ним мы давно автоматизировали, но до последнего времени не охватывали sentiment-анализ, то есть оценку тональности комментариев средствами машинного обучения.

У нас есть своя ML-платформа, серверное железо и опыт в развертывании IT-инфраструктуры. Вполне логично, что в какой-то момент возник вопрос: что, если проанализировать эмоциональный окрас комментариев в блоге на Хабре с помощью LLM?

Под катом рассказываем, что из этого получилось.
Читать дальше →

Что такое векторизация текста в NLP и какая она бывает: One-hot encoding, Bag of words, TF-IDF, Word2Vec, BERT и другие

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

Привет, Хабр! Меня зовут Александр Троицкий, я автор канала AI для чайников, и в этой статье я расскажу про разные способы векторизации текстов.

Всем привет! Вдохновившись прикольной и понятной статьей на английском языке, и не найдя сходу чего-то похожего в русскоязычном сегменте интернета, решил написать о том, как обрабатывается текст перед тем, как на нем начинают применять разные модели ИИ. Эту статью я напишу нетехническим языком, потому что сам не технарь и не математик. Надеюсь, что она поможет узнать о NLP тем, кто не сталкивается с AI в продуктах на ежедневной основе.

О чем эта статья:

Читать далее

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

Простая настройка VPS, NGINX и FastAPI: Пошаговое руководство. Часть 2

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

Всем привет! Продолжаю раскрывать тему простой настройки VPS, NGINX и FastApi. В прошлой части мы раскрыли следующие темы: покупка VPS сервера, покупка доменного имени и создали простое FastApi приложение, которое подгружает index.html файл с простыми стилями.

Напоминаю, что написание всего контента было в рамках темы про запуск aiogram 3.x телеграм бота с технологией вебхуков в связке с FastApi. Раскрыл тему максимально подробно, так что если для вас было проблематично работать с вебхкуками, то милости прошу к моей статье.

Небольшой дисклеймер

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

Теперь к делу. Сегодня мы:

Читать вторую часть

Celery: разбираемся с Celery Beat

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

Это продолжение цикла статей про Celery. Первая часть тут.
Сегодня мы более глубоко разберем работу с Celery. Узнаем как работает Celery Beat внутри, научимся настраивать и создавать периодические задачи. И конечно же коснемся практических вопросов.

Роль Celery Beat проста: это планировщик и он запускает задачи с установленными интервалами. Эти задачи затем выполняются доступными рабочими узлами.
Для начала нам нужно разобраться с основными компонентами и названиями, которые будут использоваться в дальнейшем.

Читать далее

Простая имитационная модель мобильного робота в ROS и Gazebo

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

В данной работе представлен процесс разработки и симуляции мобильного робота с использованием платформы ROS Noetic и среды Gazebo. Описано создание URDF-модели робота, которая включает в себя детальное описание всех его компонентов. Рассмотрена разработка Docker контейнера, что позволяет обеспечить унификацию и воспроизводимость среды разработки. Также описаны файлы конфигурации для управления моделью в Gazebo и настройка PID контроллеров для оптимизации управления движением. Проект включает в себя формирование собственного мира в Gazebo, что позволяет тестировать робота в контролируемой и настраиваемой среде.

Читать далее

Простая настройка VPS, NGINX и FastAPI: Пошаговое руководство. Часть 1

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

Привет, Хабр! Недавно я писал статью о запуске Telegram-бота на aiogram 3.x с использованием веб-хуков и FastAPI. В той статье я упустил такие важные темы, как создание FastAPI приложения, настройка NGINX, настройка VPS сервера и другие детали, которые могут затруднить работу с вебхуками для новичков.

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

Читать первую часть

Как просто создать aiogram 3.x бота на вебхуках (webhook)?

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

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

На сегодняшний день я уже хорошо знаком с FastAPI, умею настраивать серверы и поднимать NGINX с защищённым сертификатом HTTPS. Для этой статьи мы будем считать, что вы тоже имеете эти навыки. Если будет необходимость, я с удовольствием опишу, как создать базовый шаблон FastAPI и настроить VPS сервер, но сейчас будем считать, что всё уже настроено.

Итак, сервер у нас готов, и теперь мы приступим к созданию бота на aiogram 3.x с использованием вебхуков.

Читать далее

Про то, как мы распиливали монолит на MSA

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

Введение

В наше время, с развитием бизнеса и увеличением объемов автоматизации и бизнес-процессов, эффективная автоматизация некоторых таких бизнес-процессов становится ключевым фактором успеха для многих компаний. Наша компания не является исключением. По мере роста и развития нашего бизнеса наша CRM-система столкнулась с проблемами медленной работы и увеличения блокировок в базе. Увеличившееся количество бизнес-процессов и интеграций привело к сильной загрузке системы, что начало вызывать блокировки в базе данных и временные остановки процессов внутри компании – ситуация, которую нельзя оставить без изменений.

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

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

Самое начало

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

Читать далее

Машинное обучение с Python и TensorFlow на Windows. Быстрый старт

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

Словосочетание «машинное обучение» становится всё более значимым с каждым годом и проникает во все возможные сферы жизни, а с появлением в открытом доступе таких нейронных сетей как Chat GPT [1] интерес к машинному обучению стал высок как никогда. Но при этом многих отпугивает сложность создания своих систем на основе машинного обучения, потому что нужно одновременного использовать и настраивать много разных инструментов разработки.

Поэтому я хочу представить вашему вниманию максимально простую инструкцию для быстрого погружения в мир машинного обучения. Инструкция ориентирована в первую очередь на начинающих программистов, мы будем применять Python 3 [2] с библиотекой TensorFlow [3]. Это лучший выбор для начинающих из-за простоты языка и большого сообщества разработчиков, использующих TensorFlow.

Читать далее