ChatGPT ist ein großes Sprachmodell, das von OpenAI entwickelt wurde. Es wurde mit einer Technik namens Unsupervised Learning trainiert - das heißt, ihm wurde ein großer Textdatensatz vorgelegt, und es hat gelernt, das nächste Wort in einer Sequenz auf Basis der vorherigen Wörter vorherzusagen. So kann ChatGPT menschenähnlichen Text erzeugen, der für viele Zwecke einsetzbar ist - etwa, um in einem Chatbot Antworten auf Nutzereingaben zu erzeugen oder Inhalte für Websites und Social Media zu generieren.
Ein zentrales Merkmal von ChatGPT ist die Fähigkeit, Kontext zu verstehen und auf Basis des Gesprächs passende Antworten zu erzeugen. Stellst du ChatGPT zum Beispiel eine Frage, erhältst du eine Antwort, die zur Frage passt und dem natürlichen Gesprächsfluss folgt. Möglich wird das durch die Fähigkeit des Modells, vorherige Aussagen im Gespräch zu "merken" und diese Information in die Antwort einfließen zu lassen.
Ein weiteres wichtiges Merkmal von ChatGPT ist die Fähigkeit, vielfältige und abwechslungsreiche Antworten zu erzeugen. Da es auf einem großen Textdatensatz trainiert wurde, verfügt es über breites Wissen und kann Antworten erzeugen, die zu unterschiedlichen Situationen und Themen passen. Damit ist es ein nützliches Werkzeug, um in einem Chatbot Antworten zu erzeugen - es kann unabhängig vom Gesprächsthema relevante und ansprechende Antworten liefern.
Insgesamt ist ChatGPT ein leistungsstarkes Sprachmodell, das menschenähnlichen Text erzeugen und Kontext sowie Gesprächsfluss verstehen kann. Es hat viele Anwendungsfelder - darunter Chatbots, Content-Erstellung und Sprachübersetzung - und hat das Potenzial, unsere Art, mit Technik zu interagieren, grundlegend zu verändern.
ChatGPT hat aktuell keine eigene API, aber du kannst die OpenAI-Beta-API nutzen, um mit dem GPT-3-Text-Transformer zu interagieren. Du brauchst nur einen API-Key, den du hier bekommst:
https://beta.openai.com/account/api-keys
Damit kannst du anfangen, mit der API zu arbeiten.
GPT-3 - Delphi-Code
Sobald du einen API-Key hast, ist die Interaktion mit der API sehr einfach. Unten findest du Beispielcode, wie du mit der sgcWebSockets-Bibliothek mit ihr arbeitest.
function AskChatGPT(const aAPI, aQuestion: string): string;
var
oHTTP: TsgcHTTP1Client;
oStream: TStringStream;
vPostData: string;
oJSON: TJSONValue;
oArray: TJSonArray;
begin
oHTTP := TsgcHTTP1Client.Create(nil);
Try
oHTTP.Request.CustomHeaders.Add('Authorization: Bearer ' + aAPI);
oHTTP.Request.ContentType := 'application/json';
vPostData :=
Format('{"model": "text-davinci-003","prompt": "%s","max_tokens": 2048,"temperature": 0}',
[aQuestion]);
// send request
oStream := TStringStream.Create(vPostData);
Try
result := oHTTP.Post('https://api.openai.com/v1/completions', oStream);
// parse response
oJSON := TJSonObject.ParseJSONValue(result).GetValue<TJSONValue>
('choices');
result := TJSonArray(oJSON).Items[0].GetValue<TJSONString>('text').Value;
Finally
oStream.Free;
End;
Finally
oHTTP.Free;
End;
end;
Die Funktion hat 2 Argumente:
API: ist der API-Key, den du von https://beta.openai.com/account/api-keys bekommst
Question: ist die Nachricht mit der Frage.
Der API-Key wird als Bearer-Token gesendet, und die Nachricht ist als JSON-Objekt kodiert. Der Server gibt eine Antwort als JSON-Objekt zurück, in dem du die Text-Nachricht findest.

Unten findest du das vollständige Projekt und die kompilierte ausführbare Datei für Windows.
