TGViewer
FastNews | Никита Пастухов FastNews | Никита Пастухов @fastnewsdev · 2.58K subscribers
Post #348 1.46K
Мы полностью переписали AG2 - и готовы к релизу!

Неделю назад я говорил, что выпиливаю из AG2 весь легаси и готовлю фреймворк к выходу из беты. Так вот, этот час настал: первая бета AG2 1.0 вышла🎉

Классика (тот самый AutoGen) уехала в ag2-classic и живет в maintenance-режиме - у тех, кто на ней в проде, ничего не ломается. А `pip install ag2` теперь ставит полностью новый фреймворк: все, что мы строили в `autogen.beta` (и о чем я вам регулярно рассказывал), стало основным API.

Зачем еще один фреймворк, когда есть LangChain / CrewAI / PydanticAI?

Мой ответ - протоколы вместо абстракций. Отсюда все остальное:

Маленький публичный API на протоколах - поверх него строятся все фичи фреймворка. Меньше поверхность - предсказуемее поведение. А еще можно воткнуть свои реализации на что угодно
Агенты stateless - состояние вынесено наружу, поэтому поведение агента можно точно контролировать и воспроизводить
Акторная модель исполнения - все части фреймворка построены на событиях: любое можно перехватить и изменить, повесить свой обработчик, а то и построить логику поверх кастомных событий. Это другой уровень гибкости инструмента
Лучший DI - хуков много, и везде доступны и зависимости, и контекст управления: Depends, Inject, Variable. Даже ваш любимый dishka поддерживается🌚
Все необходимое на месте - поддержка Skills, сабагентов, динамических и бекграунд агентов, память, Shell и Coding инструменты... Написать свой Hermes можно в 10 строчек😎
Открытые протоколы на все случаи жизни - фронтенд через AG-UI, мультиагенты через A2A, MCP, A2UI. Можно даже оркестрировать Claude Code-агентов через ACP
Нормальные мидлвари - через них уже реализовано многое: сжатие контекста, OpenTelemetry и тд

Минимальный агент выглядит так:


from ag2 import Agent
from ag2.config import OpenAIConfig

agent = Agent(
"assistant",
prompt="You are a helpful assistant.",
config=OpenAIConfig("gpt-4o-mini"),
)

# Start a new conversation
reply = await agent.ask("Give me one sentence about AG2.")
print(reply.body)

# Continue the exact same conversation context
next_turn = await reply.ask("Now make it shorter.")
print(next_turn.body)


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

Финальный 1.0 - по плану, середина июля. Если вы еще выбираете, на чем писать агентов - идеальный момент потыкать бету и принести нам issues, пока API не заморожен😅

#Agents #opensource
  • ❤ 20
  • 🔥 13
  • 👍 1
  • 👏 1
More from @fastnewsdev
  1. Sep 20, 2026Последние 2 недели я заметил, что Opus 5 значительно отупел в Claude Code. Обычно такое сл…
  2. Sep 18, 2026С днем рождения🎉 Сегодня, ровно 3 года назад, 18 сентября 2023 года, вышла первая версия…
  3. Sep 17, 2026Забавно, что лучшую иллюстрацию OpenSource комьюнити я нашел в сериале про рестораны... См…
  4. Sep 14, 2026Я снова пропустил #digest агенсткого тулинга, потому что там все как-то тухленько. Но кое-…
  5. Sep 10, 2026Я сам себя заменю. Это мой карьерный план! У Прокопова был интересный пост: 20 лет точил с…
  6. Sep 7, 2026Я как-то немного потерял смысл делать #digest агентского тулинга, т.к. там сейчас только и…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →