PythonTalk
4.81K subscribers
1.52K photos
49 videos
6 files
1.34K links
Привет, меня зовут Олег Булыгин 👋

🐍 Здесь я делюсь полезной информацией для тех, кто пишет код на Python: от разработки до Data Science.

По вопросам: @obulygin91
Download Telegram
Вчерашние громкие релизы 🤖

1️⃣ Mistral дропнули свою долгожданную reasoning-модель — Magistral

Выкатили сразу две версии:
🟢 Magistral Small — опенсорсная модель на 24B параметров. Уже лежит на Hugging Face, можно пробовать развернуть локально, если у вас завалялась какая-нибудь RTX 4090. Поддерживает русский и обещает окно в 128k.
🟠 Magistral Medium — более мощная, но закрытая enterprise-версия. Погонять бесплатно её можно в Le Chat.

Получилось, скажем так, неоднозначно 🌚.

Судя по первым тестам Magistral Medium не дотягивает даже до январской DeepSeek R1, не говоря уже о свежих моделях. При этом её API стоит дороже, чем у моделей, которые на голову выше. А их опенсорсная Small версия уступает даже Qwen 3 8B.

Из хорошего: они опубликовали детальный отчёт о тренировке и хвастаются, что в Le Chat их модель работает в 10 раз быстрее конкурентов. Что ж, скорость — это, конечно, хорошо, но хотелось бы и ума побольше.

2️⃣ o3-pro от OpenAI

А пока одни догоняют, другие укрепляют лидерство. OpenAI выкатили o3-pro — свою cсамую умную и надёжную модель на сегодняшний день.

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


Особенно отмечают буст в задачах программирования, математике и науке. В OpenAI утверждают, что в экспертных слепых тестах o3-pro рвёт обычную o3 по всем фронтам, особенно в точности и следовании инструкциям.

o3-pro уже доступна для подписчиков Pro и Team (с вас 200 баксов!), а также в API.

Синхронно с релизом Сэм Альтман опубликовал эссе, в котором утверждает, что точка невозврата в развитии ИИ пройдена. По его прогнозам, мир ждёт изобилие интеллекта и энергии, а мы будем адаптироваться к тому, что наши сегодняшние "важные" задачи через 10 лет будут казаться "ненастоящей работой". Примерно как фермер из прошлого посмотрел бы на наш скрам и дейли-митинги. В 2026 году модельки будут делать научные открытия, а в 2027 появятся роботы, которые будут нормально функционировать в реальном мире.
👍72🔥1
👍4🔥1
Что получим при запуске кода?
Anonymous Quiz
9%
3 15
9%
3 None 15
34%
3 14 15
23%
SyntaxError
26%
3 (14, 15)
👍4🔥1🤯1
Иди в айти, без работы не останешься? 🌚

Тут Федеральный резервный банк Нью-Йорка выкатил свежий рейтинг специальностей с самой высокой безработицей в США.

Специалисты по Computer Engineering и Computer Science в топе на 3 и 7 местах соответственно. Медианные зарплаты при этом достаточно высокие ($122/115к), но даже у журналистов, экономистов и историков безработица ниже.

Интересно, а у нас как сейчас дела по безработице экономистов и юристов сравнительно с айтишниками 🤔

#рынок_труда | 🍩 Поддержать канал 🫶
🤔7👍2🔥1
🔢 Примеры использования enumerate в Python

Этой подборке не хватает парочки примеров, поэтому вам нужно придумать ещё что-то интересное 👇🏻
👍13🔥4👏1
🚨 НА СОБЕСАХ ТЕПЕРЬ ТРЕБУЮТ ИСПОЛЬЗОВАТЬ AI

Компания Canva (та, что делает графический онлайн-редактор) теперь требует от кандидатов на роли разрабов юзать AI-помощников типа Copilot или Claude прямо во время технического интервью.

Раньше, как и многие, они требовали писать код исключительно силой человеческого мозга. А потом очнулись и поняли, что почти половина их инженеров и так ежедневно использует AI-ассистентов. Запрещать на собеседовании инструмент, который потом станет частью работы, — лицемерие и бред.

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

И вот что выяснилось в ходе пилота:

Кандидаты с минимальным опытом в AI часто проваливались. Не потому, что не умели программировать, а потому что не обладали достаточной экспертизой, чтобы направлять ИИ и видеть, когда он генерит неоптимальные решения.


Это и есть новый водораздел между инженером и «копипастером с ChatGPT». Умение не просто получить ответ, а правильно поставить задачу, верифицировать и доработать результат – вот что теперь проверяют.

Добро пожаловать в реальность 🌚
👍13🔥84😢2👏1😁1🤔1
На GitHub появился миллиардный репозиторий! 😱

