Имитация API OpenAI
При создании приложений, подключенных к OpenAI, часто только часть приложения взаимодействует с API OpenAI. При работе с частями приложения, которые не требуют реальных ответов из API OpenAI, можно имитировать ответы с помощью прокси-сервера разработки. Использование имитированных ответов позволяет избежать ненужных затрат. Использует OpenAIMockResponsePlugin
локальную языковую модель, запущенную в Ollama, для имитации ответов из API OpenAI.
Перед началом работы
Чтобы имитировать ответы OpenAI API с помощью прокси-сервера разработки, на компьютере необходимо установить Ollama. Чтобы установить Ollama, следуйте инструкциям в документации по Ollama.
По умолчанию в прокси-сервере разработки используется языковая модель phi-3. Чтобы использовать другую модель, обновите model
свойство в файле конфигурации прокси-сервера разработки.
Настройка прокси-сервера разработки для имитации ответов OpenAI API
Совет
Действия, описанные в этом руководстве, доступны в предустановке прокси-сервера разработки. Чтобы использовать предустановку, в командной строке запустите devproxy preset get simulate-openai
и следуйте инструкциям.
Чтобы имитировать ответы OpenAI API с помощью прокси-сервера разработки, необходимо включить его OpenAIMockResponsePlugin
в devproxyrc.json
файле.
{
"$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.19.0/rc.schema.json",
"plugins": [
{
"name": "OpenAIMockResponsePlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll"
}
]
}
Затем настройте прокси-сервер разработки для перехвата запросов к API OpenAI. OpenAI рекомендует использовать конечную точку https://api.openai.com/v1/chat/completions
, которая позволяет воспользоваться новейшими моделями и функциями.
{
// [...] trimmed for brevity
"urlsToWatch": [
"https://api.openai.com/v1/chat/completions"
]
}
Наконец, настройте прокси-сервер разработки для использования локальной языковой модели.
{
// [...] trimmed for brevity
"languageModel": {
"enabled": true
}
}
Полный файл конфигурации выглядит следующим образом.
{
"$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.19.0/rc.schema.json",
"plugins": [
{
"name": "OpenAIMockResponsePlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll"
}
],
"urlsToWatch": [
"https://api.openai.com/v1/chat/completions"
],
"languageModel": {
"enabled": true
}
}
Имитация ответов API OpenAI
Запустите Ollama с языковой моделью phi-3. В командной строке выполните команду ollama run phi3
.
Затем запустите прокси-сервер разработки. Если вы используете предустановку, выполните команду devproxy -c "~appFolder/presets/simulate-openai/simulate-openai.json
. При использовании пользовательского файла конфигурации с именем devproxyrc.json
, хранящегося в текущем рабочем каталоге, выполните команду devproxy
. Прокси-сервер разработки проверяет, что он может получить доступ к языковой модели Ollama и подтверждает, что он готов имитировать ответы OpenAI API.
info OpenAIMockResponsePlugin: Checking language model availability...
info Listening on 127.0.0.1:8000...
Hotkeys: issue (w)eb request, (r)ecord, (s)top recording, (c)lear screen
Press CTRL+C to stop Dev Proxy
Запустите приложение и выполните запросы к API OpenAI. Прокси-сервер разработки перехватывает запросы и имитирует ответы с помощью локальной языковой модели.
Следующий шаг
Дополнительные сведения о OpenAIMockResponsePlugin.
Примеры
См. также связанные примеры прокси-сервера разработки: