Promptfoo: тестирование подсказок и оценка производительности AI-систем
Promptfoo — это инструмент для тестирования подсказок и оценки производительности AI-систем, включая такие модели, как GPT, Claude и Gemini. Он подходит для Red Teaming, пентестинга и сканирования уязвимостей, позволяя разработчикам выявлять слабые места в своих приложениях на базе ИИ.
Проект выделяется простотой конфигурации, используя декларативный подход с поддержкой командной строки и интеграцией CI/CD. Это делает его удобным выбором для команд, работающих с AI. Кроме того, Promptfoo активно используется OpenAI и Anthropic, что может говорить о его надежности и эффективности.
Для запуска тебе понадобится Node.js версии 22.22.0 и выше. Установить можно через npm или brew, также доступна команда npx для запуска без установки. Имей в виду, что проект имеет MIT лицензию, что как минимум говорит о прозрачности его использования, но уточни детали, если планируешь коммерческий проект.
Что такое Promptfoo?
Promptfoo — это инструмент командной строки (CLI) и библиотека, предназначенные для оценки и анализа приложений, использующих большие языковые модели (LLM). Он предлагает продвинутые методы проверки, чтобы избежать традиционного метода проб и ошибок, и помогает создавать безопасные и надежные приложения на основе искусственного интеллекта.
Сейчас Promptfoo является частью OpenAI, однако остается открытым проектом с лицензией MIT.
Как установить и запустить Promptfoo?
Для работы с Promptfoo потребуется Node.js версии >=22.22.0. Рекомендуется использовать LTS-версию Node.js 24. Подробности можно найти в руководстве по поддержке окружения.
Чтобы установить Promptfoo, выполни следующие команды:
npm install -g promptfoo
promptfoo init --example getting-started
Кроме того, его можно установить с помощью:
- Homebrew:
brew install promptfoo - pip:
pip install promptfoo
Можно также использовать npx для выполнения команды без установки:
npx promptfoo@latest
Многие провайдеры LLM требуют API-ключ. Установи его в переменной окружения:
export OPENAI_API_KEY=sk-abc123
После этого перейди в созданный каталог примера и запусти оценку:
cd getting-started
promptfoo eval
promptfoo view
Дополнительную информацию можно найти в разделах Getting Started (оценки) и Red Teaming (анализ уязвимостей).
Что можно сделать с помощью Promptfoo?
- Тестировать свои запросы и модели с помощью автоматизированных оценок.
- Обеспечить безопасность своих LLM-приложений с помощью анализов и проверки на уязвимости.
- Сравнивать модели, такие как OpenAI, Anthropic, Azure, Bedrock, Ollama и другие, с помощью данной платформы.
- Автоматизировать проверки в CI/CD.
- Проверять запросы на наличие проблем с безопасностью и соответствием в сканировании кода.
- Делиться результатами с командой.
Преимущества Promptfoo
- Ориентирован на разработчиков: Быстрый и с функциями, такими как живое обновление и кэширование.
- Частный: Оценки LLM проводятся локально — ваши запросы не покидают ваш компьютер.
- Гибкий: Работает с любым API LLM или языком программирования.
- Проверенный временем: Используется в LLM-приложениях с более чем 10 миллионами пользователей в продуктивной среде.
- Основан на данных: Принимает решения на основе метрик, а не интуиции.
- Открытый исходный код: Лицензия MIT и активное сообщество.
Где узнать больше?
- Getting Started
- Полная документация
- Руководство по анализу уязвимостей
- Использование CLI
- Пакет для Node.js
- Поддерживаемые модели
- Руководство по сканированию кода
Как внести свой вклад?
Мы приветствуем участника! Ознакомься с нашим руководством по внесению изменений и присоединяйся к нашему Discord-сообществу для получения помощи и обсуждений.
Открыть на GitHub: promptfoo/promptfoo →
RepoRadar