Forwarded from Machinelearning
🔎 Google выпустила EmbeddingGemma 2: мультимодальный поиск прямо на устройстве
Модель переводит текст, код, изображения, видео и аудио в единое векторное пространство. Например, позволяет найти нужный снимок по текстовому описанию.
Всего 740 млн параметров:
• 270 млн для текста;
• 170 млн для изображений;
• 300 млн для аудио.
Нужные модули можно подключать отдельно. В оптимизированном запуске на Pixel 11 Pro полная модель использует около 567 МБ активной RAM, текстовая часть около 191 МБ.
Лицензия Apache 2.0 допускает коммерческое использование. Практическое применение: локальный поиск по документам и медиа без отправки данных в облако.
https://deepmind.google/models/gemma/embeddinggemma/
@ai_machinelearning_big_data
#Gemma #Google
Модель переводит текст, код, изображения, видео и аудио в единое векторное пространство. Например, позволяет найти нужный снимок по текстовому описанию.
Всего 740 млн параметров:
• 270 млн для текста;
• 170 млн для изображений;
• 300 млн для аудио.
Нужные модули можно подключать отдельно. В оптимизированном запуске на Pixel 11 Pro полная модель использует около 567 МБ активной RAM, текстовая часть около 191 МБ.
Лицензия Apache 2.0 допускает коммерческое использование. Практическое применение: локальный поиск по документам и медиа без отправки данных в облако.
https://deepmind.google/models/gemma/embeddinggemma/
@ai_machinelearning_big_data
#Gemma #Google
👍7👏3
🔥 Бесплатный курс по Claude Code на русском: от установки до команды агентов
На GitHub выложили Claude Code PRO Course, бесплатный практический курс по Claude Code на русском языке. Он ведёт от первого запуска до настройки многоагентной работы в команде.
Внутри 12 модулей в четырёх уровнях сложности: основы, рабочий процесс, расширения и масштабирование. Сначала установка, промптинг, память проекта через CLAUDE.md, настройки и права доступа. Потом профессиональный рабочий процесс, скиллы и слэш-команды, сабагенты и хуки.
Дальше идут MCP, плагины и маркетплейсы, а в конце headless-режим, CI и GitHub Actions плюс продвинутые техники. Основной упор сделан на управление контекстом, разработку через тесты и автоматизацию через конфигурацию как код.
Теорией курс не ограничивается: есть 8 практических лабораторных, готовый стартовый набор, библиотека промптов и пример собственного плагина. Лицензия MIT.
https://github.com/justxor/claude-code-pro-course
На GitHub выложили Claude Code PRO Course, бесплатный практический курс по Claude Code на русском языке. Он ведёт от первого запуска до настройки многоагентной работы в команде.
Внутри 12 модулей в четырёх уровнях сложности: основы, рабочий процесс, расширения и масштабирование. Сначала установка, промптинг, память проекта через CLAUDE.md, настройки и права доступа. Потом профессиональный рабочий процесс, скиллы и слэш-команды, сабагенты и хуки.
Дальше идут MCP, плагины и маркетплейсы, а в конце headless-режим, CI и GitHub Actions плюс продвинутые техники. Основной упор сделан на управление контекстом, разработку через тесты и автоматизацию через конфигурацию как код.
Теорией курс не ограничивается: есть 8 практических лабораторных, готовый стартовый набор, библиотека промптов и пример собственного плагина. Лицензия MIT.
https://github.com/justxor/claude-code-pro-course
👍5❤2🔥1
Forwarded from Python/ django
Вышел Python 3.15: ленивые импорты, frozendict, UTF-8 по умолчанию и JIT, который наконец ускоряет код
Состоялся стабильный релиз Python 3.15. Над ним поработали 1012 контрибьюторов, в версию вошло 5643 коммита.
Самое заметное для повседневной работы это явные ленивые импорты из PEP 810. Тяжёлые модули вроде torch или transformers теперь можно подгружать только в момент первого обращения, и CLI-утилиты и скрипты стартуют заметно быстрее. Ещё одно долгожданное изменение: UTF-8 наконец стал кодировкой по умолчанию на всех платформах, так что сюрпризы с open() на Windows уходят в прошлое.
В языке появились встроенные типы frozendict и sentinel, а в генераторах списков и словарей теперь работает распаковка через звёздочку. Сообщения об ошибках снова стали понятнее.
Экспериментальный JIT серьёзно доработали. На x86-64 Linux он даёт в среднем 7-8% прироста к стандартному интерпретатору, на Apple Silicon 11-12%. Официальные сборки под Windows перешли на tail-calling интерпретатор, а установщик для macOS по умолчанию ставит поддержку free-threading. Для сборок без GIL появился стабильный ABI, это откроет дорогу бинарным пакетам под многопоточный Python.
Для тех, кто ищет узкие места в коде, в стандартной библиотеке появился отдельный пакет profiling и высокочастотный сэмплирующий профайлер Tachyon. Указатели фреймов теперь включены по умолчанию, и системные профайлеры видят Python-стек без танцев с бубном.
В типизации добавили TypedDict с типизированными дополнительными ключами, TypeForm и disjoint bases.
Один нюанс для маководов: на macOS 27.0 приложения на tkinter, включая IDLE, могут зависать при открытии диалогов. Если работаете с Tk, с обновлением системы лучше подождать.
Бонус от Барри Уорсо: текстовый квест whatsnewt, где каждая из 18 головоломок решается реальной фичей 3.15. Запускается командой uvx --python 3.15 whatsnewt.
https://discuss.python.org/t/python-3-15-0-final-is-here/109415
Состоялся стабильный релиз Python 3.15. Над ним поработали 1012 контрибьюторов, в версию вошло 5643 коммита.
Самое заметное для повседневной работы это явные ленивые импорты из PEP 810. Тяжёлые модули вроде torch или transformers теперь можно подгружать только в момент первого обращения, и CLI-утилиты и скрипты стартуют заметно быстрее. Ещё одно долгожданное изменение: UTF-8 наконец стал кодировкой по умолчанию на всех платформах, так что сюрпризы с open() на Windows уходят в прошлое.
В языке появились встроенные типы frozendict и sentinel, а в генераторах списков и словарей теперь работает распаковка через звёздочку. Сообщения об ошибках снова стали понятнее.
Экспериментальный JIT серьёзно доработали. На x86-64 Linux он даёт в среднем 7-8% прироста к стандартному интерпретатору, на Apple Silicon 11-12%. Официальные сборки под Windows перешли на tail-calling интерпретатор, а установщик для macOS по умолчанию ставит поддержку free-threading. Для сборок без GIL появился стабильный ABI, это откроет дорогу бинарным пакетам под многопоточный Python.
Для тех, кто ищет узкие места в коде, в стандартной библиотеке появился отдельный пакет profiling и высокочастотный сэмплирующий профайлер Tachyon. Указатели фреймов теперь включены по умолчанию, и системные профайлеры видят Python-стек без танцев с бубном.
В типизации добавили TypedDict с типизированными дополнительными ключами, TypeForm и disjoint bases.
Один нюанс для маководов: на macOS 27.0 приложения на tkinter, включая IDLE, могут зависать при открытии диалогов. Если работаете с Tk, с обновлением системы лучше подождать.
Бонус от Барри Уорсо: текстовый квест whatsnewt, где каждая из 18 головоломок решается реальной фичей 3.15. Запускается командой uvx --python 3.15 whatsnewt.
https://discuss.python.org/t/python-3-15-0-final-is-here/109415
🔥8❤6👍1
🐍 Ротация прокси в Python может обходиться без списка IP и `random.choice()`
Если провайдер поддерживает ротацию на шлюзе, скрипт обращается к одному адресу. Выходные IP меняет сам сервис по выбранному режиму. Именно такой подход разобран в статье.
Минимальный пример проверки:
Нюанс: ключ
Ещё важно различать два режима:
• Ротация меняет выходной IP согласно настройкам провайдера.
• Sticky session закрепляет IP на некоторое время.
При этом
https://unlimitedresidentialproxy.com/blog/how-to-rotate-proxies-python
Если провайдер поддерживает ротацию на шлюзе, скрипт обращается к одному адресу. Выходные IP меняет сам сервис по выбранному режиму. Именно такой подход разобран в статье.
Минимальный пример проверки:
import os
import requests
# PROXY_URL: адрес шлюза с учётными данными
proxy = os.environ["PROXY_URL"]
proxies = {"http": proxy, "https": proxy}
for _ in range(5):
r = requests.get(
"https://httpbin.org/ip",
proxies=proxies,
timeout=(5, 15),
)
r.raise_for_status()
print(r.json()["origin"])
Нюанс: ключ
"https" обозначает протокол целевого сайта. Сам адрес прокси при этом может начинаться с http://. Это корректная настройка для HTTP-прокси.Ещё важно различать два режима:
• Ротация меняет выходной IP согласно настройкам провайдера.
• Sticky session закрепляет IP на некоторое время.
При этом
requests.Session() сохраняет cookies и переиспользует соединения, но самостоятельно IP не меняет. Политику ротации нужно проверять у провайдера.https://unlimitedresidentialproxy.com/blog/how-to-rotate-proxies-python
❤1
Media is too big
VIEW IN TELEGRAM
Что нового в Python 3.15? Ленивые импорты, frozendict и JIT быстрее на 12%
Python 3.15 вышел, и в нём много полезного для разработчиков. Ленивые импорты ускоряют запуск, появились frozendict и sentinel, UTF-8 теперь включён по умолчанию, а JIT ускоряет код на 7–12%. Ещё в релизе профилировщик Tachyon, который подключается к живому процессу, новые возможности typing и стабильный ABI для сборок без GIL. Перед обновлением проверьте зависимости и тесты.
Полный разбор: https://uproger.com/python-3-15-chto-novogo/
Видео: https://uproger.com/python-3-15-chto-novogo/
#python #python315 #программирование #разработка #jit
Python 3.15 вышел, и в нём много полезного для разработчиков. Ленивые импорты ускоряют запуск, появились frozendict и sentinel, UTF-8 теперь включён по умолчанию, а JIT ускоряет код на 7–12%. Ещё в релизе профилировщик Tachyon, который подключается к живому процессу, новые возможности typing и стабильный ABI для сборок без GIL. Перед обновлением проверьте зависимости и тесты.
Полный разбор: https://uproger.com/python-3-15-chto-novogo/
Видео: https://uproger.com/python-3-15-chto-novogo/
#python #python315 #программирование #разработка #jit
❤3👍3
Трюк Карпаты сработал: локальная LLM на Mac M5 выдает 117 токенов в секунду
Как open-source движок Uzu от Mirai обходит потолок пропускной способности памяти на Apple M5 и разгоняет Qwen3.5 9B с 22 до 117 токенов в секунду: квантизация, спекулятивный декодинг, Weaver и бенчмарк против llama.cpp и MLX.
https://uproger.com/uzu-uskorenie-lokalnyh-llm-apple-m5/
Как open-source движок Uzu от Mirai обходит потолок пропускной способности памяти на Apple M5 и разгоняет Qwen3.5 9B с 22 до 117 токенов в секунду: квантизация, спекулятивный декодинг, Weaver и бенчмарк против llama.cpp и MLX.
https://uproger.com/uzu-uskorenie-lokalnyh-llm-apple-m5/
👍5❤3🔥1
👁👁 Тестовый собес на Python с разработчиком из Яндекса
[+ ответы на 50 сложных вопросов в подарок]
14 октября в 19:00 (МСК) приходи посмотреть открытое онлайн-собеседование на Python-разработчика.
Интервьюер: Хачатур Саркисян – разработчик из Яндекса, работает с высоконагруженными сервисами, Kafka и микросервисной архитектурой.
На эфире нет сценария ↓
Кандидат – случайный разработчик, который не знает вопросов заранее.
На обычном собесе ты не знаешь, что думает интервьюер, пока не придёт фидбек. На этом эфире Хачатур проговорит всё вслух:
А в конце ответит на твои вопросы.
Эфир проходит в рамках менторской программы от ШОРТКАТ для разработчиков, которые хотят повысить грейд, ЗП и прокачать скиллы!
Участие бесплатное 🔥
🎁 За регистрацию дарим файл с ответами на 50 сложных вопросов с Python-собеседований.
Зарегаться на эфир и забрать подарок можно в боте → @shortcut_py_bot
Реклама.
О рекламодателе.
[+ ответы на 50 сложных вопросов в подарок]
14 октября в 19:00 (МСК) приходи посмотреть открытое онлайн-собеседование на Python-разработчика.
Интервьюер: Хачатур Саркисян – разработчик из Яндекса, работает с высоконагруженными сервисами, Kafka и микросервисной архитектурой.
На эфире нет сценария ↓
Кандидат – случайный разработчик, который не знает вопросов заранее.
На обычном собесе ты не знаешь, что думает интервьюер, пока не придёт фидбек. На этом эфире Хачатур проговорит всё вслух:
— какие вопросы и задачи он даёт кандидатам в бигтехе;
— что в каждом ответе засчитал бы, а что нет – и почему.
А в конце ответит на твои вопросы.
Эфир проходит в рамках менторской программы от ШОРТКАТ для разработчиков, которые хотят повысить грейд, ЗП и прокачать скиллы!
Участие бесплатное 🔥
🎁 За регистрацию дарим файл с ответами на 50 сложных вопросов с Python-собеседований.
Зарегаться на эфир и забрать подарок можно в боте → @shortcut_py_bot
Реклама.
О рекламодателе.
❤1
🐍 Python умеет сравнивать числа как в математике
Проверку диапазона можно записать короче:
Это цепочка сравнений: оба условия должны выполняться. Границы включаются привычным способом:
💡 Есть полезная тонкость: в
Проверку диапазона можно записать короче:
# Вместо
if 60 < heart_rate and heart_rate < 100:
print("В пределах диапазона")
# Пишем
if 60 < heart_rate < 100:
print("В пределах диапазона")
Это цепочка сравнений: оба условия должны выполняться. Границы включаются привычным способом:
0 <= score <= 100
💡 Есть полезная тонкость: в
60 < get_value() < 100 функция вызывается только один раз. А если повторить вызов по обе стороны and, она может выполниться дважды.❤5🤯5🔥1
Python разбирает JSON на 66 ГБ/с: GIL больше не мешает
Свежий бенчмарк: 7,6 ГБ JSON обрабатываются в одном процессе Python примерно за 0,12 секунды. Это около 66 ГБ/с. Ещё пару лет назад такую цифру рядом со словом Python приняли бы за опечатку.
https://uproger.com/python-json-66-gbs-fastsimdjson/
Свежий бенчмарк: 7,6 ГБ JSON обрабатываются в одном процессе Python примерно за 0,12 секунды. Это около 66 ГБ/с. Ещё пару лет назад такую цифру рядом со словом Python приняли бы за опечатку.
https://uproger.com/python-json-66-gbs-fastsimdjson/
👍10❤2
🚩 Мок-собеседование с Senior Python разработчиком за 90₽ вместо 7 900₽
Да! Это не скам – собес правда стоит 90₽ 😎
Мок полезен, если ты ищешь работу, хочешь подняться в грейде или прокачать скиллы
Что внутри:
Дальше можно разбирать фидбек самостоятельно или с ментором. С ментором быстрее: он поможет закрыть пробелы и выйти на новый грейд и более высокую ЗП
МОК проходит в рамках менторской программы от ШОРТКАТ. Открыли всего 50 мест!
Для записи переходи в бота → @shortcut_py_bot
Реклама.
О рекламодателе.
Да! Это не скам – собес правда стоит 90₽ 😎
Мок полезен, если ты ищешь работу, хочешь подняться в грейде или прокачать скиллы
Что внутри:
📂 60 минут настоящего собеса с вопросами и задачами, которые реально задают
📂 подробный фидбек с разбором: что прозвучало сильно, а что стоит подтянуть
Дальше можно разбирать фидбек самостоятельно или с ментором. С ментором быстрее: он поможет закрыть пробелы и выйти на новый грейд и более высокую ЗП
МОК проходит в рамках менторской программы от ШОРТКАТ. Открыли всего 50 мест!
Для записи переходи в бота → @shortcut_py_bot
Реклама.
О рекламодателе.
🌚1
Media is too big
VIEW IN TELEGRAM
Python subprocess не умирает после отмены запроса: как остановить его правильно
Обрыв стрима не завершает подпроцесс: Python продолжает грузить CPU, хотя клиент давно ушёл. Запускайте процесс в отдельной группе (start_new_session=True) и отправляйте os.killpg(SIGTERM) всей группе, а если процесс завис, добивайте SIGKILL и вызывайте await proc.wait().
https://www.youtube.com/shorts/no9DlVbBGdY
Обрыв стрима не завершает подпроцесс: Python продолжает грузить CPU, хотя клиент давно ушёл. Запускайте процесс в отдельной группе (start_new_session=True) и отправляйте os.killpg(SIGTERM) всей группе, а если процесс завис, добивайте SIGKILL и вызывайте await proc.wait().
https://www.youtube.com/shorts/no9DlVbBGdY