From 6ea0880f1e6e3d019a3bbf2448980811f40a0a13 Mon Sep 17 00:00:00 2001 From: Markov Andrey Date: Tue, 30 Jun 2026 21:04:05 +0000 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=B4=D0=B0=D0=BA=D1=82=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D1=82=D1=8C=20coordinator.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rag/agents/coordinator.py | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/rag/agents/coordinator.py b/rag/agents/coordinator.py index 93b0762..6d46dd3 100644 --- a/rag/agents/coordinator.py +++ b/rag/agents/coordinator.py @@ -1,4 +1,3 @@ -# rag/agents/coordinator.py """ Координатор агентов: управляет специализированными агентами и маршрутизирует запросы. """ @@ -40,9 +39,7 @@ class AgentCoordinator: Основной метод: выбирает агента и передаёт ему запрос. Если агент возвращает действие, выполняет его (или передаёт другому агенту). """ - # Простая маршрутизация: определяем ключевые слова query_lower = query.lower() - # Можно использовать классификатор намерений или просто по ключевым словам if any(kw in query_lower for kw in ["методолог", "стандарт", "гост", "методика", "регламент"]): agent_name = "methodologist" elif any(kw in query_lower for kw in ["коробочное", "типовое", "решение", "шаблон", "создай документ"]): @@ -50,8 +47,7 @@ class AgentCoordinator: elif any(kw in query_lower for kw in ["командировка", "бронирование", "билет", "отель", "календарь"]): agent_name = "personal_assistant" else: - # Если не определили, можно использовать первый зарегистрированный или общий - agent_name = "methodologist" # по умолчанию + agent_name = "methodologist" agent = self.agents.get(agent_name) if not agent: @@ -61,15 +57,11 @@ class AgentCoordinator: else: return "Нет доступных агентов для обработки запроса." - # Обрабатываем запрос агентом result = await agent.process(query, context, history, tools) if result.get("type") == "answer": return result.get("content", "") elif result.get("type") == "action": - # Если агент вернул действие (например, вызов инструмента), можно выполнить его - # и передать результат другому агенту или тому же самому. - # Для простоты мы просто вернём сообщение о необходимости действия. action = result.get("content", {}) return f"Агент запросил действие: {action}" else: