Обновить
726.07

Python *

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

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

Python — тестирование с помощью pytest(ч.1)

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

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

Читать далее

Как вкусно приготовить «Сельдерей» (Celery)

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

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

Читать далее

Медведь бухгалтер или эксперимент над личными финансами на python и polars

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

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

Но если вы знаете python и хотя бы раз сталкивались с pandas, для вас финансовая аналитика может показаться куда более интересной.

Читать далее

Интеграция LLM в корпоративные чат-боты: RAG-подход и эксперименты

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

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

Ещё мы расскажем о нашем подходе к использованию LLM, подробно остановимся на методе Retrieval Augmented Generation (RAG) и рассмотрим примеры использования чат-ботов на корпоративных порталах X5.

Эта статья будет полезна разработчикам, которые интересуются внедрением LLM для работы с корпоративными данными. Она основана на нашем выступлении на митапе, но не ограничивается им, а, скорее, дополняет его. 

Читать далее

Как на самом деле определять автора с помощью компьютера?

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

Атрибуция — определение авторства — имеет много применений как в науке, так и в приземленных задачах, например, в судебной практике. Ниже мы будем говорить о текстовой атрибуции, и иногда от того, кто автор текста, зависит судьба крупной суммы денег, иногда — карьера или свобода человека, а иногда людям просто интересно, кто же написал то или иное произведение. Так, с точки зрения науки о литературе, строго говоря, всё равно, является автором «Тихого Дона» Михаил Шолохов или Фёдор Крюков, но общественность этот вопрос волновать не перестанет, наверное, уже никогда.

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

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

Читать далее

Playwright: Лучшая альтернатива Selenium. Первое знакомство

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

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

Материал станет первой частью нового цикла. Если тема вам интересна, с удовольствием продолжу делиться своими знаниями о Playwright.

Читать далее

От текста к краткому изложению: библиотека Sumy

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

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

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

Читать далее

ес-листе с помощью python

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

Если вы работаете в крупном дата-центре и ваша задача заключается в поддержке межсетевых экранов (Cisco ASA), то вы наверняка сталкивались с огромным количеством строк в их конфигурациях. Эти конфигурации могут включать тысячи объектов и правил доступа (Access Lists).

Для выполнения задач аудита вам иногда нужно найти все правила доступа для определённого сервера, например, с IP-адресом A.B.C.D. В других случаях требуется добавить новое правило доступа, но перед этим необходимо убедиться, что уже существует аналогичное правило. Например, если существует группа клиентов, подключающихся к какому-то серверу, вам нужно найти соответствующее правило и добавить нового клиента в эту группу.

Для решения таких задач существуют коммерческие продукты, такие как Algosec, Tufin и др. Однако несколько Python-скриптов могут выполнить эти задачи не менее эффективно. Далее я покажу примеры таких программ на Python.

Напомню, что Python предустановлен в любой версии Linux и доступен бесплатно.

Я разделил процесс на несколько простых шагов:

доступа для определённого сервера,

Книга: «Программирование на Python с помощью GitHub Copilot и ChatGPT.»

Время на прочтение34 мин
Охват и читатели18K
image Привет, Хаброжители!

В наши дни люди пишут компьютерные программы совсем не так, как раньше. Используя GitHub Copilot, можно простым языком описать, что должна делать программа, а искусственный интеллект тут же сгенерирует ее.

Узнайте, как создавать и улучшать программы на Python с помощью ИИ, даже если прежде вы не написали ни строчки компьютерного кода. Сэкономьте время на рутинном программировании и воспользуйтесь услугами ИИ, способного мгновенно воплотить ваши идеи в жизнь. Заодно выучите Python!
Читать дальше →

С какого языка школьнику стоит начать изучать программирование?

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

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

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

Читать далее

Уроки, извлеченные из масштабирования до многотерабайтных датасетов

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

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

Я разделил статью на две части: первая посвящена масштабированию на отдельной машине, вторая — масштабированию на множестве машин. Наша цель — максимизировать доступные ресурсы и как можно быстрее выполнить поставленные задачи.

