Интеграция Promptfoo для автоматического тестирования промптов

Проектируем и внедряем системы искусственного интеллекта: от прототипа до production-ready решения. Наша команда объединяет экспертизу в машинном обучении, дата-инжиниринге и MLOps, чтобы AI работал не в лаборатории, а в реальном бизнесе.
Показано 1 из 1Все 1566 услуг
Интеграция Promptfoo для автоматического тестирования промптов
Простой
от 4 часов до 2 дней
Часто задаваемые вопросы

Направления AI-разработки

Этапы разработки AI-решения

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1285
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1198
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    902
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1121
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    589
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    857

Интеграция Promptfoo для автоматического тестирования промптов

Promptfoo — open-source CLI и библиотека для тестирования LLM промптов. Позволяет запускать один и тот же набор тест-кейсов против разных моделей и промптов, автоматически сравнивать результаты и интегрировать в CI/CD.

Установка и конфигурация

npm install -g promptfoo
# или
pip install promptfoo

promptfooconfig.yaml:

providers:
  - openai:gpt-4o
  - openai:gpt-4o-mini
  - anthropic:claude-3-5-sonnet-20241022

prompts:
  - "Summarize the following text in 3 sentences: {{text}}"
  - "Create a concise 3-sentence summary of: {{text}}"

tests:
  - vars:
      text: "Long article about machine learning..."
    assert:
      - type: contains
        value: "machine learning"
      - type: llm-rubric
        value: "The summary is accurate and covers the main points"
      - type: javascript
        value: "output.split('.').length >= 3"  # Минимум 3 предложения

  - vars:
      text: "Another test document..."
    assert:
      - type: not-contains
        value: "I cannot"  # Модель не должна отказываться
      - type: rouge-n
        value: reference_summary
        threshold: 0.5

Запуск тестов

# Запуск evaluation
promptfoo eval

# Просмотр результатов
promptfoo view

# CI mode (exit code 1 при неудаче)
promptfoo eval --ci

Интеграция в Python код

import promptfoo

results = promptfoo.evaluate({
    "prompts": ["Classify sentiment: {{text}}"],
    "providers": ["openai:gpt-4o-mini"],
    "tests": [
        {
            "vars": {"text": "Great product!"},
            "assert": [{"type": "contains", "value": "positive"}]
        }
    ]
})

print(f"Pass rate: {results.stats.successes}/{results.stats.total}")

Promptfoo позволяет за 1-2 дня создать regression test suite для всех промптов приложения и запускать его в GitHub Actions при каждом PR, предотвращая случайные деградации качества.