Хранимые завершения и дистилляция Azure OpenAI (предварительная версия)
Сохраненные завершения позволяют записывать журнал бесед из сеансов завершения чата для использования в качестве наборов данных для оценки и точной настройки.
Поддержка хранимых завершений
поддержка API
Поддержка, добавленная в первую очередь 2024-10-01-preview
Доступность модели и региона
Регион | o1-preview, 2024-09-12 | o1-mini, 2024-09-12 | gpt-4o, 2024-08-06 | gpt-4o, 2024-05-13 | gpt-4o-mini, 2024-07-18 |
---|---|---|---|---|---|
Центральная Швеция | ✅ | ✅ | ✅ | ✅ | ✅ |
Центрально-северная часть США | - | - | ✅ | - | - |
Восточная часть США 2 | - | - | ✅ | - | - |
Настройка хранимых завершений
Чтобы включить хранимые завершения для развертывания Azure OpenAI, задайте для параметра значение store
True
.
metadata
Используйте параметр для обогащения сохраненного набора данных завершения с дополнительными сведениями.
import os
from openai import AzureOpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default"
)
client = AzureOpenAI(
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT"),
azure_ad_token_provider=token_provider,
api_version="2024-10-01-preview"
)
completion = client.chat.completions.create(
model="gpt-4o", # replace with model deployment name
store= True,
metadata = {
"user": "admin",
"category": "docs-test",
},
messages=[
{"role": "system", "content": "Provide a clear and concise summary of the technical content, highlighting key concepts and their relationships. Focus on the main ideas and practical implications."},
{"role": "user", "content": "Ensemble methods combine multiple machine learning models to create a more robust and accurate predictor. Common techniques include bagging (training models on random subsets of data), boosting (sequentially training models to correct previous errors), and stacking (using a meta-model to combine base model predictions). Random Forests, a popular bagging method, create multiple decision trees using random feature subsets. Gradient Boosting builds trees sequentially, with each tree focusing on correcting the errors of previous trees. These methods often achieve better performance than single models by reducing overfitting and variance while capturing different aspects of the data."}
]
)
print(completion.choices[0].message)
После включения хранимых завершений для развертывания Azure OpenAI они начнут отображаться на портале Azure AI Foundry на панели "Хранимые завершения".
Перегонка
Дистилляция позволяет превратить сохраненные завершения в набор данных точной настройки. Распространенный вариант использования заключается в использовании хранимых завершений с более крупной более мощной моделью для конкретной задачи, а затем использовать сохраненные завершения для обучения меньшей модели на высококачественных примерах взаимодействия модели.
Дистилляция требует не менее 10 хранимых завершений, хотя рекомендуется предоставить сотни тысяч хранимых завершений для лучших результатов.
В области "Хранимые завершения" на портале Azure AI Foundry используйте параметры фильтра, чтобы выбрать завершения, с которыми вы хотите обучить модель.
Чтобы начать дистилляцию, выберите "Дистилля"
Выберите модель, которую вы хотите точно настроить с помощью хранимого набора данных завершения.
Убедитесь, какая версия модели требуется точно настроить:
.jsonl
Файл со случайным именем будет создан в качестве обучаемого набора данных из сохраненных завершений. Нажмите кнопку >"Далее".Примечание.
Сохраненные файлы подготовки завершения не могут быть доступны напрямую и не могут быть экспортированы во внешние или скачанные файлы.
Остальные шаги соответствуют типичным шагам по настройке Azure OpenAI. Дополнительные сведения см. в руководстве по началу работы с тонкой настройкой.
Оценка
Оценка крупных языковых моделей является критически важным шагом в измерении их производительности в различных задачах и измерениях. Это особенно важно для точно настроенных моделей, где оценка повышения производительности (или потерь) от обучения имеет решающее значение. Подробные оценки помогут вам понять, как различные версии модели могут повлиять на ваше приложение или сценарий.
Хранимые завершения можно использовать в качестве набора данных для выполнения вычислений.
В области "Хранимые завершения" на портале Azure AI Foundry используйте параметры фильтра, чтобы выбрать завершения, которые необходимо включить в набор данных оценки.
Чтобы настроить оценку, нажмите кнопку "Оценка"
Откроется панель "Оценки" с предварительно заполненным
.jsonl
файлом с случайным образом созданным именем, созданным в качестве набора данных оценки из сохраненных завершений.Примечание.
Сохраненные файлы данных оценки завершения не могут быть доступны напрямую и не могут быть экспортированы во внешние или скачанные файлы.
Дополнительные сведения об оценке см. в статье "Начало работы с оценками"
Устранение неполадок
Требуются ли специальные разрешения для использования хранимых завершений?
Доступ к хранимым завершениям управляется двумя данными DataActions:
Microsoft.CognitiveServices/accounts/OpenAI/stored-completions/read
Microsoft.CognitiveServices/accounts/OpenAI/stored-completions/action
По умолчанию Cognitive Services OpenAI Contributor
имеет доступ к обоим этим разрешениям:
Разделы справки удалить сохраненные данные?
Данные можно удалить, удалив связанный ресурс Azure OpenAI. Если вы хотите удалить только сохраненные данные завершения, необходимо открыть случай с поддержкой клиентов.
Сколько сохраненных данных завершения можно хранить?
Можно хранить не более 10 ГБ данных.
Можно ли предотвратить включение сохраненных завершений в подписке?
Вам потребуется открыть случай с поддержкой клиентов, чтобы отключить сохраненные завершения на уровне подписки.
TypeError: Completions.create() получил непредвиденный аргумент store
Эта ошибка возникает при запуске более старой версии клиентской библиотеки OpenAI, которая предшествует выпуску функции хранимых завершений. Запустите pip install openai --upgrade
.