Python/ django
63K subscribers
2.29K photos
145 videos
48 files
3.03K links
по всем вопросам @haarrp

@itchannels_telegram - 🔥 все ит каналы

@ai_machinelearning_big_data -ML

@ArtificialIntelligencedl -AI

@datascienceiot - 📚

@pythonlbooks

РКН: clck.ru/3FmxmM
Download Telegram
Git Cheatsheet - коротко и по делу

Настройка
git config --global user.name "Name" — задать имя
git config --global user.email "email" — задать почту
git config --list — показать настройки

Старт
git init — создать репозиторий
git clone url — клонировать репо

Стейджинг и коммиты
git status — статус
git add . — добавить все изменения
git reset file — убрать из стейджа
git commit -m "msg" — коммит
git commit --amend — исправить последний коммит

Ветки
git branch — список
git branch name — создать
git checkout -b name — создать и перейти
git branch -d name — удалить

Merge и Rebase
git merge branch — слить ветку
git merge --abort — отменить
git rebase branch — перебазирование

История
git log --oneline — компактная история
git log --graph --all — граф
git diff — показать изменения

Откат
git restore file — вернуть файл
git reset --soft HEAD~1 — откатить коммит, сохранить изменения
git reset --hard HEAD~1 — откатить и удалить изменения
git clean -f — удалить лишние файлы

Удалённые репозитории
git remote -v — список
git push origin branch — запушить
git pull — получить изменения
git fetch — только забрать

Теги
git tag — список
git tag name — создать
git push origin --tags — отправить теги

Stash
git stash — сохранить изменения
git stash list — список
git stash apply — применить

Поиск и анализ
git blame file — кто менял строки
git grep "text" — поиск
git bisect — бинарный поиск бага

Продвинутое
git cherry-pick commit — взять коммит
git revert commit — отменить коммит через новый
git submodule add url — добавить сабмодуль

Полезно сохранить под рукой.
Please open Telegram to view this post
VIEW IN TELEGRAM
24👍8🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 PYTHON В DOCKER: УСКОРЯЕМ СБОРКУ!

Если ваш Python-приложение в Docker работает медленно при старте или «греет» CPU, проблема часто в том, что Docker пересобирает зависимости каждый раз.
Хитрый приём: замораживайте зависимости в отдельный слой и используйте .dockerignore, чтобы локальные файлы не ломали кеш.
Так Docker перестаёт пересобирать pip-пакеты и старт проекта ускоряется в разы.


для оптимизации Python-сборки
FROM python:3.12-slim

WORKDIR /app

Слой с зависимостями (кешируется!)

COPY requirements.txt .

RUN pip install --no-cache-dir -r requirements.txt

Теперь копируем код (не ломает кеш pip)

COPY . .

CMD ["python", "main.py"]
9👍6🔥3
🖥 Django 6.0 вышел - крупное обновление фреймворка

Вышел Django 6.0, и это одно из самых насыщенных обновлений за последнее время. Релиз добавляет функциональность, которую разработчики долго закрывали сторонними библиотеками или кастомными решениями.

Что нового и действительно важно:

Поддержка template partials из коробки
Теперь Django умеет частичные шаблоны на уровне фреймворка. Это упрощает структуру HTML, повышает переиспользуемость и делает шаблоны чище и понятнее без лишних include-хаков.

Нативный фреймворк для фоновых задач
В Django появился встроенный механизм для background tasks. Для многих проектов это означает, что Celery или RQ больше не обязательны для базовых задач — отложенные и асинхронные операции можно реализовать стандартными средствами.

Встроенная система Content Security Policy (CSP)
Django 6.0 получил полноценную поддержку CSP. Это серьёзный шаг в сторону безопасности по умолчанию и защита от XSS и других атак без внешних middleware.

Современный email API с нормальной Unicode-поддержкой
Работа с email стала более предсказуемой и дружелюбной к Unicode, что особенно важно для международных проектов и сложных шаблонов писем.

Жизненный цикл версий
Django 5.2 больше не имеет mainstream-поддержки. Разработчикам рекомендуется переходить на 6.0, чтобы получать новые возможности, обновления безопасности и улучшения платформы.

Django продолжает двигаться в сторону «batteries included», но делает это аккуратно и прагматично. Django 6.0 снижает зависимость от внешних библиотек, усиливает безопасность и делает повседневную разработку заметно удобнее.

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

https://www.djangoproject.com/weblog/2025/dec/03/django-60-released/

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2615🔥7😁1
📝 Редактирование PDF с помощью ИИ 🚀

