Skip to content
2webPublic
forked from plexe-ai/plexe

About

✨ Создайте модель машинного обучения из промпта

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

190 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

plexe ✨

PyPI version Discord

backed-by-yc

Создавайте модели машинного обучения на естественном языке.

Быстрый старт | Возможности | Установка | Документация

English · Русский


plexe позволяет создавать модели машинного обучения, описывая их обычным языком. Просто объясните, что вам нужно, предоставьте набор данных — и система на базе ИИ построит полностью работоспособную модель в автоматическом агентном режиме. Также доступен управляемый облачный сервис.


Посмотрите демо на YouTube: Building an ML model with Plexe

1. Быстрый старт

Установка

pip install plexe
export OPENAI_API_KEY=<your-key>
export ANTHROPIC_API_KEY=<your-key>

Использование plexe

Укажите табличный набор данных (Parquet, CSV, ORC или Avro) и задачу на естественном языке:

python -m plexe.main \
    --train-dataset-uri data.parquet \
    --intent "predict whether a passenger was transported" \
    --max-iterations 5
from plexe.main import main
from pathlib import Path

best_solution, metrics, report = main(
    intent="predict whether a passenger was transported",
    data_refs=["train.parquet"],
    max_iterations=5,
    work_dir=Path("./workdir"),
)
print(f"Performance: {best_solution.performance:.4f}")

2. Возможности

2.1. 🤖 Мультиагентная архитектура

Система использует 14 специализированных ИИ-агентов, распределённых по 6-фазному рабочему процессу, чтобы:

  • проанализировать ваши данные и определить задачу машинного обучения;
  • выбрать подходящую метрику оценки;
  • найти лучшую модель через итеративный поиск, управляемый гипотезами;
  • оценить качество и устойчивость модели;
  • упаковать модель для развёртывания.

2.2. 🎯 Автоматическое построение моделей

Постройте готовую модель одним вызовом. Для табличных данных plexe поддерживает XGBoost, CatBoost, LightGBM, Keras и PyTorch:

best_solution, metrics, report = main(
    intent="predict house prices based on property features",
    data_refs=["housing.parquet"],
    max_iterations=10,                    # Итерации поиска
    allowed_model_types=["xgboost"],      # Или пусть plexe выберет сам
    enable_final_evaluation=True,         # Оценка на отложенной тестовой выборке
)

Полный список опций CLI: python -m plexe.main --help.

Результат — самодостаточный пакет модели в work_dir/model/ (также архивируется в model.tar.gz). Пакет не зависит от plexe: постройте модель с помощью plexe и разверните её где угодно:

model/
├── artifacts/          # Обученная модель + пайплайн признаков (pickle)
├── src/                # Предиктор для инференса, код пайплайна, шаблон обучения
├── schemas/            # JSON-схемы входа/выхода
├── config/             # Гиперпараметры
├── evaluation/         # Метрики и подробные аналитические отчёты
├── model.yaml          # Метаданные модели
└── README.md           # Инструкция по использованию с примером кода

2.3. 🐳 Docker-образы «всё включено»

Запускайте plexe с уже настроенным окружением — PySpark, Java и все зависимости в комплекте. Для типовых сценариев есть Makefile:

make build          # Собрать Docker-образ
make test-quick     # Быстрая проверка работоспособности (~1 итерация)
make run-titanic    # Запуск на наборе данных Spaceship Titanic

Либо запускайте напрямую:

docker run --rm \
    -e OPENAI_API_KEY=$OPENAI_API_KEY \
    -e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \
    -v $(pwd)/data:/data -v $(pwd)/workdir:/workdir \
    plexe:py3.12 python -m plexe.main \
        --train-dataset-uri /data/dataset.parquet \
        --intent "predict customer churn" \
        --work-dir /workdir \
        --spark-mode local

Файл config.yaml из корня проекта монтируется автоматически. Также доступен образ с Databricks Connect: docker build --target databricks .

2.4. ⚙️ Конфигурация через YAML

Настраивайте маршрутизацию LLM, параметры поиска, настройки Spark и многое другое через файл конфигурации:

# config.yaml
max_search_iterations: 5
allowed_model_types: [xgboost, catboost]
spark_driver_memory: "4g"
hypothesiser_llm: "openai/gpt-5-mini"
feature_processor_llm: "anthropic/claude-sonnet-4-5-20250929"
CONFIG_FILE=config.yaml python -m plexe.main ...

Все доступные параметры см. в config.yaml.template.

2.5. 🌐 Поддержка разных провайдеров LLM

Plexe работает с LLM через LiteLLM, поэтому вы можете использовать любого поддерживаемого провайдера:

# Направляйте разных агентов к разным провайдерам
hypothesiser_llm: "openai/gpt-5-mini"
feature_processor_llm: "anthropic/claude-sonnet-4-5-20250929"
model_definer_llm: "ollama/llama3"

Note

Plexe должен работать с большинством провайдеров LiteLLM, но мы активно тестируем только модели openai/* и anthropic/*. Если с другими провайдерами возникнут проблемы, сообщите нам.

2.6. 📊 Дашборд экспериментов

Визуализируйте результаты экспериментов, деревья поиска и отчёты об оценке во встроенном дашборде на Streamlit:

python -m plexe.viz --work-dir ./workdir

2.7. 🔌 Расширяемость

Подключайте plexe к собственным системам хранения, отслеживания и развёртывания через интерфейс WorkflowIntegration:

main(intent="...", data_refs=[...], integration=MyCustomIntegration())

Полное описание интерфейса — в plexe/integrations/base.py.

3. Установка

3.1. Варианты установки

pip install plexe                    # Базовая версия (XGBoost, Keras, scikit-learn)

Дополнительные зависимости можно добавлять либо по фреймворкам, либо по типам задач:

  • Экстра-пакеты фреймворков: catboost, lightgbm, pytorch
  • Экстра-пакеты задач: tabular (CatBoost + LightGBM), vision (PyTorch)
  • Экстра-пакеты платформ: pyspark, aws

Примеры:

pip install "plexe[tabular,pyspark]"   # стек для табличных данных + локальный PySpark
pip install "plexe[pytorch,aws]"       # конкретный фреймворк + поддержка S3

Требуется Python >= 3.10, < 3.13.

3.2. API-ключи

export OPENAI_API_KEY=<your-key>
export ANTHROPIC_API_KEY=<your-key>

Полный список поддерживаемых провайдеров см. в документации LiteLLM.

4. Документация

Полная документация доступна на docs.plexe.ai.

5. Участие в разработке

Рекомендации приведены в CONTRIBUTING.ru.md. Присоединяйтесь к нашему Discord, чтобы связаться с командой.

6. Лицензия

Лицензия Apache-2.0

7. Цитирование

Если вы используете Plexe в своих исследованиях, ссылайтесь на него так:

@software{plexe2025,
  author = {De Bernardi, Marcello AND Dubey, Vaibhav},
  title = {Plexe: Build machine learning models using natural language.},
  year = {2025},
  publisher = {GitHub},
  howpublished = {\url{https://github.com/plexe-ai/plexe}},
}

About

✨ Создайте модель машинного обучения из промпта

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages