Python/ django
58.9K subscribers
2.54K photos
194 videos
48 files
3.27K links
по всем вопросам @workakkk

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

@ai_machinelearning_big_data -ML

@ArtificialIntelligencedl -AI

@datascienceiot - 📚

@pythonlbooks

РКН: clck.ru/3FmxmM
Download Telegram
🐍 В Python у while есть else. И многие разработчики узнают об этом спустя годы

Выглядит непривычно:


number = 0

while number < 5:
print(number)
number += 1
else:
print("Цикл завершился")


Блок else выполнится, если цикл закончился естественно, то есть условие while стало ложным.

Но есть важный нюанс. Если внутри сработает break, else уже не выполнится.


number = 0

while number < 5:
if number == 3:
break

number += 1
else:
print("Сюда не попадём")


Из-за этого while...else удобно использовать там, где нужно отличить нормальное завершение поиска от досрочного выхода.

Например, цикл пытается найти нужное значение. Если нашёл, делает break. Если дошёл до конца без успеха, срабатывает else.

Синтаксис существует в Python давно, но до сих пор выглядит как маленькая пасхалка языка.

#Python #Programming #Backend #PythonTips
16👍8🔥5😱3🎉2
Forwarded from Machinelearning
✔️ Mistral обновила OCR-модель до версии 4.1

Главный упор сделали на обработку перегруженных страницы, где текст, изображения и подписи идут плотно и наслаиваются друг на друга.

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

На нагруженных технических диаграммах модель реже теряет блоки, а текстовые выноски считывает как самостоятельные объекты, а не сливает в один массив.

Отдельно заявлена работа с многоколоночными документами, OCR 4.1 сохраняет исходную структуру страницы и отдает каждую колонку отдельной областью текста.

В настроенных процессах тем, кто пользуется моделью, менять ничего не нужно. Алиас mistral-ocr-latest уже переводит существующие интеграции на новую версию.

Руками модель можно попробовать в Mistral Studio.


@ai_machinelearning_big_data

#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍42🎉1
🐍 Опытный Python-разработчик рассказал, для каких проектов в 2026 году он уже не выбирает Python первым.

Автор десятилетиями использовал Python практически для всего, но со временем пришёл к простой мысли: хороший универсальный язык не обязан быть лучшим инструментом для каждой задачи.

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

При этом это не очередное «Python умер».

Наоборот, автор по-прежнему активно использует Python и отдельно показывает области, где язык остаётся одним из лучших вариантов.

Получился полезный взгляд без фанатизма: выбирать язык не по привычке, а под конкретную задачу.

https://menno.io/presentations/not-python-2026/index.html#/

#Python #Programming #SoftwareEngineering #Development
5👍5🔥5
🐍 Python-разработчики часто тестируют код с зависимостью от времени. Но обычный mock для дат — это намного сложнее, чем кажется.

Библиотека time-machine решает эту проблему: она позволяет буквально «перемещать время» внутри тестов.

Например:


import datetime as dt
import time_machine

@time_machine.travel("2030-01-01")
def test_future():
assert dt.date.today() == dt.date(2030, 1, 1)


В отличие от популярных подходов вроде freezegun, библиотека не ищет и не заменяет все импорты в проекте.

Она работает на уровне C API CPython, перехватывая функции даты и времени напрямую. Поэтому скорость не зависит от количества загруженных модулей. В бенчмарках time-machine оказался более чем в 100 раз быстрее freezegun на простых сценариях.

Полезно для тестирования:

• подписок и платежей
• истечения токенов
• календарных функций
• планировщиков задач
• логики с дедлайнами

Проект:
https://github.com/adamchainz/time-machine

https://adamj.eu/tech/2026/08/03/python-time-machine-o1-freezegun-on/
👍8🔥53
Полный инженерный курс по AI-агентам на русском: от tool calling до production

