TGViewer
FastNews | Никита Пастухов FastNews | Никита Пастухов @fastnewsdev · 2.58K subscribers
Post #283 947
Интеграции Агента с мессенджером

Основная (и единственная) проблема при интеграции агента с любым UI - это то, как менеджить разные контексты.

Это могут быть разные чаты / топики в мессенджере или явные команды, что текущий диалог завершен и пора начинать новый.

А если у тебя агент рассчитан на несколько пользователей, то нужно еще разграничивать их контексты и не забыть про безопасность.

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

В помощь могу предложить разве что вот такой код:

from autogen.beta import Agent, config, MemoryStream

agent = Agent("tg-agent", config=config.OpenAIConfig("gpt-5"))

dp = Dispatcher()
chat_state: dict[int, MemoryStream] = {}

@dp.message(F.text)
async def on_text(message: Message) -> None:
# получаем старый контекст или создаем новый
if not (stream := chat_state.get(message.chat.id)):
stream = chat_state[message.chat.id] = MemoryStream()

# дергаем агента с этим контекстом
reply = await agent.ask(
message.text,
stream=stream,
variables={"user_id": message.chat.id},
)

# отвечаем в TG чат
await message.answer(reply.content)

asyncio.run(dp.start_polling(bot))


Чуть более развернутый пример я уже описывал в блоге AG2 - там пример с историей диалогов и переключением между ними

Но, я уверен, вы без труда справитесь с такой интеграцией. Если же вы хотите написать Web приложение, то советую посмотреть на фичи AG-UI протокола - там уже есть готовые фреймворки и на фронтенде. Про AG-UI я писал даже статью на Habr, но если все еще ничего не понятно, могу попробовать объяснить еще раз😅

#Agents
  • 👍 9
  • 🙊 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 →