Forwarded from Библиотека программиста | программирование, кодинг, разработка
🤖📄 ChatGPT: эффективная суммаризация с помощью LLM
В этой статье разберём суммаризацию с помощью LLM на примере обработки отзывов в e-commerce.
🔗Читать статью
🔗Зеркало
В этой статье разберём суммаризацию с помощью LLM на примере обработки отзывов в e-commerce.
🔗Читать статью
🔗Зеркало
👍2
Можно ли создать словарь с упорядоченным набором ключей в Python ниже 3.7?
Начиная с версии Python 3.7, порядок вставки ключей сохраняется, и вы можете создать словарь с упорядоченным набором ключей.
Чтобы создать такой словарь на версиях ниже чем 3.7, вы можете использовать collections.OrderedDict.
collections.OrderedDict сохраняет порядок добавления элементов, а также предоставляет два дополнительных метода:
— .popitem() удаляет элемент с начала или конца OrderedDict;
— .move_to_end() перемещает элемент в начало или конец OrderedDict.
#вопросы_с_собеседований
#вопросы_с_собеседований
👍10❤4
mix-in
mix-in — это паттерн проектирования в ООП, когда в цепочку наследования добавляется небольшой класс-помощник. Основная идея mix-in заключается в том, что можно создать класс с определенным функционалом и потом использовать его методы в других классах. Таким образом, mix-in — это способ расширения функциональности классов без явного наследования.
В этом примере мы создали класс Mixin, который содержит метод mixin_method. Затем мы создали класс MyClass, который наследуется от Mixin и содержит свой метод my_method. Объект obj создан на основе класса MyClass и вызывает метод mixin_method, который определен в Mixin.
#код
mix-in — это паттерн проектирования в ООП, когда в цепочку наследования добавляется небольшой класс-помощник. Основная идея mix-in заключается в том, что можно создать класс с определенным функционалом и потом использовать его методы в других классах. Таким образом, mix-in — это способ расширения функциональности классов без явного наследования.
В этом примере мы создали класс Mixin, который содержит метод mixin_method. Затем мы создали класс MyClass, который наследуется от Mixin и содержит свой метод my_method. Объект obj создан на основе класса MyClass и вызывает метод mixin_method, который определен в Mixin.
#код
👍25❤2
Библиотека питониста | Python, Django, Flask pinned «Самые полезные каналы для программистов в одной подборке! Сохраняйте себе, чтобы не потерять 💾 🔥Для всех Библиотека программиста — новости, статьи, досуг, фундаментальные темы Книги для программистов IT-мемы ☕️Java Библиотека джависта — полезные статьи…»
Фильтры в Django: filter(A, B) vsfilter(A).filter(B)
Расширенное погружение в Django ORM, как он обрабатывает соединения и что это значит для вашего кода.
Читать статью
Расширенное погружение в Django ORM, как он обрабатывает соединения и что это значит для вашего кода.
Читать статью
Forwarded from Библиотека программиста | программирование, кодинг, разработка
💬🦙 LlamaIndex: создаем чат-бота без боли и страданий. Часть 3
Завершаем исследование фреймворка LlamaIndex. В этой части разбираемся с ретриверами, которые обеспечивают различные способы извлечения релевантного контекста из индексов документов.
🔗 Читать статью
🔗 Зеркало
Завершаем исследование фреймворка LlamaIndex. В этой части разбираемся с ретриверами, которые обеспечивают различные способы извлечения релевантного контекста из индексов документов.
🔗 Читать статью
🔗 Зеркало
👍6
Очередной #дайджест по Python:
🐍 Построение распределенной системы очередей сообщений с RabbitMQ и Python
Распределенные системы — это важная составляющая современных вычислений. Они позволяют нам создавать приложения и сервисы, способные обрабатывать огромные объемы данных, обеспечивать высокую доступность и масштабируемость.
🐍 SymPy и симуляция физических процессов
Физические процессы окружают нас повсюду, и понимание их характеристик и поведения имеет огромное значение в различных областях науки и инженерии.
🐍 Reinforcement learning для оптимизации цен в ритейле
Динамическое ценообразование является современным подходом к ценообразованию в ритейле. Оно напрямую связано с моделированием спроса, что позволяет проводить оптимизацию цен на будущий период.
🐍 Python в помощь инженеру ПТО
В статье приведены некоторые скриптоы на Python для решения вопросов, с которыми иногда пересекается инженер ПТО строительной организации.
🐍 Построение распределенной системы очередей сообщений с RabbitMQ и Python
Распределенные системы — это важная составляющая современных вычислений. Они позволяют нам создавать приложения и сервисы, способные обрабатывать огромные объемы данных, обеспечивать высокую доступность и масштабируемость.
🐍 SymPy и симуляция физических процессов
Физические процессы окружают нас повсюду, и понимание их характеристик и поведения имеет огромное значение в различных областях науки и инженерии.
🐍 Reinforcement learning для оптимизации цен в ритейле
Динамическое ценообразование является современным подходом к ценообразованию в ритейле. Оно напрямую связано с моделированием спроса, что позволяет проводить оптимизацию цен на будущий период.
🐍 Python в помощь инженеру ПТО
В статье приведены некоторые скриптоы на Python для решения вопросов, с которыми иногда пересекается инженер ПТО строительной организации.
❤5👍4
Какой фреймворк для работы изучали последний раз?
#интерактив
#интерактив
👍4
Bottleneck
Bottleneck — это библиотека, которая ускоряет работу методов NumPy в 25 раз. Особенно, если массив имеет значения NaN.
В этом примере мы создаём 2D массив NumPy с 1000 строками и 10 столбцами со случайными значениями.
Далее функция move_mean используется для вычисления скользящего среднего для каждой строки в массиве. Параметр window указывает количество значений, которые будут использоваться при вычислении каждого скользящего среднего, а параметр axis указывает ось, вдоль которой будет вычисляться скользящее среднее (в данном случае мы вычисляем его для каждой строки, поэтому устанавливаем axis=1).
#код
Bottleneck — это библиотека, которая ускоряет работу методов NumPy в 25 раз. Особенно, если массив имеет значения NaN.
В этом примере мы создаём 2D массив NumPy с 1000 строками и 10 столбцами со случайными значениями.
Далее функция move_mean используется для вычисления скользящего среднего для каждой строки в массиве. Параметр window указывает количество значений, которые будут использоваться при вычислении каждого скользящего среднего, а параметр axis указывает ось, вдоль которой будет вычисляться скользящее среднее (в данном случае мы вычисляем его для каждой строки, поэтому устанавливаем axis=1).
#код
👍12❤2🥰1
Что делать, если нужно сериализовать данные, которые не поддерживаются стандартным модулем json?
Если нужно сериализовать объекты, которые по умолчанию не поддерживаются модулем json, то есть несколько вариантов:
— Реализовать методы __getattr__ и __setattr__ в классе объекта, чтобы преобразовать его в словарь, который уже можно сериализовать в JSON.
— Использовать декоратор dataclass из модуля dataclasses для автоматической генерации методов сериализации.
— Создать собственный класс-наследник json.JSONEncoder и переопределить метод default(), чтобы указать как сериализовать нестандартные объекты.
— Использовать библиотеку marshmallow для создания схем сериализации/десериализации сложных объектов в JSON.
— Преобразовать объекты в dict или list вручную перед сериализацией с помощью методов объекта или отражения (reflection).
— Использовать другой формат сериализации, например YAML или MessagePack, который может поддерживать произвольные типы.
#вопросы_с_собеседований
Если нужно сериализовать объекты, которые по умолчанию не поддерживаются модулем json, то есть несколько вариантов:
— Реализовать методы __getattr__ и __setattr__ в классе объекта, чтобы преобразовать его в словарь, который уже можно сериализовать в JSON.
— Использовать декоратор dataclass из модуля dataclasses для автоматической генерации методов сериализации.
— Создать собственный класс-наследник json.JSONEncoder и переопределить метод default(), чтобы указать как сериализовать нестандартные объекты.
— Использовать библиотеку marshmallow для создания схем сериализации/десериализации сложных объектов в JSON.
— Преобразовать объекты в dict или list вручную перед сериализацией с помощью методов объекта или отражения (reflection).
— Использовать другой формат сериализации, например YAML или MessagePack, который может поддерживать произвольные типы.
#вопросы_с_собеседований
👍10
Eli5
Библиотека eli5 используется для анализа и интерпретации результатов моделей машинного обучения. Она работает с такими библиотеками, как: Scikit-learn, XGBoost, CatBoost, Keras, lightning и LightGBM.
В этом примере мы загружаем датасет Бостон из библиотеки sklearn, разбиваем его на обучающую и тестовую выборки и строим модель линейной регрессии.
Затем мы используем функцию show_weights из библиотеки eli5 для отображения весов линейной регрессии.
eli5 может помочь понять, какие признаки важны для модели и как они влияют на предсказания. Это может быть полезно для улучшения качества моделей и для объяснения их работы другим людям.
#код
Библиотека eli5 используется для анализа и интерпретации результатов моделей машинного обучения. Она работает с такими библиотеками, как: Scikit-learn, XGBoost, CatBoost, Keras, lightning и LightGBM.
В этом примере мы загружаем датасет Бостон из библиотеки sklearn, разбиваем его на обучающую и тестовую выборки и строим модель линейной регрессии.
Затем мы используем функцию show_weights из библиотеки eli5 для отображения весов линейной регрессии.
eli5 может помочь понять, какие признаки важны для модели и как они влияют на предсказания. Это может быть полезно для улучшения качества моделей и для объяснения их работы другим людям.
#код
👍8❤1
Визуализация процесса релиза CPython
В этом сообщении блога рассказывается, как работает процесс выпуска CPython, и содержится диаграмма, документирующая каждый шаг. Также выявляются точки угроз в цепочке поставок.
Читать статью
В этом сообщении блога рассказывается, как работает процесс выпуска CPython, и содержится диаграмма, документирующая каждый шаг. Также выявляются точки угроз в цепочке поставок.
Читать статью
👍12❤1
Что вы считаете самой большой своей неудачей за всю карьеру?
#интерактив
#интерактив
Emot
Библиотека Emot предназначена для распознавания эмодзи в тексте.
Она может очень пригодиться, когда нам нужно предварительно обработать текстовые данные, чтобы удалить эмотиконы и эмодзи или изучить их влияние на семантику. Функции библиотеки принимают на вход строку и возвращают список словарей.
#код
Библиотека Emot предназначена для распознавания эмодзи в тексте.
Она может очень пригодиться, когда нам нужно предварительно обработать текстовые данные, чтобы удалить эмотиконы и эмодзи или изучить их влияние на семантику. Функции библиотеки принимают на вход строку и возвращают список словарей.
#код
👍16
Очередной #дайджест по Python:
🐍 Python + PIL + Pyrogram = Кастомные эмодзи для Telegram
Как из обычного шрифта, сделать уникальный набор эмозди и добавить его в телеграм.
🐍 S.T.A.R.K. — первый фреймворк для создания голосового ассистента
Если вы когда-либо мечтали создать голосового ассистента, который будет современным, продвинутым и невероятно интуитивным, S.T.A.R.K. — лучшее решение.
🐍 Пишем компилятор C в 500 строках Python
асколько сложна эта задача? Оказалось, что довольно сложна, даже после отказа от достаточно большого количества возможностей.
🐍 Как мы версию Sanic’а повышали
Автор делится интересным опытом мажорного повышения зависимостей в проекте, который свыше пяти лет находится в проде под ежедневной нагрузкой более 2000 RPS.
🐍 Python + PIL + Pyrogram = Кастомные эмодзи для Telegram
Как из обычного шрифта, сделать уникальный набор эмозди и добавить его в телеграм.
🐍 S.T.A.R.K. — первый фреймворк для создания голосового ассистента
Если вы когда-либо мечтали создать голосового ассистента, который будет современным, продвинутым и невероятно интуитивным, S.T.A.R.K. — лучшее решение.
🐍 Пишем компилятор C в 500 строках Python
асколько сложна эта задача? Оказалось, что довольно сложна, даже после отказа от достаточно большого количества возможностей.
🐍 Как мы версию Sanic’а повышали
Автор делится интересным опытом мажорного повышения зависимостей в проекте, который свыше пяти лет находится в проде под ежедневной нагрузкой более 2000 RPS.
👍3
Геттеры и сеттеры
Геттеры и сеттеры — это специальные методы класса, которые используются для управляемого доступа к атрибутам объекта. Они позволяют инкапсулировать реализацию класса и предоставить проверенный интерфейс для манипуляции данными.
— Геттер позволяет получить значение атрибута.
— Сеттер используется для установки значения атрибута.
Преимущества геттеров и сеттеров:
— Контроль доступа к атрибутам класса.
— Валидация данных.
— Возможность добавить дополнительную логику при установке/получении значений.
#код
Геттеры и сеттеры — это специальные методы класса, которые используются для управляемого доступа к атрибутам объекта. Они позволяют инкапсулировать реализацию класса и предоставить проверенный интерфейс для манипуляции данными.
— Геттер позволяет получить значение атрибута.
— Сеттер используется для установки значения атрибута.
Преимущества геттеров и сеттеров:
— Контроль доступа к атрибутам класса.
— Валидация данных.
— Возможность добавить дополнительную логику при установке/получении значений.
#код
👍22😁4🤔3
Операторы in и not: проверка членства
В статье описано, как проверить, присутствует или отсутствует заданное значение в коллекции значений, используя операторы Python in и not in соответственно. Этот тип проверки известен в Python как тест на принадлежность.
Читать статью
В статье описано, как проверить, присутствует или отсутствует заданное значение в коллекции значений, используя операторы Python in и not in соответственно. Этот тип проверки известен в Python как тест на принадлежность.
Читать статью
👍4
optional_return
Функция optional_return в модуле typing используется для определения функций, которые могут возвращать значение или None.
Это позволяет лучше документировать поведение функции и дает подсказки при использовании ее результата, не опасаясь ошибки, если будет возвращен None.
В данном примере функция find_user может вернуть имя пользователя, если оно найдено в списке, или None, если такого имени нет. Благодаря аннотации Optional[str] мы явно указываем, что возвращаемое значение может быть строкой или None.
#код
Функция optional_return в модуле typing используется для определения функций, которые могут возвращать значение или None.
Это позволяет лучше документировать поведение функции и дает подсказки при использовании ее результата, не опасаясь ошибки, если будет возвращен None.
В данном примере функция find_user может вернуть имя пользователя, если оно найдено в списке, или None, если такого имени нет. Благодаря аннотации Optional[str] мы явно указываем, что возвращаемое значение может быть строкой или None.
#код
👍15🔥2
что такое DjangoRESTFramework и для чего используется?
Django REST Framework (DRF) — это популярный toolkit для создания REST API на Python с использованием фреймворка Django.
DRF широко используется для создания REST API среднего и крупного масштаба, которые нуждаются в гибкости, производительности и удобном интерфейсе для клиентов.
Среди основных преимуществ DRF:
— Поддерживает форматы
запросов и ответов: JSON, YAML, Browsable API.
— Интегрируется с основными БД и позволяет быстро создавать сложные запросы.
— Автоматически генерирует интерактивную документацию для API в формате Swagger/OpenAPI.
#вопросы_с_собеседований
Django REST Framework (DRF) — это популярный toolkit для создания REST API на Python с использованием фреймворка Django.
DRF широко используется для создания REST API среднего и крупного масштаба, которые нуждаются в гибкости, производительности и удобном интерфейсе для клиентов.
Среди основных преимуществ DRF:
— Поддерживает форматы
запросов и ответов: JSON, YAML, Browsable API.
— Интегрируется с основными БД и позволяет быстро создавать сложные запросы.
— Автоматически генерирует интерактивную документацию для API в формате Swagger/OpenAPI.
#вопросы_с_собеседований
👍18🔥1
«Библиотека программиста» запустила два новых канала для Python-разработчиков и тех, кто хочет ими стать👨🏫
В них мы:
🔸тренируемся на практических задачах
🔸отвечаем на популярные вопросы с собеседований
🔸проверяем свои знания
Подписывайтесь:
👉Библиотека собеса по Python — тут мы готовимся к интервью
👉Библиотека задач по Python — тут решаем задачи, проходим тесты и изучаем код
В них мы:
🔸тренируемся на практических задачах
🔸отвечаем на популярные вопросы с собеседований
🔸проверяем свои знания
Подписывайтесь:
👉Библиотека собеса по Python — тут мы готовимся к интервью
👉Библиотека задач по Python — тут решаем задачи, проходим тесты и изучаем код
👍6🔥3