Nano PDF - это CLI инструмент для редактирования PDF-документов с использованием естественных языковых запросов. Он позволяет изменять слайды, добавлять новые и сохранять текстовый слой благодаря OCR. Инструмент использует модель Gemini 3 Pro Image для быстрого и качественного редактирования.

🚀 Основные моменты:
- Редактирование слайдов по текстовым командам
- Генерация новых слайдов в стиле существующих
- Поддержка многопоточной обработки
- Сохранение текстового слоя PDF

📌 GitHub: https://github.com/gavrielc/Nano-PDF

#python

@pythonl
🔥6😢32
🌍🤖 GigaWorld-0: Модели мира

GigaWorld-0 - это унифицированная платформа для обучения Vision-Language-Action, использующая генерацию видео и 3D моделирование. Она обеспечивает создание разнообразных и реалистичных последовательностей, что делает её мощным инструментом для разработки эмбодированных ИИ.

🚀Основные моменты:
- Интеграция видео и 3D генерации для физической реалистичности.
- Поддержка текстовых подсказок для генерации видео.
- Модели доступны на Hugging Face для быстрого старта.
- Открытый исходный код с лицензией Apache 2.0.

📌 GitHub: https://github.com/open-gigaai/giga-world-0

#python
8👍1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
💀➡️ Большинство кодеров не знают про это ускорение в Python

Одна из самых недооценённых оптимизаций в Python — вынесение повторяющихся вычислений в локальные переменные.
Причина проста: доступ к локальной переменной в CPython *в 2–3 раза быстрее*, чем к глобальной или атрибуту модуля.

Особенно важно в циклах и горячих участках кода.


import math

# Медленнее: math.sqrt вызывается через глобальное пространство имён
def slow(nums):
return [math.sqrt(x) for x in nums]

# Быстрее: ссылка на функцию закэширована в локальной переменной
def fast(nums):
sqrt = math.sqrt
return [sqrt(x) for x in nums]

# Ещё пример: длину списка лучше сохранить локально
def sum_fast(nums):
total = 0
ln = len(nums) # локальная ссылка быстрее
for i in range(ln):
total += nums[i]
return total
👍138🔥6🤩1
Выходим на новый уровень для удобной работы над ИТ-продуктами

Свежий релиз SourceCraft — когда AI, Git и безопасность работают синхронно.
Специальная ИИ-система проверяет безопасность кода и оформляет найденные уязвимости в карточки прямо на платформе.

Для команд:
— поддержка Gitlab CI/CD YAML, удобные инструменты релизов и web-интерфейс для решения конфликтов в PR.

Для безопасности:

— дашборд уязвимостей по всем репозиториям, страница Code Scanning для SAST, rescan и список библиотек с уязвимостями в SCA.
— пройдена оценка соответствия требованиям ФЗ-152, PCI DSS, ГОСТ 57580.

Обновлён UI для CI/CD и появились Telegram-уведомления. Работаем дальше

Подробнее в канале
5👍3🔥3😁2
Forwarded from Machinelearning
📌 Андрей Карпаты написал ИИ-пайплайн для проверки IT-прогнозов десятилетней давности.

Андрей опубликовал разбор своего нового пет-проекта. Он создал систему, которая анализирует архивные треды Hacker News и с помощью LLM проверяет, сбылись ли предсказания пользователей спустя 10 лет.

Проект использует так называемые «послезнание» (hindsight), чтобы сравнивать старые комментарии с реальностью, выявлять визионеров и находить самые громкие ошибки.

Технически решение представляет собой пайплайн, который собирает данные через API Algolia и обрабатывает их с помощью структурированного промпта.

Тестовый прогон на 930 обсуждениях (месячный архив статей Hacker News) занял около часа и обошелся всего в 58 долларов.

На выходе система генерирует статический сайт с «Залом славы» аналитиков и рейтингом точность прогнозов.

Исходный вайб-код проекта, по традиции - в открытом доступе.


@ai_machinelearning_big_data

#AI #ML #LLM #Tutorial #Karpaty
Please open Telegram to view this post
VIEW IN TELEGRAM
9😢3🔥2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🤯💣 PYTHON ТРЮК ПО УСКОРЕНИЮ #python

Совет по Python: если в цикле много обращений к атрибутам объекта или модуля — вынеси их в локальную переменную.

Доступ к локалам работает быстрее, чем к атрибутам, поэтому такой приём иногда ускоряет код на 20–50 процентов.


#медленно — каждый проход лезет в атрибут
for i in range(10_000_000):
x = obj.value

#быстрее — сохрани ссылку заранее
val = obj.value
for i in range(10_000_000):
x = val

