Plotex - это легковесная библиотека для Python, позволяющая строить графики, диаграммы и визуализировать данные прямо внутри терминала в виде цветного псевдографического текста.
Главное преимущество библиотеки — она полностью автономна: базовый функционал не требует никаких внешних зависимостей и библиотек вроде matplotlib или numpy. При этом она способна превратить обычную консоль в полноценную графическую панель.
line), точечные (scatter), стержневые (stem).Столбчатые и статистические: гистограммы, боксплоты (
box plots), накопленные (stacked) и плавающие столбчатые диаграммы.heatmaps), матрицы ошибок (confusion matrices), полосы погрешностей (error bars) и индикаторы.candlestick) и шкалы дат/времени.import plotext as plt
# Данные для графика
y = [1, 5, 3, 8, 4, 9, 6]
# Настройка и вывод
plt.plot(y)
plt.title("График в терминале")
plt.theme("dark")
plt.show()
pip install plotext
#Python #Plotext #DataVisualization #Terminal #CLI #DataScience #DevTools #OpenSource #Console #Analytics
https://github.com/piccolomo/plotext
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - piccolomo/plotext: plotting on terminal
plotting on terminal. Contribute to piccolomo/plotext development by creating an account on GitHub.
⚡3 2
DeployProof - это инструмент командной строки (CLI) для Python, предназначенный для верификации кода (в том числе сгенерированного ИИ) с помощью молниеносного мутационного тестирования AST прямо в оперативной памяти.
Нейросети вроде Copilot или ChatGPT легко генерируют тесты со 100% покрытием строк (line coverage), которые при этом не проверяют реальную логику и граничные условия: мутационный скор у такого сьюта часто близок к нулю. DeployProof решает эту проблему прямо перед коммитом или пушем в CI.
🧬 В чем отличие от Mutmut и Cosmic Ray?
git diff. Проверка отрабатывает за пару секунд — буквально пока вы переключаете вкладку.>=, ==, and, or), константы, граничные значения строк, меняет аргументы местами и убирает await без перезаписи файлов на диске.--heal-tests анализирует выживших мутантов и автоматически синтезирует готовые к запуску pytest-кейсы, закрывающие обнаруженные дыры в логике.shell=True, небезопасную десериализацию (pickle, yaml.load) и обход путей.# Проверка изменений в git diff перед пушем
deployproof check
# Автоматическая генерация тестов под выжившие мутации
deployproof check --heal-tests
# Установка pre-push хука в один клик
deployproof init
pip install deployproof
# или изолированно через pipx:
pipx install deployproof
#Python #DeployProof #MutationTesting #Testing #QA #Pytest #AICode #DevTools #OpenSource #AppSec #CICD
https://github.com/SVSPraveen/deployproof
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - SVSPraveen/deployproof: Deterministic pre-push verification for AI-assisted codebases: AST mutation testing, credential…
Deterministic pre-push verification for AI-assisted codebases: AST mutation testing, credential scanning, sandbox-escape detection, mock-usage alerts, and dependency hallucination defense. - SVSPra...
No AI Slop - это инструмент для очистки текста от «нейросетевых штампов» (AI slop), который вырезает более 20 заезженных паттернов ИИ-генерации, не убивая при этом ваш уникальный авторский голос.
Проблема ИИ-текстов в том, что они звучат одинаково. Даже лучшие языковые модели постоянно выдают фразы вроде:
«Это не Х. Это Y.»
«То, о чем вам никто не расскажет...»
«Будущее не грядет. Оно уже здесь.»
Когда вы просите ИИ отредактировать ваш черновик, он часто «сглаживает» лексику, ритм, юмор и те самые шероховатости, которые делают текст живым и человечным.
/no-ai-slop (ваш текст) — убирает клише, сохраняет ваш стиль и выводит список того, что было изменено./no-ai-slop is this slop? (текст) — находит и цитирует все ИИ-паттерны в тексте.Инструмент работает в ChatGPT, Claude Code и Codex. Самый простой способ установки — отправить вашему ИИ-агенту следующий промпт:
Install the /no-ai-slop skill globally from [https://github.com/petergyang/no-ai-slop](https://github.com/petergyang/no-ai-slop)Для установки через терминал (npx):
npx skills add petergyang/no-ai-slop --skill no-ai-slop --global --yes#NoAISlop #Нейросети #Тексты #Копирайтинг #Редактура #ChatGPT #Claude #DevTools #AI
https://github.com/petergyang/no-ai-slop
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - petergyang/no-ai-slop: Removes 20+ patterns of AI slop from any piece of writing.
Removes 20+ patterns of AI slop from any piece of writing. - petergyang/no-ai-slop
🔥2⚡1👍1
Forwarded from Дубынин о мозге 🧠
Если ИИ забирает у вас рутину, но оставляет ответственность, что именно вы на самом деле устали делать — работу или быть автором своей работы?
Мы всё чаще делегируем искусственному интеллекту рутину и даже сложные задачи, и многие люди при этом ощущают нарастающую усталость вместо облегчения, поскольку им приходится постоянно проверять, править и «докручивать» полученный результат.
С точки зрения нейрофизиологии такая работа может оказаться энергозатратнее, чем выполнение задачи целиком своими силами, и я бы выделил здесь три составляющие.
Первая из них касается ощущения безопасности и уверенности в себе и своих результатах, потому что конечный продукт не до конца находится под твоим контролем, при этом ответственность за него всё равно лежит на тебе.
Вторая затрагивает иерархическую модель мира и понимание собственного статуса, так как представление о себе как о субъекте, управляющем процессами, нарушается, и ты начинаешь чувствовать себя почти самозванцем, который использует «шпаргалку» ИИ.
Третья связана с ощущением свободы выбора, поскольку от тебя мало что зависит, и это состояние называют еще «загнанностью в клетку».
Все перечисленное становится факторами хронического стресса, при котором активируются амигдала, задний гипоталамус и некоторые другие мозговые центры, а также развиваются изменения в работе эндокринной системы и внутренних органов.
Поэтому речь идет скорее о выгорании, чем о простой усталости, и это выгорание называют «цифровым», связывая его с потерей своего места в профессии и даже в жизни.
Дубынин о мозге 🧠
Мы всё чаще делегируем искусственному интеллекту рутину и даже сложные задачи, и многие люди при этом ощущают нарастающую усталость вместо облегчения, поскольку им приходится постоянно проверять, править и «докручивать» полученный результат.
С точки зрения нейрофизиологии такая работа может оказаться энергозатратнее, чем выполнение задачи целиком своими силами, и я бы выделил здесь три составляющие.
Первая из них касается ощущения безопасности и уверенности в себе и своих результатах, потому что конечный продукт не до конца находится под твоим контролем, при этом ответственность за него всё равно лежит на тебе.
Вторая затрагивает иерархическую модель мира и понимание собственного статуса, так как представление о себе как о субъекте, управляющем процессами, нарушается, и ты начинаешь чувствовать себя почти самозванцем, который использует «шпаргалку» ИИ.
Третья связана с ощущением свободы выбора, поскольку от тебя мало что зависит, и это состояние называют еще «загнанностью в клетку».
Все перечисленное становится факторами хронического стресса, при котором активируются амигдала, задний гипоталамус и некоторые другие мозговые центры, а также развиваются изменения в работе эндокринной системы и внутренних органов.
Поэтому речь идет скорее о выгорании, чем о простой усталости, и это выгорание называют «цифровым», связывая его с потерей своего места в профессии и даже в жизни.
Дубынин о мозге 🧠
🤔1 1
Cayu - это production-ready среда выполнения (agent runtime) для создания, масштабирования и надежной эксплуатации автономных ИИ-агентов на Python.
Собрать прототип агента на базе стандартных SDK сегодня несложно, но реальные проблемы в проде начинаются на стыках инфраструктуры: падение процесса прямо во время внешнего API-вызова, утечка учетных данных, переполнение контекста LLM, необходимость паузы для аппрува человеком или потеря истории расходов при ретраях. Cayu закрывает именно эти эксплуатационные вызовы, предоставляя надежные низкоуровневые примитивы без привязки к громоздким внешним оркестраторам.
resume) после перезапуска сервиса.approvals) и ручного вмешательства. Если модели требуется подтверждение опасного действия или дополнительный ввод от пользователя, выполнение встает на чекпоинт.ToolPolicy), типизированные эффекты и изоляция учетных данных. Агенты могут выполнять задачи (например, работу с Git/GitHub CLI), не получая прямого доступа к боевым токенам хоста.cayu dashboard eject).import asyncio
from cayu import (
AgentSpec,
CayuApp,
Message,
OpenAIProvider,
RunRequest,
run_to_completion,
)
async def main() -> None:
app = CayuApp()
# Регистрация провайдера (берет ключ из OPENAI_API_KEY)
app.register_provider(OpenAIProvider(), default=True)
app.register_agent(AgentSpec(name="assistant", model="gpt-4o"))
# Надежный запуск с фиксацией событий в сессии
outcome = await run_to_completion(
app,
RunRequest(
agent_name="assistant",
messages=[Message.text("user", "Объясни концепцию durable agent execution.")],
),
)
if outcome.ok:
print(outcome.final_text)
else:
print(f"Ошибка {outcome.status}: {outcome.error}")
asyncio.run(main())
pip install cayu
# Генерация готового каркаса проекта
cayu new myagent
cd myagent
# Запуск проверок и тестов
cayu check --fail-on warning --json
pytest
#Python #Cayu #AIAgents #LLM #AgenticAI #DevTools #MachineLearning #OpenSource #Backend #SoftwareEngineering
https://github.com/cayu-dev/cayu
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - cayu-dev/cayu: Cayu is an open-source Python framework for building and running domain-specific long-horizon agents, with…
Cayu is an open-source Python framework for building and running domain-specific long-horizon agents, with a durable runtime built in. - cayu-dev/cayu
👍2⚡1
Engrim - это универсальный открытый стандарт эпизодической памяти для ИИ-агентов и кодинг-ассистентов, позволяющий свободно переключаться между различными инструментами и моделями (Claude Code, Cursor, Codex CLI, Google Antigravity, GitHub Copilot CLI, OpenCode, Windsurf) на одной кодовой базе без потери архитектурных решений, ограничений и проектного контекста.
Главная проблема современных чат-сессий при разработке — «ловушка 200k-токенов»: повторная отправка сотен тысяч токенов сырых логов размывает внимание LLM, вызывает галлюцинации и раздувает стоимость вызовов, а очистка чата (
/clear) сбрасывает контекст до нуля. Engrim решает это заменой сырой истории диалога на компактный, высокоточный пак рабочей памяти (~4000 символов, менее 1000 токенов / <1% окна контекста), который хранится локально в SQLite./clear. Следующая сессия автоматически подхватывает актуальные архитектурные решения, состояние проекта и указатель [▶️ RESUME HERE].~/.engrim/memory.db (режим SQLite WAL, права доступа POSIX 0600). Никакой телеметрии, облачной синхронизации и риска утечки проприетарного кода в сторонние SaaS-сервисы.origin_agent: claude-code, cursor, antigravity, codex и т.д.). В памяти четко видно, кто переключил базу данных на PostgreSQL или стандартизировал схемы Pydantic.model2vec), работая полностью на процессоре без необходимости в GPU.engrim doctor --fix): Проводит аудит базы данных, проверяет статус хуков жизненного цикла во всех средах и автоматически исправляет пути к бинарникам при смене каталогов или переносе конфигов между машинами.engrim_add, engrim_recall, engrim_context и engrim_review.Установка:
pip install engrim
Автоматическая настройка всех сред разработки на машине:
# Сам находит установленные Claude Code, Cursor, Codex, Copilot и др. и прописывает хуки/MCP
engrim setup
# Диагностика и автоматическое исправление путей:
engrim doctor --fix
Добавление важного архитектурного решения вручную:
engrim add -t decision -s "Перешли на PostgreSQL и нормализовали схемы данных"
#Engrim #Python #AIAgents #ClaudeCode #Cursor #Codex #LLM #DevTools #OpenSource #SoftwareEngineering #Architecture #MCP
https://github.com/timgordontg/engrim
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - timgordontg/engrim: The Universal Cross-Model Episodic Memory Standard. Local-first, project-scoped SQLite engine for…
The Universal Cross-Model Episodic Memory Standard. Local-first, project-scoped SQLite engine for Google Antigravity, Claude Code, Cursor, Codex CLI, GitHub Copilot CLI, and OpenCode. Zero cloud lo...
Hyperresearch - это специализированная среда и фреймворк (research harness) для Claude Code, превращающий ассистента в автономного агента глубоких исследований (Deep Research Agent) с автоматической верификацией источников и защитой от галлюцинаций.
Инструмент берет один исследовательский промпт и прогоняет его через адаптивный 16-шаговый пайплайн: от декомпозиции запроса и поиска сотен источников до параллельной критики черновиков и точечного патчинга финального отчета. Все собранные материалы сохраняются в локальное постоянное хранилище, благодаря чему агент «умнеет» от сессии к сессии.
[Read, Edit] и может вносить только точечные хирургические правки — переписать отчет целиком он физически не может.hpr scholar search одновременно опрашивает OpenAlex, Crossref, CORE, DOAB, ClinicalTrials.gov, SEC EDGAR и FRED, возвращая единый дедуплицированный список (статьи, монографии, клинические испытания, отчеты регуляторов).<untrusted-source>, гарантируя, что внедренные на страницах инструкции не перехватят управление агентом.Установка:
cd your-project
pip install hyperresearch && hyperresearch install
Запуск исследования в интерфейсе Claude Code:
/hyperresearch Объясни состояние рынка квантовых вычислений на ионных ловушках
#Hyperresearch #ClaudeCode #DeepResearch #AIAgents #Anthropic #Python #Research #LLM #OpenSource #DevTools #DataScience
https://github.com/jordan-gibbs/hyperresearch
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - jordan-gibbs/hyperresearch: Convert Claude Code or Codex into the most intelligent Deep Research Agent. Collect, search…
Convert Claude Code or Codex into the most intelligent Deep Research Agent. Collect, search, and synthesize web research into a persistent, searchable wiki that builds on itself. Hosted API + MCP: ...
⚡2👍2 1
TonIO - это многопоточный асинхронный рантайм для free-threaded Python (сборки без GIL), написанный на Rust поверх крейта
mio и вдохновленный архитектурой Tokio, Trio и TinyIO.В отличие от стандартного
asyncio, чей цикл событий (event loop) жестко привязан к одному системному потоку, TonIO спроектирован под реалии современного многопоточного Python 3.13+ (PEP 703): рантайм автоматически распределяет и исполняет корутины параллельно на нескольких ядрах процессора.tonio.colored предоставляет привычный синтаксис async / await.tonio позволяет писать асинхронный код через обычные генераторы и yield, полностью избавляя от проблемы «цветных функций».mio: Высокопроизводительный неблокирующий системный I/O (epoll, kqueue, IOCP) и планировщик задач прямо под капотом Python.tonio.scope() гарантирует корректную отмену и сбор всех дочерних корутин при выходе из контекста или возникновении исключений.tonio.select() для конкурентных гонок задач (отменяет оставшиеся корутины при первом завершении).Event и комбинируемые ожидатели Waiter через операторы пересечения и объединения (w1 & w2, w1 | w2).Lock, Semaphore, Barrier и каналы передачи сообщений (bounded и unbounded) с неблокирующими методами send_nowait / receive_nowait.open_tcp_stream, serve_tcp).tonio.io для подключения любых файловых дескрипторов ОС к системному поллеру.tonio.fs и управление подпроцессами (run_process, open_process).@pytest.mark.tonio и авто-режимом для тестирования асинхронного кода.С классическим синтаксисом
async / await:import tonio.colored as tonio
async def fetch_data(task_id: int):
await tonio.sleep(0.5)
return f"Результат {task_id}"
@tonio.main
async def main():
# Параллельный запуск задач в пуле потоков рантайма
parallel = tonio.spawn(
fetch_data(1),
fetch_data(2)
)
extra = await fetch_data(3)
res1, res2 = await parallel
print([res1, res2, extra])
main()
С синтаксисом на чистом
yield (без async/await):import tonio
def fetch_data(task_id: int):
yield tonio.sleep(0.5)
return f"Результат {task_id}"
@tonio.main
def main():
parallel = tonio.spawn(fetch_data(1), fetch_data(2))
extra = yield fetch_data(3)
res1, res2 = yield parallel
print([res1, res2, extra])
main()
⚠️ Важно: Проект находится в активной разработке (WIP), не совместим напрямую с объектами asyncio (для интеграций доступен проект-патчер TonIO-Monkey) и рассчитан исключительно на free-threaded Python без GIL.
#Python #Rust #TonIO #Async #NoGIL #FreeThreaded #Tokio #Concurrency #Multithreading #Performance #DevTools #OpenSource
https://github.com/gi0baro/tonio
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - gi0baro/tonio: A multi-threaded async runtime for Python
A multi-threaded async runtime for Python. Contribute to gi0baro/tonio development by creating an account on GitHub.
👍3🔥3
Большинство инженеров привыкли к ИИ в виде чатов или расширений для автодополнения в IDE. Claude Code переносит агента прямо в терминал: он умеет самостоятельно исследовать архитектуру проекта, читать и редактировать файлы, выполнять тесты, диагностировать логи сборки и работать с Git.
Обучающая программа Claude Academy помогает перейти от поверхностного использования к продвинутым паттернам агентной разработки.
📚Чему учит курс:
CLAUDE.md, оптимизация расхода токенов, алгоритмическое сжатие сессий (/compact) и сброс контекста без потери ключевых архитектурных договоренностей.# Глобальная установка Claude Code
npm install -g @anthropic-ai/claude-code
# Запуск в корне вашего репозитория
cd my-project
claude
#ClaudeCode #Anthropic #Claude #ClaudeAcademy #AIAgents #CLI #DevTools #Programming #LLM #SoftwareEngineering #MCP
Please open Telegram to view this post
VIEW IN TELEGRAM
Claude Academy
How to Use Claude Code: Tutorials & Course · Claude Academy
Learn how to use Claude Code with the Claude Code 101 course and step-by-step tutorials on skills, effort levels, and rolling it out to your team.
Kev - это семейство открытых компактных моделей принятия решений (decision models) на базе Qwen3.5 и Qwen3.8, вдохновленное архитектурой Jev и API TypeSafe System One.
Вместо того чтобы гонять тяжелые генеративные LLM ради простых задач классификации, роутинга и скоринга, Kev выполняет быстрый направленный анализ текста и возвращает строго калиброванные вероятности по каждому вопросу. Это позволяет коду автоматически маршрутизировать уверенные кейсы и передавать пограничные ситуации операторам-людям.
noul — бинарные вопросы (да/нет) с выдачей точной вероятности.choice — множественный выбор из списка вариантов с распределением вероятностей и метрикой уверенности.score — рейтинговая шкала оценки (например, уровень срочности или тональности) со средним баллом.typesafe-sdk на свой локальный инстанс Kev без изменения клиентского кода.Kev-0.8B — работает на ноутбуках и Apple Silicon через нативный бэкенд MLX.Kev-4B и Kev-9B — оптимальный баланс точности и скорости (работают на картах уровня L40S, A100, H100).Kev-27B — флагман на базе Qwen3.8 для 80 ГБ GPU, практически не уступающий проприетарному Jev по качеству на сложных задачах.--init_from). Также доступен готовый агентский скилл (kev-finetune) для запуска цикла обучения и деплоя в облаке Modal.from typesafe_sdk import Choice, Noul, Score, TypeSafeClient
# Подключение к локальному серверу Kev
client = TypeSafeClient(
api_key="local",
base_url="http://127.0.0.1:8009",
model="kev-latest",
)
# Анализ тикета службы поддержки
response = client.system_one(
state="Заказ задержался на 2 недели, привезли не тот размер. Еще и списали деньги дважды!",
questions={
"billing": Noul(instructions="Вопрос связан с оплатой или списанием средств?"),
"department": Choice(
instructions="В какой отдел направить тикет?",
criteria={
"billing": "Счета, оплаты и возвраты денег",
"shipping": "Статус доставки, задержки курьера",
"returns": "Обмен и возврат бракованного товара",
},
),
"urgency": Score(
instructions="Оцените срочность тикета",
criteria=["может подождать", "в течение недели", "срочно сегодня"],
),
},
)
# Извлечение результатов
print("Вероятность проблемы с биллингом:", response.nouls["billing"].noul)
print("Целевой отдел:", response.choices["department"].choice)
print("Срочность:", response.scores["urgency"].score)
Локальный запуск через
uv:git clone https://github.com/jaredpalmer/kev.git && cd kev
uv sync --extra serve
# Запуск сервера (CUDA / ROCm / Apple Silicon MLX подхватятся автоматически):
uv run --extra serve python -m kev.serve --run jaredpalmer/kev-4b --port 8009
#Kev #MachineLearning #LLM #DecisionModels #Qwen #NLP #Classification #Python #MLX #OpenSource #DevTools
https://github.com/jaredpalmer/kev
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - jaredpalmer/kev: Jev-like family of decision models built on top of Qwen3.5/3.8 you can train and run on your own
Jev-like family of decision models built on top of Qwen3.5/3.8 you can train and run on your own - jaredpalmer/kev
1👍4 2
Reef - это первая открытая инфраструктура для создания непрерывно самосовершенствующихся ИИ-агентов (continually self-improving agents), объединяющая в единый контур инференс, сбор обратной связи, дообучение и версионированную доставку обновлений.
Большинство современных агентов статичны: они повторяют одни и те же ошибки, пока разработчик вручную не перепишет системный промпт или не дообучит новую модель. Reef автоматизирует этот цикл: агент учится прямо в процессе эксплуатации на основе взаимодействия с пользователями и внешними верификаторами.
x-reef-agent-record-id).Reefine): Если у вас нет кластера GPU, агент может оптимизировать свой «обвес» — системные инструкции, регламенты поведения и код кастомных инструментов/скиллов через обращение к внешнему API. Достаточно поставить задачу на естественном языке (например: «перед исправлением бага всегда пиши воспроизводящий падающий тест»), и агент сам внесет правки в свои правила и протестирует обновленную конфигурацию.import httpx
reef = httpx.Client(
base_url="http://127.0.0.1:8900",
headers={"Authorization": "Bearer reef-local", "x-reef-scenario": "customer-support"}
)
# 1. Отправляем стандартный запрос
response = reef.post(
"/v1/chat/completions",
json={
"model": "Qwen/Qwen2.5-1.5B-Instruct",
"messages": [{"role": "user", "content": "Помоги оформить возврат заказа #1234"}],
},
)
response.raise_for_status()
# Забираем чек транзакции из заголовков
receipt_id = response.headers["x-reef-agent-record-id"]
answer = response.json()["choices"][0]["message"]["content"]
# 2. Отправляем оценку качества ответа для запуска цикла обучения
reef.post(
"/reef/report",
json={
"score": 1.0,
"feedback": "Отличный ответ: запросил детали чека и назвал корректные сроки",
"references": [receipt_id],
},
)
# Требуется установленный git-lfs в системе
uv pip install reef-infra
Быстрый запуск сервера инференса:
uv run reef serve --inference.model-path Qwen/Qwen2.5-1.5B-Instruct
#Reef #Python #AIAgents #LLM #ReinforcementLearning #SGLang #Slime #MachineLearning #OpenSource #DevTools #PostTraining
https://github.com/Human-Agent-Society/reef
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - Human-Agent-Society/reef: Infrastructure for continually self‑improving agents
Infrastructure for continually self‑improving agents - Human-Agent-Society/reef
👍2 2
Fastlogging-rs - это сверхбыстрый и универсальный кросс-язычный фреймворк для логирования, написанный на Rust и предоставляющий унифицированный API для Python, Rust, C/C++, Go, Java и C#.
Главная проблема традиционных логгеров (например, стандартного модуля
logging в Python) — синхронный ввод-вывод, способный сильно просаживать производительность под высокой нагрузкой.fastlogging-rs решает это архитектурно: вызовы логов абсолютно неблокирующие (non-blocking) и потокобезопасные, а сброс данных во внешние приемники происходит в фоновых потоках. В бенчмарках на запись в файл с ротацией он оказывается быстрее стандартного Python-логгера более чем в 100 раз (0.17 с против 35.2 с).multiprocessing / child processes) в основной процесс с поддержкой глубоких уровней вложенности.JSON, XML, YAML).from fastlogging import Logging
# Инициализация и логирование
log = Logging()
log.info("Привет из fastlogging!")
# Корректное завершение фоновых потоков
log.shutdown(False)
#Fastlogging #Rust #Python #Logging #Performance #Backend #DevTools #Cpp #Golang #Java #OpenSource
https://github.com/brmmm3/fastlogging-rs
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - brmmm3/fastlogging-rs: High-performance async Rust logging library with non-blocking writers and bindings for C, C++,…
High-performance async Rust logging library with non-blocking writers and bindings for C, C++, C#, Go, Java and Python - brmmm3/fastlogging-rs
👍3⚡1
Bashautom - это легковесная Python-библиотека для управления персистентными (долгоживущими) сессиями Bash, сохраняющая контекст и состояние шелла между последовательными командами.
При использовании стандартного
subprocess.run() на каждый вызов порождается абсолютно новый изолированный процесс: изменения рабочей директории (cd), экспортированные переменные (export) и активированные виртуальные окружения (source .env) моментально сбрасываются. Библиотека pexpect решает проблему персистентности, но завязана на хрупкий интерактивный парсинг шелл-промптов.bashautom держит один живой процесс /bin/bash в фоновом режиме и возвращает чистый структурированный результат по каждой команде без необходимости писать регулярные выражения и шаблоны expect.cwd) и результаты выполнения скриптов через source сохраняются между вызовами метода .execute().CommandResult: Каждая команда возвращает подробный статус: stdout, stderr, exit_code, флаг success, флаг timed_out и точное время выполнения в секундах (duration).timeout=N), она принудительно прерывается, но сама bash-сессия остается живой и готовой принимать следующие команды.stream_callback) для чтения stdout/stderr по мере генерации (полезно для логов сборки и долгих циклов).SessionManager): Удобное создание, координация и параллельное управление несколькими именованными bash-сессиями в разных директориях.set_env(), get_env(), get_cwd(), проверку PID и флага alive.from bashautom import Session
with Session() as s:
# Состояние сохраняется от шага к шагу:
s.execute("cd /opt/myproject")
s.execute("source .env")
s.execute("export BUILD_ID=42")
# Выполнение с контролем времени
result = s.execute("make build", timeout=120)
if result.success:
print(f"Сборка завершена за {result.duration:.2f} сек")
print(result.stdout)
else:
print(f"Ошибка (код {result.exit_code}):", result.stderr)
Потоковый вывод (Streaming):
from bashautom import Session
from bashautom.session import StreamEvent
def on_output(event: StreamEvent):
print(f"[{event.stream}] {event.data.strip()}")
with Session() as s:
s.execute("for i in 1 2 3; do echo $i; sleep 0.5; done", stream_callback=on_output)
pip install bashautom
#Bashautom #Python #Bash #DevOps #Automation #Linux #MacOS #CLI #Scripting #OpenSource #DevTools
https://github.com/huskago/bashautom
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - huskago/bashautom: Persistent bash sessions for Python - stateful shell automation with timeouts, streaming, and multi…
Persistent bash sessions for Python - stateful shell automation with timeouts, streaming, and multi-session support. - huskago/bashautom
👍3 1
Ollaya - это CLI-утилита и локальный демон для запуска открытых моделей принятия решений (decision models), работающий по тому же принципу и с тем же удобством, как Ollama запускает генеративные LLM.
Модели принятия решений принципиально отличаются от привычных чат-ботов: они не генерируют текст токен за токеном. Вместо этого модель принимает входящий контекст (письмо, тикет техподдержки, произвольный JSON) и список типизированных вопросов, а затем за один прямой проход (forward pass) за миллисекунды возвращает математически откалиброванные вероятности по каждому пункту.
laya:en (на базе ModernBERT) отвечают на 5 вопросов за 8–10 мс на RTX 4090 и доли секунды на обычном CPU.choice — множественный выбор категории с распределением вероятностей;noul — бинарные вопросы (да/нет);score — оценка по шкале (уровень злости клиента, срочность и т.д.)./v1/systemone. Код, написанный под SDK TypeSafe, переключается на локальный инстанс простой установкой переменной TYPESAFE_BASE_URL=http://localhost:11435.ollaya run, ollaya pull, ollaya list, ollaya ps, ollaya rm.ollaya mcp) позволяет в одну команду подключить локальные классификаторы к Claude Code, Cursor или Claude Desktop.Dockerfile:
FROM laya
QUESTIONS ./triage.json
PARAMETER precision fp32
winnow:e4b — рекомендуемая флагманская модель (файнтьюн Gemma 4 в формате GGUF через llama.cpp). Точность 0.722, время ответа ~89 мс на RTX 4090.laya / laya:en / laya:multilingual — быстрый роутер и энкодеры для мгновенной классификации на 100+ языках даже на слабом процессоре.kev (kev:4b, kev:9b) — открытые откалиброванные модели принятия решений на базе архитектуры Qwen3.5.qwen3guard — специализированная модель фильтрации контента и безопасности (safe / controversial / unsafe).# Мгновенная классификация тикета саппорта
ollaya run winnow:e4b --preset triage "Уже третий раз за год списываете деньги дважды! Верните платеж сегодня же или я ухожу к конкурентам."
Вывод модели:
intent refund ███████████████░ 0.91
is_urgent yes ███████████████░ 0.92
frustration 2.89 / 3 very angry or using stron… ██████████████░░ 0.86
refund_requested yes ████████████████ 0.99
churn_risk yes ████████████████ 0.99
Linux / macOS (Apple Silicon):
curl -fsSL https://ollaya.dev/install.sh | sh
Windows (PowerShell):
irm https://ollaya.dev/install.ps1 | iex
#Ollaya #MachineLearning #DecisionModels #Ollama #Classification #NLP #AI #DevTools #OpenSource #LocalAI #LLM
https://github.com/ollaya-dev/ollaya
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - ollaya-dev/ollaya: Run open decision models locally: pull and serve Laya, decider, NLI and GLiClass behind a TypeSafe…
Run open decision models locally: pull and serve Laya, decider, NLI and GLiClass behind a TypeSafe-compatible API. Ollama for decision models. - ollaya-dev/ollaya
👍3 1
Taste-Bench - это бенчмарк для языковых моделей и ИИ-агентов, оценивающий их инженерную интуицию и «вкус» (taste) — способность выбирать верное направление на ключевых развилках при решении сложных долгосрочных задач (long-horizon tasks).
В длительных циклах автономной разработки или ML-исследований неверное решение на раннем этапе часто кажется вполне логичным в моменте, но в итоге заводит агента в тупик и сжигает весь бюджет контекста. Taste-Bench проверяет, способна ли модель почувствовать правильный вектор развития еще до того, как последствия станут очевидными.
🧩Как устроен датасет:
Модели на вход подается описание задачи, накопленный контекст работы агента до развилки (до 64k токенов) и два альтернативных варианта следующего действия (A и B). Задача — выбрать шаг, который в скрытом продолжении реальной траектории привел к успеху.
Все 502 вопроса бенчмарка добыты напрямую из логов реальных запусков без ручной разметки экспертами:
• 🔀 Параллельные развилки (Parallel forks): Независимые попытки решить одну задачу, разошедшиеся в определенной точке с противоположным итоговым результатом (одна прошла тесты, вторая упала).
⚖️Бескомпромиссный протокол тестирования:
Оценка проводится по протоколу
paired_order_v1: каждый вопрос задается дважды с перестановкой вариантов (A/B и B/A). Балл засчитывается только при верном выборе в обоих случаях.• Случайное угадывание дает всего 25%.
• Стратегия «всегда выбирать A» дает 0%.
Даже ведущие модели с трудом преодолевают планку в 50–60% точности:
git clone https://github.com/wbopan/tastebench && cd tastebench
uv sync
# Загрузка датасета (требуется доступ на Hugging Face)
uv run tb download
# Запуск оценки модели через OpenAI-совместимый эндпоинт
export TASTEBENCH_API_KEY="your-key"
uv run tb run --model gpt-5.5 --api https://api.openai.com/v1/chat/completions
# Подсчет итогового скора
uv run tb score runs/gpt-5.5/<date>
Датасет доступен в библиотеке
datasets:from datasets import load_dataset
rows = load_dataset("wenbopan/taste-bench", "engineering", split="test", revision="v1.0")
#TasteBench #Benchmark #AIAgents #LLM #MachineLearning #SWEbench #SoftwareEngineering #DataScience #OpenSource #DevTools #Eval
https://github.com/wbopan/tastebench
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - wbopan/tastebench: Taste-Bench: measuring the long-horizon judgment of LLM agents at real decision forks
Taste-Bench: measuring the long-horizon judgment of LLM agents at real decision forks - wbopan/tastebench
👍2🔥2 1
Jeff - это сверхлегкая (0.8B параметров) открытая модель «Системы 1» (System 1), спроектированная для быстрого принятия решений и многоклассовой классификации в любых предметных областях за миллисекунды.
Вместо того чтобы тратить секунды и десятки гигабайт видеопамяти тяжелых генеративных LLM на выбор из нескольких вариантов, роутинг или валидацию, Jeff делает выбор за один прямой проход (forward pass) без генерации лишнего текста и возвращает строго откалиброванные вероятности.
guard — защита от промпт-инъекций и джейлбрейков (точность 98.2%);tools — выбор вызываемого инструмента для агентов (97.2%);ground — проверка обоснованности ответа источниками (анти-галлюцинации);triage и support-intents — маршрутизация тикетов и определение намерений клиентов;legal-clauses, aml, sanctions, soc — доменные проверки для финтеха, комплаенса и ИБ.from jeff import Client
from jeff.client import choice_question, yes_no_question
# Подключение к локальному инстансу с нужным адаптером
jeff = Client("http://localhost:8765", model="triage")
# Мгновенная классификация тикета
answers = jeff.ask(
"Посылка пришла разбитой, требую немедленный возврат денег.",
{
"team": choice_question(
{
"refunds": "Возвраты и финансовые вопросы",
"parcels": "Поврежденные или утерянные посылки",
"login": "Проблемы со входом и учетной записью",
},
instructions="Какая команда должна обработать тикет?",
),
"angry": yes_no_question("Клиент выражает злость?"),
},
)
# Получаем категорию с откалиброванной вероятностью
print(answers.choice("team").key) # parcels
print(answers.choice("team").confidence) # 0.94
git clone https://github.com/firelex/jeff && cd jeff
uv sync --no-default-groups --extra lora
# Скачивание базы и адаптеров
uv run hf download mstrasser/jeff-base --revision v1.3 --local-dir jeff-base-v1.3
uv run hf download mstrasser/jeff-adapter-triage --revision v1.3 --local-dir adapters/triage
# Запуск сервера
JEFF_CHECKPOINT=jeff-base-v1.3 JEFF_ADAPTERS=adapters PORT=8765 uv run --extra lora jeff-serve
#Jeff #MachineLearning #LLM #DecisionModels #System1 #Qwen #Classification #AI #DevTools #OpenSource #LocalAI #AgenticAI
https://github.com/firelex/jeff
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - firelex/jeff: Millisecond decisions, any domain: a 0.8B open "System 1" model that picks between your options with calibrated…
Millisecond decisions, any domain: a 0.8B open "System 1" model that picks between your options with calibrated probabilities. One base, swappable LoRA adapters, on your own hardw...
👍3 1
RightWayUp - это открытая модель компьютерного зрения (Computer Vision) от команды ORTUS AI, предназначенная для определения угла поворота (roll) изображений в полном диапазоне 360° с шагом в 1° и механизмом калиброванного воздержания от ответа (calibrated abstention).
Большинство классических решений либо классифицируют поворот только с шагом 90° (0°, 90°, 180°, 270°), либо «считывают» ориентацию не по смыслу сцены, а по артефактам повернутой 8×8 сетки блоков JPEG. Кроме того, обычные модели пытаются повернуть даже те кадры, где верха и низа объективно не существует.
RightWayUp решает эти проблемы: модель возвращает точный угол по часовой стрелке (
angle_cw), скор уверенности (confidence), флаг воздержания (abstain) и умеет автоматически сохранять исправленный снимок.abstain, исключая ложные срабатывания в автоматических пайплайнах.Установка:
pip install rightwayup
Использование через CLI:
# Определение угла поворота
rightwayup predict frame.jpg
# Автоматическое выравнивание с привязкой к 90° (пропускает кадры с abstain)
rightwayup fix photo.jpg --snap 90 --out upright/
Использование в Python:
from PIL import Image
from rightwayup import Orienter
# Инициализация модели (pico, nano, fast, balanced, pro, max)
orienter = Orienter(tier="balanced")
# Предсказание угла
result = orienter.predict("frame.jpg")
print(f"Поворот: {result.angle_cw}°, Уверенность: {result.confidence}, Воздержание: {result.abstain}")
# Коррекция положения
corrected_img = orienter.correct(Image.open("photo.jpg"), snap=90)
Модели доступны в форматах ONNX (FP32, FP16, INT8), Core ML (для Apple Silicon / Neural Engine) и TensorRT.
#RightWayUp #ComputerVision #MachineLearning #DINOv2 #AI #Python #ONNX #CoreML #ImageProcessing #DevTools #OpenSource
https://github.com/ortusaitech/rightwayup
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - ortusaitech/rightwayup: Full-circle image roll estimation with calibrated abstention. Open weights, Apache-2.0. By ORTUS…
Full-circle image roll estimation with calibrated abstention. Open weights, Apache-2.0. By ORTUS AI, the team behind CHEQIT. - ortusaitech/rightwayup
⚡2 2
Flowfile - это инструмент для визуального построения ETL-пайплайнов, который компилируется в высокопроизводительный код на Polars.
Главная идея проекта — стереть грань между визуальным no-code/low-code и классической разработкой: визуальный холст (canvas) с нодами и Python-код являются двумя синхронными представлениями одного и того же графа вычислений.
Flowfile работает без тяжелых кластеров (вроде Apache Spark): все преобразования выполняются in-process на базе Polars, утилизируя ресурсы одной машины на максимум.
import polars as pl) без необходимости тащить Flowfile на прод. Графы сохраняются в человекочитаемом YAML для версионирования в Git.demo.flowfile.org без установки и сервера;pip или готовые десктопные приложения (Tauri);Вы можете описать пайплайн кодом через API в стиле Polars и в один вызов открыть его в визуальном редакторе:
import flowfile as ff
from flowfile import col, open_graph_in_editor
# Загрузка и трансформация данных
df = ff.from_dict({
"category": ["A", "B", "A", "C", "B"],
"value": [100, 200, 150, 300, 250]
})
result = (
df.filter(col("value") > 150)
.with_columns((col("value") * 2).alias("double_value"))
.group_by("category")
.agg(col("value").sum().alias("total"))
)
# Открытие собранного графа в визуальном интерфейсе
open_graph_in_editor(result.flow_graph)
Установка и запуск UI на локальной машине (Python 3.10–3.13):
pip install Flowfile
flowfile run ui
Командный запуск в Docker Compose:
git clone https://github.com/edwardvaneechoud/Flowfile.git
cd Flowfile
docker compose up -d
# Веб-интерфейс будет доступен по адресу http://localhost:8080
#Flowfile #Python #Polars #ETL #DataEngineering #DataScience #SQL #DeltaLake #DuckDB #OpenSource #DevTools #DataPipelines
https://github.com/Edwardvaneechoud/Flowfile
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - Edwardvaneechoud/Flowfile: Flowfile is a visual ETL tool and Python library combining drag-and-drop workflows with Polars…
Flowfile is a visual ETL tool and Python library combining drag-and-drop workflows with Polars dataframes. Build data pipelines visually, define flows programmatically with a Polars-like API, and e...
👍4 1
TurboPython - это опережающий (AOT) компилятор, транслирующий статически типизированный Python через современный C++23 напрямую в автономный нативный бинарник без интерпретатора, сборщика мусора и GIL.
В отличие от Cython, mypyc или Nuitka, сгенерированный код вообще не опирается на рантайм CPython и подсчет ссылок, а в отличие от Codon и Shed Skin — не использует сторонний сборщик мусора (GC). Памятью управляет строгая модель владения (Ownership) в стиле Rust, проверяемая прямо во время компиляции. При этом исходные файлы остаются синтаксически валидным кодом на Python, понятным привычным линтерам, IDE и кодинг-агентам.
@noalloc.Own[T], а неявные копирования данных подсвечиваются компилятором еще до запуска программы.spawn) нативных потоков ОС без ограничений GIL. Компилятор на этапе сборки статически проверяет контракты Send и Sync, предотвращая состояние гонки (data races). Доступ к разделяемым ресурсам идет через знакомые примитивы: Arc[Mutex[T]], RwLock, атомики и каналы.int32), литералы и функция len() по умолчанию 32-битные с проверкой переполнения на аппаратном уровне (ошибка вместо тихого заворачивания значения). Стандартный int остается длинной арифметикой произвольной точности.@native, @export(binding="C")), генерирует чистый C++ код с готовыми CMakeLists.txt и умеет компилироваться как в автономные бинарники, так и в нативные модули расширения для стандартного CPython.from dataclasses import dataclass
from tpy import Own, int32
@dataclass
class Stats:
count: int32
total: int32
longest: int32
# Функция передает владение объектом Stats вызывающей стороне
def measure(words: list[str]) -> Own[Stats]:
total, longest = 0, 0
for w in words:
total += len(w)
longest = max(longest, len(w))
return Stats(len(words), total, longest)
s = measure("the quick brown fox jumps over the lazy dog".split())
print(s.count, s.total, s.longest)
Установка компилятора (требуется Python 3.12+ и Clang 19+ / GCC 13+):
# Установка с бандлом компилятора Zig
pip install "tpy-lang[bundled]"
Компиляция и запуск:
# Запуск через JIT-подобный вызов или REPL
tpy stats.py
# Сборка в автономный нативный бинарный файл
tpyc -b stats.py
./__tpyc__/stats.d/release/stats
# Просмотр сгенерированного чистого C++ кода
tpy --dump-code stats.py
#TurboPython #Python #Cpp #Compiler #AOT #Performance #Rust #NoGIL #Multithreading #DevTools #OpenSource #SoftwareEngineering
https://github.com/trozen/tpy-lang
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - trozen/tpy-lang: TurboPython: a Python-to-C++ compiler. Typed Python to native binaries with no Python runtime, no GC…
TurboPython: a Python-to-C++ compiler. Typed Python to native binaries with no Python runtime, no GC, no GIL. - trozen/tpy-lang
👍3⚡2 2