Bagikan melalui


Menyimulasikan OPENAI API

Sekilas
Tujuan: Mensimulasikan OpenAI menggunakan LLM lokal
Waktu: 15 menit
Plugins:OpenAIMockResponsePlugin
Prasyarat:Menyiapkan Proksi Dev, Model bahasa lokal

Saat Anda membangun aplikasi yang terhubung ke OpenAI, sering kali, hanya sebagian aplikasi yang berinteraksi dengan OpenAI API. Saat Anda mengerjakan bagian aplikasi yang tidak memerlukan balasan nyata dari OpenAI API, Anda dapat mensimulasikan respons menggunakan Dev Proxy. Menggunakan respons yang disimulasikan memungkinkan Anda untuk menghindari timbulnya biaya yang tidak perlu. Menggunakan OpenAIMockResponsePlugin model bahasa lokal untuk mensimulasikan respons dari OpenAI API.

Sebelum memulai

Untuk mensimulasikan respons OpenAI API menggunakan Dev Proxy, Anda memerlukan klien model bahasa yang didukung yang diinstal di komputer Anda.

Secara default, Dev Proxy menggunakan model bahasa llama3.2 yang berjalan di Ollama. Untuk menggunakan klien atau model yang berbeda, perbarui pengaturan model bahasa di file konfigurasi Dev Proxy.

Konfigurasi Dev Proxy untuk meniru respons OpenAI API

Petunjuk

Langkah-langkah yang dijelaskan dalam tutorial ini tersedia dalam preset Proksi Dev yang siap digunakan. Untuk menggunakan preset, di baris perintah, jalankan devproxy config get simulate-openai, dan ikuti instruksinya.

Untuk mensimulasikan respons OpenAI API menggunakan Dev Proxy, Anda perlu mengaktifkan OpenAIMockResponsePlugin dalam devproxyrc.json file.

File: devproxyrc.json

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json",
  "plugins": [
    {
      "name": "OpenAIMockResponsePlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll"
    }
  ]
}

Selanjutnya, konfigurasikan Dev Proxy untuk mencegat permintaan ke OpenAI API. OpenAI merekomendasikan penggunaan https://api.openai.com/v1/chat/completions titik akhir, yang memungkinkan Anda mendapatkan manfaat dari model dan fitur terbaru.

File: devproxyrc.json (tambahkan ke tingkat akar)

{
  // [...] trimmed for brevity
  "urlsToWatch": [
    "https://api.openai.com/v1/chat/completions"
  ]
}

Terakhir, konfigurasikan Dev Proxy untuk menggunakan model bahasa lokal.

File: devproxyrc.json (tambahkan ke tingkat akar)

{
  // [...] trimmed for brevity
  "languageModel": {
    "enabled": true
  }
}

File konfigurasi lengkap terlihat seperti ini.

File: devproxyrc.json (lengkap)

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json",
  "plugins": [
    {
      "name": "OpenAIMockResponsePlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll"
    }
  ],
  "urlsToWatch": [
    "https://api.openai.com/v1/chat/completions"
  ],
  "languageModel": {
    "enabled": true
  }
}

Mensimulasikan respons OPENAI API

Dengan asumsi konfigurasi default, mulai Ollama dengan model bahasa llama3.2. Di baris perintah, jalankan ollama run llama3.2.

Sekarang, mulai Proksi Dev. Jika Anda menggunakan prasetel, jalankan devproxy -c "~appFolder/config/simulate-openai/simulate-openai.json. Jika Anda menggunakan file konfigurasi kustom bernama devproxyrc.json, disimpan di direktori kerja saat ini, jalankan devproxy. Dev Proxy memeriksa bahwa ia dapat mengakses model bahasa di Ollama dan mengonfirmasi bahwa ia siap untuk mensimulasikan respons API OpenAI.

 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

Jalankan aplikasi Anda dan buat permintaan ke OPENAI API. Dev Proxy mencegat permintaan dan mensimulasikan respons menggunakan model bahasa lokal.

Cuplikan layar prompt perintah dengan respons simulasi Proksi Dev untuk permintaan ke OpenAI API.

Langkah selanjutnya

Pelajari selengkapnya tentang OpenAIMockResponsePlugin.

Sampel

Lihat juga sampel Proksi Dev terkait: