Forwarded from Библиотека программиста | программирование, кодинг, разработка
🤖 Generative AI: как ускорить разработку с помощью Github Copilot и Databricks English SDK
Давайте разберемся, что же могут помощники и SDK, а чего от них ожидать еще рано. Рассмотрим наиболее популярные решения от Github и Databricks: варианты использования и их ограничения. Также поговорим о перспективах профессии AI-инженера.
🔗 Читать статью
🔗 Зеркало
Давайте разберемся, что же могут помощники и SDK, а чего от них ожидать еще рано. Рассмотрим наиболее популярные решения от Github и Databricks: варианты использования и их ограничения. Также поговорим о перспективах профессии AI-инженера.
🔗 Читать статью
🔗 Зеркало
❤2
Преобразования текста в аудио с помощью Python
Для преобразования текста в аудио на Python можно использовать библиотеку gTTS (Google Text-to-Speech).
В данном примере мы используем текст "Привет!» на русском языке, создаем объект gTTS и сохраняем аудиофайл "hello.mp3". Затем мы воспроизводим аудиофайл с помощью утилиты mpg321.
#код
Для преобразования текста в аудио на Python можно использовать библиотеку gTTS (Google Text-to-Speech).
В данном примере мы используем текст "Привет!» на русском языке, создаем объект gTTS и сохраняем аудиофайл "hello.mp3". Затем мы воспроизводим аудиофайл с помощью утилиты mpg321.
#код
👍18❤4
Как обучить миллионы моделей прогнозирования временными сериями
У автора статьи возникла задача еженедельно сделать прогноз на 2-8 недель по паре миллионов временных серий. Причем не просто прогноз, а с кроссвалидацией и выбором наиболее оптимальной модели (ARIMA, нейронная сеть, и т.п.).
Имелось свыше терабайта исходных данных и достаточно сложные алгоритмы трансформации и чистки данных. Чтобы не гонять большие массивы данных по сети, решено было реализовать прототип на одном сервере.
Читать статью
У автора статьи возникла задача еженедельно сделать прогноз на 2-8 недель по паре миллионов временных серий. Причем не просто прогноз, а с кроссвалидацией и выбором наиболее оптимальной модели (ARIMA, нейронная сеть, и т.п.).
Имелось свыше терабайта исходных данных и достаточно сложные алгоритмы трансформации и чистки данных. Чтобы не гонять большие массивы данных по сети, решено было реализовать прототип на одном сервере.
Читать статью
❤5
Как выполняется обработка исключений в Python?
Для обработки исключений Python предоставляет конструкцию из трех слов: try, except и finally.
Синтаксис выглядит примерно так:
try:
# попробовать сделать это
except:
# если блок try не сработал, попробовать это
finally:
# всегда делать это
На картинке представлен упрощенный пример такой конструкции. Здесь блок try терпит неудачу, поскольку мы не можем складывать целые числа со строками. Блок except устанавливает val = 10, а затем блок finally выводит complete.
#вопросы_с_собеседований
Для обработки исключений Python предоставляет конструкцию из трех слов: try, except и finally.
Синтаксис выглядит примерно так:
try:
# попробовать сделать это
except:
# если блок try не сработал, попробовать это
finally:
# всегда делать это
На картинке представлен упрощенный пример такой конструкции. Здесь блок try терпит неудачу, поскольку мы не можем складывать целые числа со строками. Блок except устанавливает val = 10, а затем блок finally выводит complete.
#вопросы_с_собеседований
👍10
👍19🤔7
Расстояние Левенштейна
Расстояние Левенштейна (также известное как редакционное расстояние или расстояние редактирования) в программировании представляет собой метрику, которая измеряет различие между двумя строками в терминах минимального количества редакционных операций (вставок, удалений и замен символов), необходимых для преобразования одной строки в другую.
На практике расстояние Левенштейна может быть использовано для оценки схожести или различия между строками, например, для определения степени схожести в поиске похожих слов, исправления опечаток или сравнения генетических последовательностей.
#код
Расстояние Левенштейна (также известное как редакционное расстояние или расстояние редактирования) в программировании представляет собой метрику, которая измеряет различие между двумя строками в терминах минимального количества редакционных операций (вставок, удалений и замен символов), необходимых для преобразования одной строки в другую.
На практике расстояние Левенштейна может быть использовано для оценки схожести или различия между строками, например, для определения степени схожести в поиске похожих слов, исправления опечаток или сравнения генетических последовательностей.
#код
🔥28❤6👍3🤯2
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
💬🦙 LlamaIndex: создаем чат-бота без боли и страданий. Часть 2
Продолжаем изучать фреймворк для создания AI-ботов. В этой части узнаем про тонкости индексирования собственной базы документов.
🔗Читать статью
Продолжаем изучать фреймворк для создания AI-ботов. В этой части узнаем про тонкости индексирования собственной базы документов.
🔗Читать статью
👍6❤2
Очередной #дайджест по Python:
🐍 Профилирование Python — почему и где тормозит ваш код
Почему скрипт работает так медленно? Какая его часть тормозит? Дело в чтении данных, их обработке или сохранении? Как ускорить исполнение? Действительно ли скрипт вообще медленный? Ответить на все эти вопросы поможет инструмент под названием «профилировщик» (profiler).
🐍 Анализ текстовых данных с использованием тематического моделирования
Анализ текстовых данных становится все более важным в наше время, когда огромные объемы информации генерируются и обмениваются каждую секунду.
🐍 Разбираемся в «базовых» алгоритмах для высоконагруженного проекта
Автор собрал примерный список алгоритмов, которые использует в работе с высоконагруженным проектом с большой кодовой базой.
🐍Использование конечных автоматов с несколькими активными состояниями для автоматизации бизнес-процессов
Необычная статья про слияние теории ведения бизнеса и программирования.
🐍 JSON и XML для новичков
Практическое введение в тему.
🐍 Профилирование Python — почему и где тормозит ваш код
Почему скрипт работает так медленно? Какая его часть тормозит? Дело в чтении данных, их обработке или сохранении? Как ускорить исполнение? Действительно ли скрипт вообще медленный? Ответить на все эти вопросы поможет инструмент под названием «профилировщик» (profiler).
🐍 Анализ текстовых данных с использованием тематического моделирования
Анализ текстовых данных становится все более важным в наше время, когда огромные объемы информации генерируются и обмениваются каждую секунду.
🐍 Разбираемся в «базовых» алгоритмах для высоконагруженного проекта
Автор собрал примерный список алгоритмов, которые использует в работе с высоконагруженным проектом с большой кодовой базой.
🐍Использование конечных автоматов с несколькими активными состояниями для автоматизации бизнес-процессов
Необычная статья про слияние теории ведения бизнеса и программирования.
🐍 JSON и XML для новичков
Практическое введение в тему.
👍12❤4
Через 10 минут начинаем эфир «Собеседование на разработчика: разбор задач и ошибок»
👉 Подключайтесь – https://youtube.com/live/DT2UpJY2rlE?feature=share
Спикер: Алексей Бочкарев | Engineering Manager at FAANG
Что будем обсуждать:
– Комбинаторика и комбинаторные числа: определение и практические примеры
– Основные идеи динамического программирования
– Идеи рекурсии и примеры, включая inorder обход двоичного дерева
– Графы и способы их представления
– Примеры различных типов асимптотической сложности
– Распространенные ошибки в коде, как избегать обращения за границы массива, разыменования нулевого указателя, некорректная логика
🙌🏻 Запись будет опубликована здесь, подписывайтесь – https://t.iss.one/proglib_academy
👉 Подключайтесь – https://youtube.com/live/DT2UpJY2rlE?feature=share
Спикер: Алексей Бочкарев | Engineering Manager at FAANG
Что будем обсуждать:
– Комбинаторика и комбинаторные числа: определение и практические примеры
– Основные идеи динамического программирования
– Идеи рекурсии и примеры, включая inorder обход двоичного дерева
– Графы и способы их представления
– Примеры различных типов асимптотической сложности
– Распространенные ошибки в коде, как избегать обращения за границы массива, разыменования нулевого указателя, некорректная логика
🙌🏻 Запись будет опубликована здесь, подписывайтесь – https://t.iss.one/proglib_academy
❤6👍1
Любите ли вы писать тесты? Или считаете эту работу слишком скучной и бесполезной?
#интерактив
#интерактив
❤6
Изменяем цвет текста в терминале
Colorama — это библиотека для языка программирования Python, которая позволяет использовать ANSI-последовательности для вывода цветного текста в терминале на разных платформах.
Кроме того, можно использовать константы из модуля Style для установки стиля текста (например, жирный или подчеркнутый) и константы из модуля Back для установки цвета фона.
Например, чтобы вывести зеленый текст с помощью Colorama, можно использовать код, приведенный выше.
В этом примере init используется для инициализации библиотеки и обеспечения работы ANSI-последовательностей на Windows, а константа Fore для установки цвета текста.
#код
Colorama — это библиотека для языка программирования Python, которая позволяет использовать ANSI-последовательности для вывода цветного текста в терминале на разных платформах.
Кроме того, можно использовать константы из модуля Style для установки стиля текста (например, жирный или подчеркнутый) и константы из модуля Back для установки цвета фона.
Например, чтобы вывести зеленый текст с помощью Colorama, можно использовать код, приведенный выше.
В этом примере init используется для инициализации библиотеки и обеспечения работы ANSI-последовательностей на Windows, а константа Fore для установки цвета текста.
#код
👍21❤8🔥1😁1
Принципы работы и механизм reference counting?
reference counting (подсчёт ссылок) является одним из методов автоматического управления памятью.
Принцип работы reference counting в Python следующий:
— Каждый объект имеет счетчик ссылок (reference count), который отслеживает количество ссылок на данный объект. Счетчик ссылок инициализируется значением 1 при создании объекта.
— Когда переменная ссылается на объект, счетчик ссылок этого объекта увеличивается на 1.
— Если ссылка на объект удаляется или переназначается, счетчик ссылок уменьшается на 1.
— Когда счетчик ссылок объекта становится равным нулю, он может быть безопасно освобожден из памяти. При этом вызывается деструктор объекта (если он определен).
Reference counting работает быстро, однако, у него есть ограничения, особенно в случае циклических ссылок — когда несколько объектов ссылаются друг на друга и не имеют других активных ссылок. В этом случае, счетчики ссылок таких объектов никогда не достигают нуля, и они не могут быть освобождены с помощью механизма reference counting.
reference counting (подсчёт ссылок) является одним из методов автоматического управления памятью.
Принцип работы reference counting в Python следующий:
— Каждый объект имеет счетчик ссылок (reference count), который отслеживает количество ссылок на данный объект. Счетчик ссылок инициализируется значением 1 при создании объекта.
— Когда переменная ссылается на объект, счетчик ссылок этого объекта увеличивается на 1.
— Если ссылка на объект удаляется или переназначается, счетчик ссылок уменьшается на 1.
— Когда счетчик ссылок объекта становится равным нулю, он может быть безопасно освобожден из памяти. При этом вызывается деструктор объекта (если он определен).
Reference counting работает быстро, однако, у него есть ограничения, особенно в случае циклических ссылок — когда несколько объектов ссылаются друг на друга и не имеют других активных ссылок. В этом случае, счетчики ссылок таких объектов никогда не достигают нуля, и они не могут быть освобождены с помощью механизма reference counting.
❤12👍7
🧮 Большие языковые модели: стоит ли бояться больших калькуляторов?
Разберём, можно ли считать большие языковые модели разумными (и почему ответ — нет).
Читать статью
Разберём, можно ли считать большие языковые модели разумными (и почему ответ — нет).
Читать статью
❤12
Отрицательные индексы
В Python можно использовать отрицательные индексы для обращения к элементам последовательностей (например, строк, списков, кортежей) с конца. Положительные индексы начинаются с 0 для первого элемента, 1 для второго и так далее. Отрицательные индексы начинаются с -1 для последнего элемента, -2 для предпоследнего и так далее.
Использование отрицательных индексов удобно, когда вам нужно обратиться к элементам с конца последовательности без явного вычисления длины.
#код
В Python можно использовать отрицательные индексы для обращения к элементам последовательностей (например, строк, списков, кортежей) с конца. Положительные индексы начинаются с 0 для первого элемента, 1 для второго и так далее. Отрицательные индексы начинаются с -1 для последнего элемента, -2 для предпоследнего и так далее.
Использование отрицательных индексов удобно, когда вам нужно обратиться к элементам с конца последовательности без явного вычисления длины.
#код
❤17👍14🤯1
Часто ли вы прибегаете к помощи нейросетей в работе?
#интерактив
#интерактив
❤10👍3
Распаковка кортежа
Распаковка кортежа — это процесс извлечения отдельных элементов из кортежа и присвоения их переменным. Кортеж представляет собой упорядоченную коллекцию элементов, которые могут быть различных типов. Распаковка позволяет удобно извлекать значения из кортежа и использовать их отдельно.
Распаковка кортежей может быть полезным при работе с функциями, возвращающими несколько значений, а также для обмена значениями переменных без необходимости использовать дополнительные временные переменные.
#код
Распаковка кортежа — это процесс извлечения отдельных элементов из кортежа и присвоения их переменным. Кортеж представляет собой упорядоченную коллекцию элементов, которые могут быть различных типов. Распаковка позволяет удобно извлекать значения из кортежа и использовать их отдельно.
Распаковка кортежей может быть полезным при работе с функциями, возвращающими несколько значений, а также для обмена значениями переменных без необходимости использовать дополнительные временные переменные.
#код
❤16👍11
- 35% на все курсы Proglib Academy
Дада, распродажа не просто так стартует в день знаний😉
🌟 Математика для Data Science – 19 490 рублей29 990 рублей
🌟 Алгоритмы и структуры данных – 23 390 рублей35 990 рублей
Переходите, активируйте пробную версию и начинайте учиться уже сейчас!
🔥 А еще вы можете активировать бесплатную демо-версию любого курса – https://proglib.io/w/e68e7e0b
А также посмотреть вебинары на интересующие вас темы 🙌🏻
Дада, распродажа не просто так стартует в день знаний😉
🌟 Математика для Data Science – 19 490 рублей
🌟 Алгоритмы и структуры данных – 23 390 рублей
Переходите, активируйте пробную версию и начинайте учиться уже сейчас!
🔥 А еще вы можете активировать бесплатную демо-версию любого курса – https://proglib.io/w/e68e7e0b
А также посмотреть вебинары на интересующие вас темы 🙌🏻
❤12🔥1
Очередной #дайджест по Python:
🐍 Создание DSL на основе Python
Как с помощью Python можно создать свой собственный язык программирования.
🐍Генерация паспортных данных для обучения моделей
При разработке «распознавателя» паспортов без достаточного количества реальных образцов возникла необходимость генерации паспортных данных и соответствующих им изображений отдельных полей (серия/номер, дата выдачи паспорта и т.д).
🐍 Анализ музыкальных предпочтений с использованием аудиоаналитики на Python
Сегодня музыкальные платформы и сервисы предоставляют нам огромный выбор композиций, а важную роль в этом процессе играют технологии аудиоаналитики.
🐍 Классификация грибов методами ML
Автор рассказывает о том, о том, как обучал различные модели машинного обучения отличать съедобные грибы от несъедобных, с какими сложностями столкнулся в процессе и какие интересные наблюдения про грибы и ML открыл по пути.
🐍 Создание DSL на основе Python
Как с помощью Python можно создать свой собственный язык программирования.
🐍Генерация паспортных данных для обучения моделей
При разработке «распознавателя» паспортов без достаточного количества реальных образцов возникла необходимость генерации паспортных данных и соответствующих им изображений отдельных полей (серия/номер, дата выдачи паспорта и т.д).
🐍 Анализ музыкальных предпочтений с использованием аудиоаналитики на Python
Сегодня музыкальные платформы и сервисы предоставляют нам огромный выбор композиций, а важную роль в этом процессе играют технологии аудиоаналитики.
🐍 Классификация грибов методами ML
Автор рассказывает о том, о том, как обучал различные модели машинного обучения отличать съедобные грибы от несъедобных, с какими сложностями столкнулся в процессе и какие интересные наблюдения про грибы и ML открыл по пути.
❤15👍8🔥1
Тернарный оператор
Тернарный оператор — это синтаксическая конструкция в Python, которая позволяет вам создавать более компактные условные выражения.
Тернарный оператор может быть удобным способом заменить простые if-else выражения, когда вам нужно быстро присвоить значение в зависимости от условия. Однако следует помнить, что слишком сложные выражения в тернарной форме могут ухудшить читаемость кода, поэтому стоит использовать их с умом.
#код
Тернарный оператор — это синтаксическая конструкция в Python, которая позволяет вам создавать более компактные условные выражения.
Тернарный оператор может быть удобным способом заменить простые if-else выражения, когда вам нужно быстро присвоить значение в зависимости от условия. Однако следует помнить, что слишком сложные выражения в тернарной форме могут ухудшить читаемость кода, поэтому стоит использовать их с умом.
#код
👍33❤1