Как думаете, там что-то полезное или очередное 💩?

Правильно, там просто readme.md со строкой shit.

Репо очень популярен, у него 2к звёзд, 177 issues, 67 пул-реквестов 🤡

Предлагайте идеи, как сделать проект более популярным за меньшее время 🌝
😁9🙉2😢1
Привет, меня зовут Олег Булыгин 👋🏻

🐍 Я эксперт по Python и Data Science. В 2020 году ушёл из найма, сейчас реализую собственные проекты, занимаюсь IT-образованием и консультированием.

👨‍💻 Опыт в образовании. В IT-образовании с 2017 года. За это время провел более 1500 лекций и вебинаров, обучил тысячи студентов, многие из которых сейчас работают в ведущих IT-компаниях. Создаю авторские курсы, консультирую крупные компании по вопросам Data Science и участвую в разработке образовательных программ для университетов и онлайн-школ.

Сотрудничаю с такими образовательными площадками, как Нетология, Яндекс Практикум, SkillFactory, MathsHub, преподаю на магистерский программах ВУЗов.

🎯 Стремлюсь сделать обучение качественным и честным для всех, кто хочет развиваться в IT-сфере.

🧠 Если тебя интересует программирование на Python, data science и другие смежные темы в IT, то ты найдёшь на канале что-то полезное для себя 🙂

🗣 Где общаемся? В комментах под постами и в чатике. Обсуждать можно абсолютно любые темы.
Крайне приветствуется обмен опытом. Задавайте вопросы, отвечайте на вопросы.
Крайне не приветствуется и будет караться хамское и неуважительное поведение, риторика ненависти в любых проявлениях.

Также канал есть в:
〰️ Сетке
〰️ Дзен

Всем добра 🖖🏻
🔥238👍4👏1🤝111
Хранить эмбеддинги в mp4 файле? Звучит как полная дичь? Возможно. Но это работает.

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

Что обещают:
👉🏻 Видео как база данных. Вся ваша база знаний — это один .mp4 файл, который можно просто скопировать.
👉🏻 Никаких серверов и RAM. Работает оффлайн, не требует GPU и сложной инфраструктуры.
👉🏻 10x сжатие. Видеокодеки сжимают данные эффективнее, чем многие другие методы.
👉🏻 Быстрый семантический поиск. Находит нужную инфу по смыслу с субсекундным откликом.
👉🏻 Поддержка LLM. Прикручивается к OpenAI, Anthropic или локальным моделям в три строчки кода.

Сама идея хранить данные в видео не нова (привет, попытки использовать YouTube как бесплатное хранилище), но тут ребята добавили слой семантики и сделали это реально удобным.

Главный минус — иммутабельность. Чтобы добавить или удалить данные, нужно пересоздавать весь видеофайл.

Но для read-only архивов, личных баз знаний или учебных материалов, где данные меняются редко, — выглядит как гениальный в своей простоте хак.
👍8🔥61🙏1
Будни большинства вайб-кодеров-джунов. Да, вайб-кодеров пора делить на грейды 🌚
😁224🐳21👏1
This media is not supported in your browser
VIEW IN TELEGRAM
Эффективно работаем с PDF при помощи Dolphin 🐬

Китайцы из ByteDance (это которые TikTok сделали) выкатили open-source инструмент — Dolphin. Это не очередной OCR, а мультимодальная моделька для парсинга документов. Берёт ваш PDF или картинку и разбирает на составные части: текст, таблицы, формулы, изображения, — сохраняя при этом структуру и естественный порядок чтения. На выходе получается не каша, как в большинстве онлайн-конвертеров, а адекватный Markdown или JSON.

📑 Сначала модель анализирует страницу целиком, а потом эффективно и параллельно парсит отдельные элементы. Есть поддержка многостраничных PDF.

👉🏻 Как обычно, всё лежит на GitHub. А демку можно потыкать здесь.
8🔥5👏1
🐍 from exercise import "Судоку-контроль"

Сегодня будем проверять корректность поля для игры в Судоку.

🔢 Условия Корректности Поля Судоку (9x9):
1. 🔹 Строки: В каждой из 9 строк цифры от '1' до '9' могут встречаться не более одного раза. Пустые ячейки (обозначены символом '.') игнорируются.
2. 🔹 Столбцы: В каждом из 9 столбцов цифры от '1' до '9' также встречаются не более одного раза.
3. 🔹 Квадраты 3x3: Каждый из 9 непересекающихся квадратов 3x3 (малых квадратов) должен содержать цифры от '1' до '9' не более одного раза.

❗️ Важно: Поле должно быть корректным по этим правилам, но оно не обязательно должно быть решаемым или полностью заполненным. Мы проверяем только текущее состояние на соответствие правилам.

