Об этом проекте
Poindexter — это конвейер контента с открытым исходным кодом (Apache 2.0, Glad Labs LLC), предназначенный для запуска на локальной машине одного оператора. Согласно README, это производственная система, лежащая в основе gladlabs.io, с более чем 200 опубликованными постами и 2000+ зафиксированными запусками конвейера; она позиционируется именно для соло-операторов и независимых издателей, а не для маркетинговых команд, ищущих облачное приложение с запуском в один клик.
Что делает конвейер: он находит потенциальные темы в HackerNews, Dev.to и настраиваемых нишевых фидах; исследует каждую тему с помощью веб-поиска и проверки источников; пишет развернутые черновики с использованием локальных моделей Ollama; проверяет каждый черновик с помощью многомодельного состязательного QA; проводит валидацию на отсутствие галлюцинаций в именах, статистике и цитатах; и публикует готовые работы в виде статического JSON, RSS и JSON Feed 1.1 в любое S3-совместимое хранилище. Дополнительные опциональные этапы добавляют AI-изображения, аудиоподкасты и короткие видеоролики из текста. Система также осуществляет самомониторинг через дашборды Grafana и демон-сторож (watchdog) с уведомлениями в Telegram или Discord.
Набор моделей по умолчанию включает четыре модели Ollama: gemma3:27b в качестве автора и резервного варианта, phi4:14b как критик состязательного QA, qwen3:8b для быстрых задач, таких как SEO и маршрутизация, и nomic-embed-text для эмбеддингов в pgvector. В README отмечается, что критик намеренно принадлежит к другому семейству моделей, чем автор. Маршрутизация моделей (автор, критик, исследование, суммаризатор, эмбеддер) хранится в базе данных и может быть изменена во время выполнения; дополнительные модели зрения и голоса подгружаются только для функций, в которых они необходимы. Облачные провайдеры (Anthropic, OpenAI, Groq, OpenRouter и другие) доступны через опциональный плагин LiteLLM с контролем затрат.
Особое внимание в проекте уделяется контролю качества. В README описано 15 «защитных рельсов» (QA rails), сочетающих LLM-критиков разных моделей, оценки DeepEval и Ragas, детерминированные валидаторы против галлюцинаций, проверку цитат по корпусу исследований и визуальный QA для сгенерированных изображений. Каждый рельс настраивается в базе данных как рекомендательный или блокирующий, пороги настраиваются в режиме реального времени, а черновики, почти прошедшие проверку, получают один ограниченный цикл доработки перед отклонением.
Архитектурно система представляет собой ядро, модули и плагины возможностей. Компоненты не импортируют друг друга; PostgreSQL с pgvector выступает в роли общей шины. Конвейер контента представляет собой декларативный LangGraph DAG, хранящийся в базе данных (около 47 узлов), с чекпоинтами Postgres для возобновляемых запусков, диспетчеризируемый через Prefect. Автономный демон-сторож проверяет сервисы каждые 5 минут и перезапускает упавшие компоненты, где это возможно. Конфигурация хранится в таблице app_settings (более 1700 настроек), а не в переменных окружения, и редактируется через CLI, SQL или REST; аутентификация использует OAuth 2.1 client credentials с JWT, ограниченными по потребителям.
Точки расширения организованы в 18 групп точек входа плагинов — Taps, TopicSources, провайдеры LLM/image/TTS/video/audio/caption, PublishAdapters, Probes, Jobs, Stages, Reviewers и полноценные модули. Плагины являются обычными pip-пакетами, регистрирующими точки входа setuptools; в README указано, что первым производственным плагином является провайдер LiteLLM.
Для установки требуются Docker, Ollama, Python 3.13+ и NVIDIA GPU с 8 ГБ+ VRAM (поддержка CPU есть, но работает медленно); нативная командная строка Windows/PowerShell не поддерживается, требуются Git Bash или WSL2. Профили Docker Compose варьируются от 4 контейнеров для базовой установки до 45 для полного стека оператора.
В README честно говорится о статусе: проект находится в стадии альфа, управляемого хостинга или рецепта для многопользовательской среды нет, схема базы данных еще не стабилизирована между релизами, экосистема сторонних плагинов только зарождается, а функция text-to-video остается в альфе и требует около 28 ГБ VRAM. Сообщается о наличии более 17 000 модульных тестов в CI, а также смок-тестов миграции и проверок на «битые» ссылки; каждый пуш проходит сканирование секретов, сканирование CVE и генерацию SBOM. Проект лицензирован под Apache 2.0 (перелицензирован с AGPL-3.0).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.