Читать далее

Рекурсивный отбор признаков. Динамический шаг в танце feature selection

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

В статье рассматривается выбор оптимального шага при рекурсивном отборе признаков (RFE). Предлагаются три подхода: фиксированный шаг, динамический шаг, зависящий от количества признаков, и динамический шаг, основанный на значимости признаков. На основе как искусственно сгенерированных, так и реальных наборов данных проводится анализ эффективности каждого метода, выявляются их преимущества и недостатки. Также внимание уделяется недостаткам текущей реализации RFE в библиотеке Scikit-learn, и предлагаются пути их улучшения, а также креативные подходы к решению задач feature selection.

Читать далее

Деплой сайта в облако за 4 команды в IDE

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

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

Эта статья создана для новичков, которые смогут просто скопировать код и в “два клика” опубликовать сайт.

Читать далее

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

Оптимизация в Python c Kubernetes: кэширование и CDN

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

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

Очень важно не только писать хороший код, но и использовать все возможности инфраструктуры на максимум. Именно с этой целью в этой статье рассмотрим, как правильно использовать инструменты кэширования внутри Kubernetes и как настроить CDN для максимума производительности Python-приложения.

Читать далее

Используем Proxy в Selenium

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

Привет, Хабр. Вряд ли эта статья откроет Америку для прожженных разработчиков "парсеров" или тестировщиков, но должна помочь тем, кто работает с Selenium время от времени.

Если вы иногда занимаетесь автоматизированным сбором информации с веб-ресурсов (т.н. веб-скрапинг или парсинг), то однозначно сталкивались с проблемой, что некоторые ресурсы недоступны из некоторых регионов, по разным причинам. Сейчас этой проблемы стало даже чуточку больше. И для преодоления этого препятствия нам помогают прокси-серверы (промежуточные серверы). Однако, если в части библиотек для работы с запросами использование прокси является очевидным решением, идущим из коробки, то такой инструмент как Selenium очевидного встроенного решения или не имеет, или я не смог его обнаружить. Не смог его обнаружить я, в том числе, и на Хабре, поэтому решил это исправить.

Читать далее

Как построить асинхронное Python-приложение для рассылки уведомлений о событии

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

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

Читать далее

Семантический поиск (homemade)

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

Основой семантического поиска может являться ML задача Sentence Similarity, а если быть еще конкретнее, то это Semantic Textual Similarity. Модели, обученные под эту задачу, способны оценивать насколько близки предложения по своему смыслу. Всё, что нам дальше остается, так это засунуть модель в некоторую поисковую систему...

Но тут давайте по порядку

Python, CryptoAPI и российские криптопровайдеры

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

В статье описывается работа в Python с криптопровайдерами, прежде всего российскими, через CryptoAPI. Особое внимание уделено получению штампа времени - рассмотрено взаимодействие между клиентом и Time-Stamp сервером и формирование запроса в соответствии с Time-Stamp протоколом.

Читать далее

Как я разработал собственную рекомендательную систему вакансий c hh.ru, и почему вам это тоже может пригодиться

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

Недавно, просматривая рекомендации на популярном сайте поиска работы по моему резюме «Senior Python Backend», я заметил, что система предлагает вакансии, весьма «далекие» от моей специализации. Это натолкнуло меня на размышления о том, как можно улучшить процесс подбора вакансий для IT‑специалистов. В результате я решил за два вечера, создать свою собственную рекомендательную систему, которая бы более точно учитывала специфику работы в сфере разработки программного обеспечения.

Читать далее

Автоматизация проверок в Navisworks с помощью Python + визуализация в Power BI

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

В данной статье представляю свое видение процесса автоматического формирования проверок на коллизии в Navisworks для проекта с большим количеством моделей. Метод основан на работе с xml файлами с помощью Python. Также предлагается шаблон Power BI для визуализации отчета по полученным проверкам.

Читать далее