#ещё пример — кешируем функцию
import math
sqrt = math.sqrt
for i in range(1_000_000):
r = sqrt(i)
🔥155👍5😁1
Аналитика, которая скрывает больше, чем кажется

Каждый день мы пользуемся продуктами, за которыми стоят тщательно продуманные эксперименты и A/B-тесты. Мы видим только интерфейс, а аналитики изучают поведение миллионов пользователей и формируют гипотезы на основе собранных данных.

Даже мелкие изменения — например, баннер, цвет кнопки или порядок элементов на странице — могут сильно повлиять на бизнес-показатели. Именно специалисты по данным помогают компаниям принимать решения, опираясь на такие эксперименты.

Развивайте свои навыки в аналитике данных с курсом онлайн-школы karpovꓸcourses, созданной одним из самых читаемых аналитиков России по данным NEWHR — Анатолием Карповым.

Обучение максимально приближено к реальной работе: за 5,5 месяцев вы освоите полный стек навыков — от SQL и Python до A/B-тестирования.

Преподают практики, а не теоретики: Анатолий Карпов, Роман Бунин, Анастасия Кузнецова и Анастасия Зеленова — востребованные аналитики, которые точно знают, какие компетенции помогут построить успешную карьеру.

После большинства онлайн-курсов новичкам сложно устроиться на первую работу — работодатели не всегда доверяют формальному образованию. С выпускниками karpovꓸcourses ситуация другая: их ценят на рынке, а во многих вакансиях прямо указывают, что кандидаты после karpovꓸcourses получают приоритет при отборе

Освойте навыки, которые действительно ценят работодатели: https://clc.to/erid_2W5zFJUaHB6

Реклама. ООО "КАРПОВ КУРСЫ". ИНН 7811764627. erid: 2W5zFJUaHB6
2
🎧 Модель аудиоразмышлений Step-Audio-R1

Step-Audio-R1 — первая аудиомодель, которая преодолевает проблему "обратного масштабирования", улучшая производительность при увеличении вычислительных ресурсов. Используя метод MGRD, модель фокусируется на акустическом анализе, что позволяет ей эффективно обрабатывать аудиоданные.

🚀 Основные моменты:
- Успешно решает проблему "обратного масштабирования"
- Сравнима с Gemini 3 по аудиобенчмаркам
- Инновационный подход к обучению через акустические особенности
- Доступна для использования на Hugging Face и ModelScope

📌 GitHub: https://github.com/stepfun-ai/Step-Audio-R1

@pythonl
8👍2🔥1
🖥 Как уменьшить Docker-образ в 10+ раз - понятный и практичный разбор.

Размер Docker-образа - это не косметика.
Он напрямую влияет на:
- скорость CI/CD
- время деплоя
- cold start контейнеров
- расходы на storage и трафик

В примере ниже образ удалось сократить с 588 MB до 47.7 MB - почти на 92%.
Вот какие приёмы реально дают эффект.

1) Выбор базового образа - самое важное решение

Полный python:3.9 тянет за собой:
- лишние системные утилиты
- документацию
- dev-пакеты

Переход на python:3.9-alpine:
- в разы меньше размер
- быстрее скачивание
- меньше attack surface

Это первый и самый крупный выигрыш.

2) Оптимизация слоёв Docker

Каждый RUN, COPY, ADD - это новый слой.
Много мелких инструкций = раздув образа.

Правило:
- объединяй связанные команды
- удаляй временные файлы в том же RUN

Меньше слоёв - меньше вес - быстрее сборка.

3) .dockerignore - бесплатная оптимизация, которую часто забывают


Без .dockerignore в build context улетает всё:
- .venv
- .cache
- .git
- временные файлы

Это:
- увеличивает размер контекста
- замедляет сборку
- иногда ломает кеширование

.dockerignore должен быть всегда. Без исключений.

4) Multi-stage build - must-have для продакшена

Одна из самых мощных техник.

Идея простая:
- stage 1 - сборка, компиляция, зависимости
- stage 2 - только то, что нужно для запуска

В финальном образе:
- нет build-инструментов
- нет лишних библиотек
- только runtime

Результат:
- меньше размер
- меньше уязвимостей
- быстрее старт

Итоговый эффект:
- 588 MB -> 47.7 MB
- −91.89% размера
- быстрее CI
- быстрее деплой
- дешевле инфраструктура

Главный вывод:
маленькие оптимизации накапливаются.

Каждый сэкономленный мегабайт:
- ускоряет каждый pull
- ускоряет каждый deploy
- масштабируется вместе с вашей системой

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍168🔥3😁3