🎯 Задача:
Написать функцию, например, is_valid_sudoku(board: list[list[str]]) -> bool, которая принимает на вход поле 9x9 (список списков строк) и возвращает True, если поле корректно, и False в противном случае.

Пример 1 (Корректное поле):
board = [
["5","3",".",".","7",".",".",".","."],
["6",".",".","1","9","5",".",".","."],
[".","9","8",".",".",".",".","6","."],
["8",".",".",".","6",".",".",".","3"],
["4",".",".","8",".","3",".",".","1"],
["7",".",".",".","2",".",".",".","6"],
[".","6",".",".",".",".","2","8","."],
[".",".",".","4","1","9",".",".","5"],
[".",".",".",".","8",".",".","7","9"]
]
Результат: True


Пример 2 (Некорректное поле):

board = [
["8","3",".",".","7",".",".",".","."], # <-- Ошибка здесь! '8' уже есть в первом квадрате 3x3
["6",".",".","1","9","5",".",".","."],
[".","9","8",".",".",".",".","6","."], # <-- И здесь '8'
["8",".",".",".","6",".",".",".","3"],
["4",".",".","8",".","3",".",".","1"],
["7",".",".",".","2",".",".",".","6"],
[".","6",".",".",".",".","2","8","."],
[".",".",".","4","1","9",".",".","5"],
[".",".",".",".","8",".",".","7","9"]
]
Результат: False
# Тут '5' в левом верхнем углу первой строки заменена на '8'. Теперь в первом малом квадрате 3x3 есть две '8', что нарушает правило уникальности.


👨🏻‍💻

#задача | ⚡️ Забустить канал 🚀
👍4🔥1👏1
Python Turtle: от простых фигур до фракталов 🐢

Слышали про черепаху? Думаете только для детей?
А вот и нет, это хороший инструмент для оттачивания навыков.

Сможете ли вы нарисовать снежинку? Если нет, читайте статью, в которой мы пройдём путь от базового рисования до создания фрактальных деревьев 🌳 и снежинок Коха ❄️.
👍6🔥52🙏1
✍️ Решения вчерашней задачи

Давайте разберем очень лаконичный способ решения этой задачи:
def is_valid_sudoku_pythonic(board):
res = []
for i, row in enumerate(board):
for j, num in enumerate(row):
if num != '.':
res += [(i, num),
(num, j),
(i//3, j//3, num)]

return len(res) == len(set(res))


💡 Как это работает?
Вместо того чтобы проверять дубликаты на каждом шаге, этот алгоритм сначала собирает все "факты" о поле в один большой список res, а затем одним махом проверяет их на уникальность.

1. Мы проходим по каждой ячейке поля (i, j).
2. Если в ячейке есть число num, мы создаем три кортежа (tuple), которые описывают его положение:
* (i, num): уникально описывает наличие числа в строке. Если в строке i=0 встретится две '5', у нас будет два одинаковых кортежа (0, '5').
* (num, j): уникально описывает наличие числа в столбце. Если в столбце j=1 встретится две '3', у нас будет два одинаковых кортежа ('3', 1).
* (i//3, j//3, num): целочисленное деление // определяет индекс квадрата 3x3 (от 0 до 2 по каждой оси). Если в квадрате (0, 0) встретятся две '8', мы получим два кортежа (0, 0, '8').
3. В конце мы сравниваем длину исходного списка res с длиной set(res). set() оставляет только уникальные элементы. Если длины равны, значит, дубликатов не было ни в строках, ни в столбцах, ни в квадратах. Если длины не равны — где-то был дубликат, и поле некорректно.

⚡️Асимптотическая сложность будет O(1), так как размер поля всегда фиксирован 9x9.

Вот так вот 🤯
🔥5👍32🙏1
MiniMax-M1: когда эффективность важнее размера

Китайцы из MiniMax выкатили MiniMax-M1 — открытую гибридную модель для сложных задач.

Что под капотом:
👉🏻 Контекст 1M токенов. Это в 8 раз больше, чем у DeepSeek R1. Можно скармливать целые книги.
👉🏻 Гибридная архитектура. Смесь из MoE (Mixture-of-Experts) и механизма lightning attention. Если по-простому: модель не задействует все свои 456 млрд параметров сразу, а умно выбирает нужные, экономя ресурсы.
👉🏻 Дикая эффективность. На генерации длинных текстов (100k токенов) жрёт в 4 раза меньше вычислений (FLOPs), чем тот же DeepSeek R1.
👉🏻 Хороша в деле. На сложных задачах по разработке (SWE-bench) и работе с длинным контекстом обходит Qwen3 и DeepSeek R1.

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

Изучать можно на GitHub, а бесплатный чат — здесь.
👍92🔥1👏1