Браузер вместо API: автор объединил DeepSeek, Qwen и ChatGPT в единого локального агента
DeepSeek
Alibaba/Qwen
OpenAI
Разработчик представил open-source проект AI Free, который позволяет использовать веб-версии DeepSeek, Qwen и ChatGPT как транспорт для локального ИИ-агента. Вместо универсального HTTP-клиента для каждого провайдера реализован свой способ интеграции: для DeepSeek — WASM-солвер proof-of-work, для Qwen — браузерный fetch через page.evaluate, для ChatGPT — UI-автоматизация. Поверх транспорта работает общий агентный рантайм с памятью, скиллами и восстановлением после сбоев.
Автор проекта AI Free, open-source приложения для локальной работы с ИИ-агентами, рассказал о ключевых инженерных решениях, позволивших объединить DeepSeek, Qwen и ChatGPT в единую систему. Основная сложность заключалась в том, что веб-версии моделей не предоставляют стандартного API: DeepSeek требует решения proof-of-work challenge, Qwen подписывает каждый запрос динамическим кодом из фронтенда, а ChatGPT формирует служебные токены внутри React-приложения. Для DeepSeek автор реализовал локальный WASM-солвер, который вычисляет решение challenge и отправляет запрос напрямую, минуя браузер. Для Qwen используется persistent-контекст Chromium с авторизованной страницей, где запрос выполняется через page.evaluate(fetch), что позволяет использовать штатные cookies и логику подписи. Для ChatGPT выбран подход UI-автоматизации: клиент открывает страницу chatgpt.com, вводит сообщение в компоузер, запускает отправку и читает результат из DOM. Для браузерного слоя применяется Patchright с fallback на обычный Playwright. После получения ответов от моделей провайдерские клиенты приводятся к единому формату через тонкие адаптеры. Поверх них работает Agent Orchestrator, который классифицирует задачу, подбирает skill, извлекает релевантные записи из локальной памяти и запускает цикл выполнения. Браузер также используется как инструмент для действий по задаче пользователя (навигация, клики, ввод текста) через отдельный браузерный сервис, который строит компактные снимки страниц. Память в AI Free включает полнотекстовый индекс, ключевые слова, векторное сходство и граф связей между задачами, файлами и ошибками. Skills представляют собой набор инструкций и разрешённых инструментов для типовых задач. Восстановление после сбоев организовано на четырёх уровнях: страницы (пересоздание воркера), браузера (сброс singleton), провайдера (переинициализация сессии) и авторизации (повторный вход). Повторы ограничены, чтобы избежать бесконечных retry.
- Сокращения
- WASM = WebAssembly — Веб-ассемблер
- DOM = Document Object Model — объектная модель документа
- UI = User Interface — пользовательский интерфейс
Источник: Habr — хаб ИИ —
оригинал
