Ein Blog über Code, Hardware und Co

Programmieren und Entwickeln, Wordpress und Webentwicklung

OpenAI-API mittels PHP-Composer einbinden

Zuletzt aktualisiert am 4. April 2024.

In diesem Beitrag erkläre ich dir, wie du die OpenAI-API mittels PHP einbindest und in deinen Projekten und Skripten nutzen kannst.

Exkurs: Möglichkeiten für Entwickler durch die OpenAI-API

Ok, ran ans Eingemachte: Ich zeige dir Schritt für Schritt, wie du die OpenAI-API in deinem PHP-Projekt nutzen kannst.

Zeitaufwand: 20 Minuten

1) PHP-Composer installieren

Wir wollen das Rad nicht neu erfinden und nutzen eine weit verbreitete Bibliothek zur Anbindung der OpenAI-API. Um diese Bibliothek einfach zu nutzen, nutzen wir den Dependency-Manager PHP-Composer.
Die Installation habe ich hier beschrieben.

2) Bibliothek installieren

Orhan Erday hat eine PHP-Bibliothek entwickelt, die die Interaktion mit der OpenAI API vereinfacht. Du kannst diese Bibliothek über den oben installierten Composer installieren.
Öffne dazu ein Terminal bzw. verbinde dich per SSH auf deinen Server und führe folgenden Befehl im Wurzelverzeichnis deines PHP-Projekts aus:

composer require orhanerday/openai

Dieser Befehl fügt die Bibliothek zu deinem Projekt hinzu und aktualisiert die composer.json und composer.lock Dateien deines Projekts.

3) API Zugangsdaten erhalten

Jetzt bist du von deinem Projekt her schon startklar und kannst die API in deinem Code instanziieren und nutzen.
Damit eine Verbindung hergestellt werden kann, benötigst du aber noch API-Zugansgdaten.
Diese musst du dir unter folgender URL holen:
https://openai.com/blog/openai-api

4) API instanzieren und nutzen

Super, jetzt sind wir endgültig startklar und können die API nutzen.
Dafür müssen wir den Composer in unser PHP-File inkludieren, den API-Key angeben und die API instanziieren:

require_once('/pfad/zu/vendor/autoload.php');
use Orhanerday\OpenAi\OpenAi;
$openai_apikey = "dein-api-key-hier";
$openai_api = new OpenAI($openai_apikey);

Jetzt können wir die OpenAI-API nutzen.
Nehmen wir an, wir wollen OpenAI einfach eine Frage stellen, wie über ChatGPT. Wir müssen also zunächst einen Prompt definieren:

$prompt = "Wie ist das Wetter heute in Bielefeld?";

Dann müssen wir einen Request mit dem oben definierten prompt erstellen:

$request = $openai_api->chat([ 'model' => 'gpt-4', 'messages' => [["role" => "user", "content" => $prompt],], 'temperature' => 1, 'frequency_penalty' => 0, 'presence_penalty' => 0 ]);

Wir erhalten nun in der $request-Variable die Antwort auf den eigentlichen Request zurück. Die Antwort ist im json-Format kodiert, sodass wir dieses zunächst in ein Array dekodieren:

$decoded_request = json_decode($request);

Wenn wir die von OpenAI generierte Antwort (in Textform) haben möchten, müssen wir auf das Array zugreifen:

$answer = $decoded_request->choices[‘0’]->message->content;

Fertig 🙂

Weitergehende Tipps / Ressourcen

Für die vielen Verwendungsmöglichkeiten und etwaige Weiterentwicklungen und/oder deprecated Sprachmodelle solltest du auf jeden Fall die Entwicklung von OpenAI und der Bibliothek von Orhan Erday im Auge behalten:

  • https://github.com/orhanerday/open-ai
  • https://platform.openai.com/docs/changelog

Schreibe eine Antwort