AI Agent
AI агенты — создание агентов
Тестирование и оценка качества AI workflows в n8n
Evaluations позволяют тестировать AI workflows на наборе примеров и измерять качество ответов.
| Тип | Описание | Доступность |
|---|---|---|
| Light Evaluations | Визуальная проверка результатов | Community (зарег.), Starter+ |
| Metric-based | Численные метрики качества | Pro, Enterprise |
Light evaluations — быстрая проверка workflow на нескольких примерах с визуальным сравнением результатов.
Создайте датасет с примерами
Подключите датасет к workflow
Запишите результаты обратно в датасет
Запустите оценку
Просмотрите и сравните результаты
Создайте Google Sheet или Data Table с колонками:
| Колонка | Описание | Пример |
|---|---|---|
| input | Входные данные | ”Привет, как дела?“ |
| expected_output | Ожидаемый ответ (опционально) | “Привет! Я в порядке…“ |
| actual_output | Фактический результат (пусто) | — |
Пример датасета для классификации тикетов:
| input | expected_category | expected_priority | actual_category | actual_priority |
|---|---|---|---|---|
| ”Не могу войти в аккаунт” | auth | high | ||
| ”Как изменить пароль?“ | auth | low | ||
| ”Сайт работает медленно” | performance | medium |
Добавьте Evaluation Trigger в начало workflow:
┌──────────────────┐ ┌────────────┐ ┌────────────┐│ Evaluation │───→│ AI Agent │───→│ Set Outputs││ Trigger │ │ │ │ (запись) ││ (датасет) │ │ │ │ │└──────────────────┘ └────────────┘ └────────────┘При каждом запуске триггер выдаёт одну строку из датасета.
Добавьте Evaluation ноду с операцией Set Outputs:
Нажмите Evaluate all у Evaluation Trigger — workflow выполнится для каждой строки датасета.
Откройте датасет и сравните expected_output с actual_output.
Metric-based evaluations вычисляют численные метрики качества для автоматического сравнения версий workflow.
| Метрика | Описание | Шкала |
|---|---|---|
| Correctness | Соответствие эталонному ответу (AI) | 1-5 |
| Helpfulness | Полезность ответа (AI) | 1-5 |
| String Similarity | Похожесть строк (edit distance) | 0-1 |
| Categorization | Точное совпадение категорий | 0 или 1 |
| Tools Used | Использовались ли инструменты | 0-1 |
Вы можете создать свои метрики:
// Пример: проверка длины ответаconst responseLength = $json.response.length;const score = responseLength > 100 && responseLength < 500 ? 1 : 0;return { json: { length_score: score } };Настройте Light evaluation (шаги 1-3)
Добавьте Evaluation ноду с Set Metrics
Выберите метрики или создайте кастомные
Запустите оценку из вкладки Evaluations
┌──────────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────┐│ Evaluation │───→│ AI Agent │───→│ Set Outputs│───→│ Set Metrics││ Trigger │ │ │ │ │ │ │└──────────────────┘ └────────────┘ └────────────┘ └────────────┘Датасет:
| ticket_text | expected_category | expected_priority |
|---|---|---|
| ”Не работает оплата” | billing | high |
| ”Вопрос по тарифам” | billing | low |
Метрики:
Categorization для categoryCategorization для priorityРезультат: Accuracy = 0.95 (95% правильных классификаций)
Датасет:
| question | expected_answer | relevant_docs |
|---|---|---|
| ”Как установить n8n?" | "docker run…“ | doc_id: 123 |
Метрики:
Correctness — правильность ответаHelpfulness — полезностьДатасет:
| user_message | expected_response |
|---|---|
| ”Привет” | Дружелюбное приветствие |
| ”Цена продукта X” | Точная цена |
Метрики:
Helpfulness (1-5)String Similarity (для точных ответов)Метрики добавляют latency и стоимость (AI-based). Выполняйте их только при оценке:
┌────────────────────┐│ Check if evaluating││ (Evaluation node) │└─────────┬──────────┘ │ ┌────┴────┐ ↓ ↓ Yes No │ │ ↓ ↓┌─────────┐ ┌─────────┐│ Metrics │ │ Skip │└─────────┘ └─────────┘Development → Light eval (5-10 примеров)Staging → Light eval (20-50 примеров)Production → Metric-based (100+ примеров)Перед изменением промпта:
Запускайте evaluations:
AI Agent
AI агенты — создание агентов
RAG
RAG — ответы по документам
Troubleshooting
Решение проблем — отладка