Почему ваши AI-агенты не масштабируются: локальная память и оркестрация без облака на примере OpenHuman

Я — Denis Shokhirev, архитектор агентных AI-систем из Фрайбурга. Мой стек: Claude, Supabase, n8n, Doppler, self-hosted Postgres. На проде у меня крутятся многокомпонентные агентные системы, включая OpenHuman — его работу можно видеть в реальном времени на live.gerdennisai.com. Вот реальная боль: большинство агентных AI-решений так и остаются демо — когда надо масштабировать, всё начинает «сыпаться» из-за архитектуры памяти и оркестрации. Ни один облачный сервис тут не спасает.

Где реально «сыпется» масштабирование агентов

В последние полгода я четыре раза видел один и тот же сценарий: из-за центральной облачной памяти мультиагентная система не выходит за пределы PoC. Как только подключаются реальные пользователи, latency растёт, а стоимость запросов к облаку Memory API начинает съедать маржу. Если вы строите что-то под GDPR или в чувствительных отраслях — облако вообще вылетает из рассмотрения.

Типовая проблема: централизованная память

В классических фреймворках (LangChain, AutoGen) память агента лежит или в облачном векторном хранилище, или в stateful-API. Как итог — каждый запрос идёт через сеть, блокирует задачу и увеличивает риски утечки данных. В реальности, по моим наблюдениям, в 3 из 4 продакшен-кейсов приходится вручную переписывать слой хранения на локальный Postgres, чтобы пройти аудит безопасности (OWASP, GDPR).

Локальная память: паттерн, который реально работает

Что я внедряю в проде: каждый агент пишет свою память (контекст, логи задач, краткосрочные инсайты) в локальную таблицу Postgres. Для быстрого поиска используется встроенный полнотекстовый индекс и pgvector. Это снимает три головные боли сразу:

  • Низкая и предсказуемая latency (1-5ms вместо 100+ через облако)
  • Контроль доступа и аудит на уровне базы (Postgres audit triggers, Supabase Policies)
  • Чёткая граница периметра — никаких сторонних API

Как это выглядит на практике


import psycopg2
from pgvector.psycopg2 import register_vector

conn = psycopg2.connect(dbname="agentdb", user="postgres", password="***")
register_vector(conn)

def save_agent_memory(agent_id, embedding, content):
    with conn.cursor() as cur:
        cur.execute(
            "INSERT INTO agent_memory (agent_id, embedding, content) VALUES (%s, %s, %s)",
            (agent_id, embedding, content)
        )
    conn.commit()

# Пример поиска по embedding
def search_memory(agent_id, query_embedding):
    with conn.cursor() as cur:
        cur.execute(
            "SELECT content FROM agent_memory WHERE agent_id=%s ORDER BY embedding <-> %s LIMIT 5",
            (agent_id, query_embedding)
        )
        return cur.fetchall()

Оркестрация без облака: n8n, Supabase и Doppler

В OpenHuman я ушёл от централизованных оркестраторов типа Temporal или облачных серверов. Основной workflow: n8n в Docker, Supabase (Postgres + Storage), Doppler для секретов, всё внутри закрытого VPC.

Компонент Задача Почему не облако
n8n Оркестрация задач и событий между агентами Локальная очередь, нет vendor lock-in
Supabase Хранение памяти, файлов, пользователей Контроль доступа, аудит, GDPR
Doppler Secrets management On-premise, изолированная интеграция

Пример простого workflow в n8n


nodes:
  - id: 1
    type: webhook
    parameters:
      path: /agent/task
  - id: 2
    type: postgres
    parameters:
      query: SELECT * FROM agent_tasks WHERE status='pending'
  - id: 3
    type: httpRequest
    parameters:
      url: http://localhost:8080/agent/execute
      method: POST
connections:
  - from: 1
    to: 2
  - from: 2
    to: 3

OpenHuman: что реально видно в проде

OpenHuman — это не демо, а публично доступная продакшен-система. Там вращается 5-10 агентов с разной специализацией (обработка заявок, сбор данных, валидация). Все они пишут и читают память только через локальный Postgres, никакого облачного API. Система работает стабильно при 500+ запросах в минуту, latency на чтение памяти — 3-7 мс, аудит всех действий через Postgres triggers (я использую supabase audit extension).

Что это даёт в реальных кейсах

  • Быстрый roll-back: если агент начал «тупить», его память можно откатить на одно действие через SQL.
  • Прозрачный аудит: для проверки на GDPR и ISO 27001 достаточно выгрузки из Postgres audit log.
  • Нет «скрытых» сетевых зависимостей — инфраструктура полностью on-premise.

FAQ

Можно ли полностью отказаться от облака?

Для памяти и оркестрации — да. Для генерации LLM-ответов (если использовать Claude/OpenAI) — нет, но сам state хранится локально.

Как быстро интегрировать локальную память?

Если у вас Postgres уже стоит, добавить pgvector и пару audit-триггеров — вопрос пары дней. Реальный кейс: настраивал это для клиента в финтехе за 12 часов.

Что с безопасностью?

Все доступы регулируются через Supabase Policies и audit triggers. Для DACH рынка этого достаточно, чтобы пройти аудит по BSI Grundschutz и GDPR.

Как мониторить агента?

Всё логируется в локальный Postgres: запросы, действия, память. Можно строить любые дешборды через Grafana или Supabase Realtime.

Чем это лучше облака?

У вас нет зависимости от внешних API, latency в 10-30 раз ниже, проще аудит. Особенно критично для медицины, финтеха и госсектора.

В вашей системе агенты упираются в узкое место памяти или оркестрации? Где именно: latency, аудит, стоимость, GDPR? Я реально хочу понять — где чаще всего «сыпется» прод. Я делаю бесплатный 30-мин аудит стека для DACH-команд, которые строят AI в регулируемых отраслях. Пишите в LinkedIn или @ger_dennis_ai.

Read more

Computer-Use-Agenten scheitern an Pixeln: wie Sie auf stabile UI-Referenzen über Accessibility Trees umstellen und fehleranfällige Desktop-Automatisierung nicht mehr ständig reparieren

von Denis Shokhirev, Enterprise AI Architect aus Freiburg im Breisgau Ich bin Denis Shokhirev, Agentic AI Systems Architect in Freiburg im Breisgau, Germany, und bei DennisCraft AI Studio setze ich produktive KI-Systeme für DACH-B2B-Kunden auf Basis von Claude, Supabase, n8n, Doppler und selbst betriebenem Postgres um. Die teuersten Fehler in

By Denis Shokhirev

Компьютерные агенты ломаются на пикселях: как перейти на stable UI refs через accessibility tree и перестать чинить flaky desktop automation

Я Denis Shokhirev, Agentic AI Systems Architect из Freiburg im Breisgau, Germany, и в DennisCraft AI Studio я собираю production AI-системы для DACH B2B на Claude, Supabase, n8n, Doppler и self-hosted Postgres. Самая дорогая поломка в desktop automation, которую я вижу у клиентов, почти никогда не связана с моделью: агент

By Denis Shokhirev