redress — это лёгкая библиотека для умных повторных попыток в Python‑сервисах: она классифицирует ошибки по классам и подбирает для каждого свой backoff, с единым хуком для метрик и логов.
pip install redressfrom redress.policy import RetryPolicy
from redress.classify import default_classifier, ErrorClass
from redress.strategies import decorrelated_jitter, equal_jitter
policy = RetryPolicy(
classifier=default_classifier,
strategy=decorrelated_jitter(max_s=10.0),
strategies={
ErrorClass.CONCURRENCY: decorrelated_jitter(max_s=1.0),
ErrorClass.RATE_LIMIT: decorrelated_jitter(max_s=60.0),
ErrorClass.SERVER_ERROR: equal_jitter(max_s=30.0),
},
)
Отдельный плюс для боевых систем — CLI
redress doctor, который проверяет RetryConfig/RetryPolicy и выводит нормализованный снапшот конфигурации, чтобы поймать странные комбинации max_attempts/deadline и стратегий ещё до развёртывания.#redress #Python #RetryPolicy #Resilience #Observability #FaultTolerance #Backoff #ErrorHandling #Logging
https://github.com/aponysus/redress
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - aponysus/redress: Policy-driven failure handling for Python services.
Policy-driven failure handling for Python services. - aponysus/redress
1🔥2👍1 1
Tracesage — это легковесный инструмент локального мониторинга и визуализации мультиагентных систем, построенных на базе LangChain и LangGraph.
Достаточно добавить всего пару строк кода, чтобы запустить интерактивный трейсинг выполнения ИИ-агентов в реальном времени прямо в браузере. Инструмент перехватывает весь поток колбэков LangChain (запуски цепочек, вызовы инструментов, LLM-запросы, ретривал, ошибки) и наглядно раскладывает его по полочкам.
pip install. Все данные сохраняются локально в SQLite, а веб-интерфейс работает полностью оффлайн.ainvoke.Установка (для zsh обязательно берите в кавычки):
pip install "tracesage[langchain]"
Использование в синхронных скриптах или Jupyter-ноутбуках для автоматического глобального перехвата:
import tracesage
with tracesage.trace() as tl:
# Трейсится автоматически, в консоль выводится кликабельная ссылка
result = agent.invoke("Создай план поездки")
input("Трейс готов — откройте ссылку в консоли и нажмите Enter для выхода.")
По умолчанию интерфейс поднимается на
http://localhost:7842/ui.tracesage предлагает мощные команды для отладки прямо из терминала:
tracesage show <run_id> — отрисовать структуру выполнения в виде дерева в консоли.tracesage watch <run_id> — стриминг событий в реальном времени.tracesage diff <run_a> <run_b> — сравнение двух запусков по токенам, времени и ошибкам.Также инструмент автоматически регистрирует фикстуру
tracesage_capture для pytest, позволяя писать интеграционные тесты на поведение ИИ-агентов (например, проверять, вызывался ли конкретный инструмент и не превышен ли лимит токенов).#Python #LangChain #LangGraph #AI #MultiAgent #Observability #DevTools #OpenSource #LLM
https://github.com/kjgpta/tracesage
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - kjgpta/tracesage
Contribute to kjgpta/tracesage development by creating an account on GitHub.
3🔥3⚡2👍1