Компания OpenAI сделала значительный шаг, чтобы помочь разработчикам и командам, работающим с большими языковыми моделями (LLM), представив **Evals API** — новый набор инструментов, который выводит возможности программной оценки на передний план. Ранее оценка была доступна через панель управления OpenAI, но новый API позволяет разработчикам определять тесты, автоматизировать выполнение оценок и работать с подсказками непосредственно в своих рабочих процессах.
**Почему важен Evals API**
Оценка производительности LLM часто была ручным и трудоёмким процессом, особенно для команд, масштабирующих приложения в различных областях. С помощью **Evals API** OpenAI предлагает системный подход для:
* оценки производительности модели на основе пользовательских тестовых случаев;
* измерения улучшений при итерациях подсказок;
* автоматизации обеспечения качества в конвейерах разработки.
Теперь каждый разработчик может рассматривать оценку как важную часть цикла разработки — подобно тому, как это делается с модульными тестами в традиционной разработке программного обеспечения.
**Основные возможности Evals API**
* **Пользовательские определения оценки.** Разработчики могут писать собственную логику оценки, расширяя базовые классы.
* **Интеграция тестовых данных.** Беспрепятственная интеграция наборов данных для оценки конкретных сценариев.
* **Конфигурация параметров.** Настройка модели, температуры, максимального количества токенов и других параметров генерации.
* **Автоматизированные запуски.** Запуск оценок через код и получение результатов программным способом.
**Evals API** поддерживает структуру конфигурации на основе YAML, что обеспечивает гибкость и возможность повторного использования.
**Начало работы с Evals API**
Чтобы использовать **Evals API**, сначала установите пакет Python OpenAI:
`pip install openai`
Затем вы можете запустить оценку, используя встроенную, например, `factuality_qna`:
`oai evals registry:evaluation:factuality_qna \ –completion_fns gpt-4 \ –record_path eval_results.jsonl`
Или определите пользовательскую оценку на Python:
`import openai.evals`
`class MyRegressionEval(openai.evals.Eval):`
` def run(self):`
` for example in self.get_examples():`
` result = self.completion_fn(example[‘input’])`
` score = self.compute_score(result, example[‘ideal’])`
` yield self.make_result(result=result, score=score)`
Этот пример показывает, как можно определить пользовательскую логику оценки — в данном случае измерение точности регрессии.
**Пример использования: регрессионная оценка**
Пример из кулинарной книги OpenAI описывает создание регрессионного оценщика с помощью API. Вот упрощённая версия:
`from sklearn.metrics import mean_squared_error`
`class RegressionEval(openai.evals.Eval):`
` def run(self):`
` predictions, labels = [], []`
` for example in self.get_examples():`
` response = self.completion_fn(example[‘input’])`
` predictions.append(float(response.strip()))`
` labels.append(example[‘ideal’])`
` mse = mean_squared_error(labels, predictions)`
` yield self.make_result(result={“mse”: mse}, score=-mse)`
Это позволяет разработчикам сравнивать числовые прогнозы моделей и отслеживать изменения с течением времени.
**Бесшовная интеграция рабочего процесса**
Независимо от того, создаёте ли вы чат-бота, систему обобщения или систему классификации, оценки теперь можно запускать как часть вашего конвейера CI/CD. Это гарантирует, что каждая подсказка или обновление модели поддерживает или улучшает производительность перед публикацией.
`openai.evals.run(`
` eval_name=”my_eval”,`
` completion_fn=”gpt-4″,`
` eval_config={“path”: “eval_config.yaml”}`
`)`
**Заключение**
Запуск **Evals API** знаменует собой сдвиг в сторону надёжных стандартов автоматизированной оценки в разработке LLM. Предоставляя возможность настраивать, запускать и анализировать оценки программным способом, OpenAI позволяет командам работать с уверенностью и постоянно улучшать качество своих приложений с использованием искусственного интеллекта.
Чтобы узнать больше, ознакомьтесь с официальной документацией OpenAI Evals и примерами из кулинарной книги.
Добавить комментарий