58174
Всё самое интересное из мира Python Связь: @devmangx РКН: https://clck.ru/3GMMF6
PewDiePie продолжает вайбкодить: 15тыс звёзд на GitHub менее чем за 24 часа.
Он назвал его Odysseus и это своего рода аналог ChatGPT и Claude, но ориентированный на локальный запуск ИИ. Сейчас он стремительно набирает популярность. 👃
Он описывает его как «селф-хост интерфейс для работы с языковыми моделями», в котором есть чат, автономные агенты, инструменты, запуск и обслуживание моделей, почта, ресёрч и другие возможности.
https://github.com/pewdiepie-archdaemon/odysseus
👉 @PythonPortal
Этот инструмент показывает промпт, стоящий за любым GitHub-репозиторием.
Пользоваться им очень просто:
→ Замените github на gitreverse в URL репозитория
→ Сервис покажет промпт, с помощью которого можно воспроизвести проект
Ничего не нужно устанавливать или настраивать.
Достаточно изменить URL.
Реверс-инжиниринг любого проекта за считанные секунды.
На 100% бесплатно.
https://www.gitreverse.com/
👉 @PythonPortal
Опытный разработчик с реддита, показал, как превратить Claude Code в персонального аналитика, который сам собирает для вас информацию из интернета каждое утро. Пока вы спите.
Схема выглядит так:
→ Использовать команду /schedule в Claude Code для запуска постоянных облачных задач
→ Подключить Brave Search MCP для поиска актуальной информации в интернете
→ Подключить своё хранилище Obsidian через Filesystem MCP
→ Создать файл CLAUDE.md с темами интересов и фильтрами «не показывать»
→ Дать инструкцию: «Каждый будний день в 6:00 ищи новые события по этим темам и сохраняй сводку в Obsidian»
После этого Claude сам преобразует инструкцию на естественном языке в cron-задачу.
Без N8N.
Без собственного сервера.
Без необходимости держать компьютер включённым.
👉 @PythonPortal
Когда PM и TL ставят задачи, а LLM вежливо просит реализовать.
Читать полностью…
Создавайте LLM с нуля
Наткнулся на отличную находку от Vizuara — серию из 43 лекций, которая действительно выполняет своё обещание: показать, как построить большую языковую модель с нуля.
Большинство людей пользуются ChatGPT.
Но лишь немногие действительно понимают, как он устроен под капотом.
Этот плейлист пошагово разбирает все ключевые концепции, не перегружая сложными объяснениями.
Что вы изучите:
→ Архитектуру Transformer
→ Внутреннее устройство GPT
→ Токенизацию и BPE
→ Механизмы внимания (Attention)
→ Процесс обучения LLM
→ Полноценные реализации на Python
Подойдёт для:
• ML-инженеров
• Энтузиастов ИИ
• Разработчиков, входящих в сферу GenAI
• Всех, кто устал от объяснений ИИ как «чёрного ящика»
Если вы действительно хотите понять, что лежит в основе таких моделей, как ChatGPT, Claude и Gemini, — этот материал стоит посмотреть.
🔗 Ссылка на плейлист
👉 @PythonPortal
Парни, создали самый быстрый PDF-парсер в мире ⚡️
И при этом он точнее любого другого open-source PDF-парсера без использования моделей (pymupdf, pypdf, markitdown, pdftotext, opendataloader, pymupdf4llm).
Презентовали LiteParse v2. Девелоперы полностью переписали библиотеку на Rust и адаптировали её как нативные пакеты для Python и Node.js.
Поддерживается более 50 различных форматов документов. LiteParse можно вызывать напрямую или устанавливать прямо внутрь вашего любимого AI-агента.
Чуть подробнее и обширней в их блоге
👉 @PythonPortal
Откройте для себя очень плавный Markdown-редактор, специально разработанный для сценариев управления контекстом AI-чатов: марка 🏁
Построен на Tauri + React + TypeScript, с кроссплатформенной поддержкой macOS / Windows / Linux.
Слева — редактор на CodeMirror 6; справа — предпросмотр в реальном времени на markdown-it + Shiki + Mermaid. Поддерживает 8 наборов тем, Vim mode, command palette, файловый сайдбар, reading mode и экспорт в PDF.
👉 @PythonPortal
Почему профилирование кода важно 🐍
Невозможно оптимизировать то, что нельзя измерить.
Профилирование показывает, ГДЕ именно ваш код работает медленно:
• Помогает выявить узкие места производительности, о существовании которых вы могли даже не подозревать.
• Показывает, какие функции потребляют больше всего процессорного времени.
• Позволяет не тратить время на оптимизацию не тех участков кода.
• Помогает обнаружить неэффективные алгоритмы и структуры данных.
• Показывает точное количество вызовов и время выполнения каждой функции.
В Python 3.15 доступны два подхода к профилированию:
• profiling.sampling — статистический профилировщик с минимальными накладными расходами, отлично подходит для продакшена.
• profiling.tracing (cProfile) — детерминированный профилировщик с точным подсчётом вызовов функций.
Реальный пример: в Grand Theft Auto Online узкое место производительности, приводившее к потере около 70% производительности, оставалось незамеченным 8 лет, пока кто-то не выполнил профилирование. Исправление оказалось простым, а прирост производительности — огромным.
Профилируйте код до того, как приступать к оптимизации. Скорее всего, вы удивитесь тому, где на самом деле тратится время выполнения.
👉 @PythonPortal
Почему "é" == "é" может возвращать False в Python
Вот один из типичных Unicode-подводных камней, который часто приводит к очень запутанным багам в Python:
Две строки могут выглядеть одинаково на экране, но при этом отличаться внутри:
import unicodedata
a = "é" # один кодпоинт: U+00E9
b = "e\u0301" # "e" + комбинирующий акцент (acute accent)
print(a)
print(b)
print(a == b)
# False
print(len(a))
# 1
print(len(b))
# 2
repr() и unicodedata.name():import unicodedata
for char in "e\u0301":
print(repr(char), unicodedata.name(char))
'e' LATIN SMALL LETTER E
'́' COMBINING ACUTE ACCENT
import unicodedata
a = "é"
b = "e\u0301"
a_normalized = unicodedata.normalize("NFC", a)
b_normalized = unicodedata.normalize("NFC", b)
print(a_normalized == b_normalized)
# True
NFC приводит текст к “составной” форме, где комбинация "e" + accent превращается в один символ "é".text = "hello\u200b"
print(text == "hello")
# False
print(text)
# hello
print(repr(text))
# 'hello\u200b'
print() скрывает проблему, но repr() показывает реальное содержимое строки.
Один соло-разработчик выиграл хакатон Anthropic, он за 8 часов собрал рабочий продукт с помощью Claude Code и забрал $15,000 призовых.
Затем выложил весь стек в опенсорс.
189,000 звёзд на GitHub. Полная конфигурация:
→ 38 специализированных агентов (planner, security reviewer, debugger, code reviewer)
→ 156 skills, подгружаемых по требованию (/plan, /tdd, /security-scan, /quality-gate)
→ 72 кастомные slash-команды
→ AgentShield: 1,282 security-теста по CLAUDE.md, MCP-конфигам, хукам и skills
→ 3 агента на Opus 4.6, запускающих red-team пайплайны (Attacker, Defender, Auditor)
→ слой непрерывного обучения
→ покрытие 12 языковых экосистем
Работает в Claude Code, Codex, Cursor, OpenCode, Gemini и тд
👉 @PythonPortal
DuckDuckGo официально добавила режим No-AI 🦆
Он автоматически отключает AI-функции и скрывает AI-сгенерированные изображения из результатов поиска.
Что входит:
→ Без AI-ответов в поиске
→ Без Duck.ai и AI-чата
→ Фильтрация AI-сгенерированных изображений
→ Обычная выдача без AI-вставок
Забавно наблюдать, как после нескольких лет гонки за внедрением ИИ поисковики начали добавлять кнопку «выключить ИИ».
Похоже, классический поиск снова стал фичей :)
👉 @PythonPortal
Новый терминал для вайбкодеров
Специально создан для работы с ИИ.
✓ Всего 7 МБ. Очень высокая производительность
✓ Поддерживает Windows, macOS и Linux
✓ Встроены редактор, Git, агенты и предпросмотр веб-страниц
✓ Без телеметрии и регистрации
Бесплатный и с открытым исходным кодом
🥩🥩🥩
👉 @PythonPortal
Выглядит как одна из самых практичных идей вокруг Claude Skills за последнее время.
book-to-skill превращает книгу не просто в заметки или summary, а в набор структурированных skill-файлов, которые Claude может подгружать по запросу. Вместо того чтобы каждый раз скармливать модели PDF на сотни страниц, инструмент разбивает материал на главы, вытаскивает ключевые концепции, паттерны, glossary и cheatsheet.
Самая интересная часть не в конвертации PDF, а в том, что книга начинает работать как часть контекста агента:/database-internals replication и Claude подгружает только нужный раздел, а не весь документ целиком. Это сильно экономит контекстное окно и уменьшает количество галлюцинаций, потому что ответы строятся на содержимом конкретной главы.
Для разработчиков это особенно полезно на книгах вроде:
- Designing Data-Intensive Applications
- Database Internals
- Computer Systems: A Programmer's Perspective
- Operating Systems: Three Easy Pieces
Обычно такие книги содержат огромное количество деталей, которые сложно держать в голове. Skill-формат превращает их в что-то вроде локального экспертного консультанта по конкретной теме.
По сути это ещё один шаг к модели:
↓
Knowledge Extraction
↓
Structured Skill
↓
On-demand Context Loading
↓
AI Agent
SKILL.md файлы и подгружаются только при необходимости. Это позволяет держать сотни навыков без раздувания постоянного контекста.
Стоп Слоп: нашли скилл для Claude и других LLM, который учит их избавляться от предсказуемых фраз и конструкций, из-за которых сгенерированный текст звучит по-машинному. 😁
- Находит и удаляет запрещённые речевые шаблоны: вводные разогревающие фразы, слова-паразиты для усиления акцента и любые наречия.
- Убирает структурные клише, такие как противопоставления по схеме «не X, а Y» и искусственно драматизированное дробление текста на короткие фразы.
- Применяет правила на уровне предложений: запрет на начало предложений с вопросительных слов (Wh- words) и использование только активного залога.
- Включает систему оценки по пяти измерениям для анализа прямоты изложения, ритма текста и его естественности.
https://github.com/hardikpandya/stop-slop
👉 @PythonPortal
Перестаньте искать Python-библиотеки для машинного обучения по случайным туториалам.
Best-of Machine Learning with Python — это курируемый GitHub-индекс open-source библиотек для машинного обучения на Python, созданный для разработчиков, которым нужен более быстрый способ ориентироваться в экосистеме и сравнивать инструменты между собой.
Проект помогает составить шорт-лист подходящих решений, группируя библиотеки по категориям и ранжируя их с помощью оценки качества проекта, основанной на метриках из GitHub и менеджеров пакетов.
Ключевые особенности:
• Индекс из 920 проектов — большая и удобная для навигации карта open-source ML-проектов на Python
• 34 категории — поиск по направлениям: ML-фреймворки, NLP, обработка изображений, AutoML, деплой, интерпретируемость моделей и многое другое
• Рейтинг по оценке качества — проекты сортируются на основе автоматически рассчитываемого рейтинга, использующего сигналы из репозиториев и менеджеров пакетов
• Подробная метаинформация о проектах — для каждого проекта доступны такие показатели, как количество звёзд, форков, issues, контрибьюторов, активность разработки, загрузки и зависимости
• Еженедельные обновления и вклад сообщества — список регулярно обновляется, а улучшения можно вносить через issues, pull request'ы или редактирование файла projects.yaml
Проект полностью открыт и распространяется по лицензии CC BY-SA 4.0.
👉 @PythonPortal
Как строить box plotы в Python
На этот раз — битва между pandas 🐼 и seaborn ⛵️
👉 @PythonPortal
Сборка GPT-подобных LLM с нуля на PyTorch.
https://github.com/analyticalrohit/llms-from-scratch
10 ноутбуков. Пошаговое объяснение.
Разбирает архитектуру LLM на простые части.
Подходит для новичков.
Полностью hands-on.
🚨 Обязательно к внедрению 🚨
- Отключите автообновление расширений в VS Code, Cursor и других форках
(macOS: Cmd + Shift + P → Disable Auto Updating Extensions)
- Используйте статический анализатор zizmor для GitHub Actions, чтобы выявлять потенциальные проблемы безопасности
- Используйте actions-up для обновления GitHub Actions до актуальных версий с SHA-pinning
- Добавьте Socket Free Firewall или safe-chain при установке npm-пакетов, чтобы снизить риски атак через цепочку поставок (supply chain attacks)
👉 @PythonPortal
Нашли легкий способ изучить математику для ML: Mathematics for Machine Learning
это курируемая коллекция на GitHub, включающая книги, научные статьи, видеолекции и базовые материалы по математике для изучения и повторения математических основ машинного обучения.
Она помогает выстроить более прочную базу знаний, объединяя проверенные ресурсы вокруг тем, с которыми инженеры машинного обучения сталкиваются постоянно: линейная алгебра, математический анализ, теория вероятностей, статистика, теория информации, матричное исчисление и математика глубокого обучения.
Бесплатный публичный репозиторий на GitHub.
👉 @PythonPortal
Бэкенд-разработка и архитектура программных систем
Сложные IT-продукты держатся на бэкенде: он отвечает за логику сервиса, работу с данными, API, надёжность и масштабирование.
На онлайн-магистратуре НИУ ВШЭ и Нетологии «Бэкенд-разработка и архитектура программных систем» готовят специалистов, которые умеют проектировать, разрабатывать и развивать серверные приложения.
В программе — фундаментальная инженерная база и современный стек: Python, реляционные и нереляционные базы данных, веб-разработка, архитектура ПО, тестирование, MLOps. На втором курсе можно углубиться в один из языков: Go, Java или Rust.
Обучение построено вокруг практики: проектные семинары, семинары наставника, мастер-классы и практикумы с экспертами IT-компаний. Студенты работают над проектами для портфолио, а ВКР становится полноценным итоговым проектом.
Формат — онлайн, занятия проходят вечером в будни и днём в субботу. После обучения выпускники получают диплом магистра НИУ ВШЭ по направлению «Программная инженерия».
Подробнее о программе → по ссылке
Реклама. ООО "Нетология" ОГРН 1207700135884 Erid: 2VSb5yBJqXp
Если ты работаешь с data пайплайнами, эти репозитории очень полезны:
ibis
Python API, который позволяет писать запросы один раз и запускать их на разных backend’ах для данных, таких как DuckDB, BigQuery и Snowflake.
pygwalker
Мгновенно превращает DataFrame в интерактивный UI для визуального исследования данных.
katana
Быстрый и масштабируемый веб-краулер, часто используется для security testing и крупномасштабного сбора/поиска данных.
#Data_Science
👉 @PythonPortal
Жизненный цикл любого проекта, где «надо было вчера».
👉 @PythonPortal
Python-совет: как писать код с эффективным использованием памяти
Это проблемный код:
def generate_transactions_inefficient(df: pd.DataFrame):
transactions = []
for _, row in df.iterrows():
transactions.append({
'user_id': row['user_id'],
'amount': row['amount'],
'transaction_date': row['transaction_date'],
'status': row['status']
})
return transactions
yield:def generate_transactions_efficient(df: pd.DataFrame):
for _, row in df.iterrows():
yield {
'user_id': row['user_id'],
'amount': row['amount'],
'transaction_date': row['transaction_date'],
'status': row['status']
}
Как проверить наличие подклассов в Python
👉 @PythonPortal