Курс инженерный, а не обзорный. Здесь почти нет рассуждений о том, «изменит ли ИИ мир», зато есть: минимальные работающие реализации каждого механизма, лабораторные с критериями приёмки, шаблоны для копирования, чек-листы перед релизом, каталог антипаттернов и набор бенчмарков, по которым можно честно сравнить две версии своего агента.

Качество агента почти никогда не упирается в модель. Оно упирается в инженерию вокруг модели: как описаны инструменты, что попадает в контекст, где стоят проверки, что происходит при третьей подряд ошибке и сколько это стоит за тысячу запусков. Модель - двигатель. Курс -про всё остальное в автомобиле.

https://github.com/justxor/Aiagentsfullcourse
👍11🔥42
🔥 DeepSeek Harness - пример того, почему сегодня важна не только модель, но и всё окружение вокруг неё

Harness - это слой между LLM и реальной работой: инструменты, terminal, permissions, память, tool loop и правила обработки ответов.

У deepseek-harness есть Python-библиотека, CLI dsh, MCP-сервер и интеграция в формате Anthropic Skill. Проект документирует особенности протокола DeepSeek V4-Pro/V4-Flash и автоматически обрабатывает проблемные места вроде reasoning_content, parallel tool calls, streaming и context limits.

Например:


pip install deepseek-harness-cli


Ключевая идея очень актуальна для agent engineering:

одна и та же модель с разным harness может вести себя как совершенно другой агент.

Модель отвечает за интеллект.
Harness - за то, сможет ли этот интеллект стабильно работать с инструментами и длинными workflow.

Вот полезный гайд, где собрали большой разбор проекта: 23 секции, от запуска за минуту до архитектуры и теории Cordis.

Что особенно интересно:

архитектура максимально модульная - компоненты можно заменять плагинами;
проект model-agnostic и работает с OpenAI-compatible API;
под harness лежит Cordis - отдельная формальная модель безопасного самоизменения программ;
можно менять не только tools, но даже логику, которая решает, что агент должен делать дальше;
проект пока developer preview, поэтому breaking changes ожидаемы


Разбор: https://helmcode.com/deepseek-harness
9👍7🔥5🎉1
⚡️ Harness Engineering - полный курс на русском

Как заставить AI-агента писать код надёжно. Не «какую модель выбрать», а как спроектировать вокруг неё рабочую систему: инструкции, инструменты, среду, состояние и верификацию.

Курс - от нуля до продвинутых тем: теоретическая база из 11 блоков, 14 модулей, 8 практических проектов, 14 лабораторных работ, диагностический протокол «как починить агента», библиотека готовых шаблонов, карта инструментов, 40 приёмов и каталог антипаттернов.

Главный тезис курса: способность модели и надёжность исполнения - это две разные вещи. Одна и та же модель в «голой» среде и в среде с продуманным harness даёт качественно разные результаты. Апгрейд модели - это самый дорогой и обычно не самый эффективный способ починить агента.

https://github.com/justxor/Harness_ru
🔥53👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Разница между C++ и Python
5🔥33😁189👍6🎉2😱1
🖥 Для Python появился Interlock - современный circuit breaker без зоопарка отдельных решений для sync и async.

Один CircuitBreaker умеет работать и с обычными функциями, и с async, считать процент ошибок по скользящему окну и отдельно реагировать на слишком медленные вызовы.

Можно собрать полноценный pipeline отказоустойчивости:


pipeline = (
Pipeline.builder()
.fallback(...)
.retry(attempts=4)
.circuit_breaker(breaker)
.bulkhead(8)
.timeout(2.0)
.build()
)


То есть timeout, retry, ограничение параллелизма, circuit breaker и fallback складываются в одну явную цепочку.

Есть интеграции с httpx, aiohttp, requests, FastAPI, Redis и OpenTelemetry. Через Redis состояние breaker можно шарить между несколькими процессами или инстансами приложения.

Ещё полезная штука - METRICS_ONLY: сначала можно просто посмотреть реальные проценты ошибок и медленных запросов в проде, ничего не блокируя, а уже потом включить breaker.


https://github.com/bagowix/interlock
Please open Telegram to view this post
VIEW IN TELEGRAM
👍85🔥4🎉3
Как нормально тестировать AI-агента, если правильный ответ ещё ничего не доказывает

У обычного чат-бота можно проверить финальный ответ. С агентами этого уже мало: модель может выдать вполне убедительный текст, но перед этим выбрать не тот skill, вызвать неправильный tool, потерять контекст на втором сообщении или выполнить только половину задачи.

Ed Crewe описал, как они строили eval-фреймворк для агентного чат-бота вокруг Postgres AI Hybrid Manager.

Начали с простого routing eval: для каждого запроса проверяется, выбрал ли агент нужный skill или tool. Это быстро, детерминированно и удобно гонять в CI.

Следующий слой- Task Completion Rate. Здесь уже оценивается сам результат: выполнил ли агент задачу, использовал ли нужные данные, предложил ли адекватный следующий шаг. Для таких проверок используется LLM-as-a-judge и заранее заданная rubric.

Но и этого оказалось мало. Реальные задачи часто состоят из нескольких сообщений, поэтому тестировать приходится уже целые диалоги с сохранением conversation state и отдельными проверками каждого шага.

Финальный уровень — trajectory testing: смотреть не только на ответ, а на весь путь агента к нему: маршрутизацию, выбор skills, tool calls, промежуточные действия, состояние диалога и итоговый результат.

Получается уже почти классическое E2E-тестирование, только объект проверки здесь не HTTP-запрос или UI, а поведение AI-агента целиком.

В основе автор использует deepeval, поверх которого добавлены YAML goldens, CI, плагины, multi-turn evals и телеметрия через Langfuse.

https://edcrewe.blogspot.com/2026/08/from-routing-checks-to-trajectory.html
5👍5🔥2😁1🎉1
25 августа встречаемся на Agentic Coding Meetup в Сбер.Среде и в онлайне⚡️

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

🔥 Поговорим о том, как agentic coding выглядит на практике: новые инженерные роли и модели команд, SDD и трансформация процессов, coding-агенты и инструменты, подходы к постановке задач и управлению контекстом, а также опыт внедрения AI в разработку больших технологических компаний.

Начало в 17:00, встреча очных гостей — в 16:00.

Количество очных мест ограничено — успейте зарегистрироваться!
👍5🔥1😁1
Для тех, кто работает с ACP-агентами из терминала, появился простой REPL

acp-repl запускает любой stdio-сервер с поддержкой Agent Client Protocol и позволяет общаться с агентом прямо из терминала: отправлять промпты, создавать сессии, переключать модель и режим, обрабатывать permission-запросы и смотреть debug-логи.

Работает не с одним конкретным агентом. В README есть примеры для OpenCode, Codex, Claude Code и Pi, плюс можно подключить любой другой ACP-совместимый executable.

Удобная штука для быстрой проверки агента до того, как встраивать его в свой runtime или приложение. Можно сравнить поведение разных моделей и режимов, проверить permissions или просто понять, нормально ли стартует конкретный ACP-провайдер.

Запуск через npm:


npm install -g @normahq/acp-repl@latest

acp-repl -- opencode acp


Репозиторий:
https://github.com/normahq/acp-repl
👍32🔥2
Python Game Server: простой сервер для пошаговых мультиплеерных игр

python-game-server — лёгкий open source-фреймворк на Python для создания пошаговых мультиплеерных игр.

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

Из коробки есть:

— единый API для разных игр
— несколько параллельных игровых сессий
— подключение к конкретной комнате
— автоматический вход в ближайшую свободную сессию
— возможность относительно легко добавлять новые игры

Проект рассчитан в первую очередь на настольные, карточные и другие turn-based игры. Для написания клиентов и новых игровых механик, по словам автора, достаточно базового знания Python.

В репозитории уже больше 600 коммитов, отдельно лежат клиентская и серверная части.

GitHub: https://github.com/feberts/python-game-server
🔥64👍3