ChatGPT ist ein Chatbot, der mit Hilfe von maschinellem Lernen und natürlicher Sprachverarbeitung interagiert. Es wurde von OpenAI entwickelt und ist Teil der GPT (Generative Pre-training Transformer) -Familie von Sprachmodellen. ChatGPT ist in der Lage, auf Nutzeranfragen zu antworten und Unterhaltungen zu führen, indem es auf bereits vorliegende Daten und Konversationshistorien zurückgreift.
Das ChatGPT-Modell wurde speziell für den Einsatz in Chatbots und Sprachassistenten entwickelt. Es ist in der Lage, die Absichten und Bedeutungen von Nutzeranfragen zu verstehen und entsprechende Antworten zu generieren. Durch den Einsatz von maschinellem Lernen und natürlicher Sprachverarbeitung kann ChatGPT die Qualität seiner Antworten verbessern, indem es aus Nutzerinteraktionen lernt und sich an die individuellen Vorlieben und Bedürfnisse der Nutzer anpasst.
Um ChatGPT zu nutzen, muss es zunächst auf einem Server oder einer Cloud-Plattform bereitgestellt werden. Anschließend können Nutzer über eine Text- oder Sprachschnittstelle mit dem Chatbot interagieren. ChatGPT eignet sich besonders für die Integration in Chatbots, die in sozialen Medien, Kundensupport-Plattformen oder anderen Online-Communities verwendet werden.
Auf folgender Seite müsst Ihr euch einen neuen Account erstellen https://openai.com/api/
Danach auf View API keys klicken und einen neuen erstellen. Diesen Schlüssel nun sicher aufbewahren, man kann diesen danach nicht mehr abrufen.
Nun müssen wir noch den Subscription Plan ändern, dafür auf Manage Account und dann Billing. Nun den Account Plan in einen Paid Plan verändern. Dazu müssen Sie eine Kreditkarte angeben. Keine Sorge, Sie zahlen nur dafür was Sie auch wirklich nutzen. Die API ist kein Abo, wenn Sie sich einen Paid Account anlegen und dann diesen nicht nutzen zahlen Sie nichts.
Um nicht unerwartet eine große Rechnung zu bekommen stellen Sie sich am besten Usage Limits ein. Je nachdem wie viel Siedie API nutzen wollen, sollten Sie sich Ihr persönliches Limit setzen. Jetzt haben Sie einen API Key den Subscription Plan und können jetzt loslegen.
Im OpenAI Playground können Sie die unterschiedlichen Engines und Parameter testen:
Zuerst müssen Sie das pip Paket installieren, dazu folgendes Kommando ausführen:
pip install openai
Beispiel Skript zur Verwendung von OpenAI Davinci Engine
Zusätzlich noch die Datei api_key in welcher die Variable API_KEY definiert wird:
Um eine Completion Anfrage zu stellen muss folgender Code ausgeführt werden:
max_tokens gibt die Länge der Antwort an. Da man bei der API je Token zahlt, ist es wichtig kein zu großen Wert anzugeben.
text-davinci-03 ist eine von mehreren Engines von OpenAI. "text-davinci 3" ist die mächtigste und teuerste.
An den Parameter prompt kann man auch eine Liste übergeben, als Antwort erhält man daraufhin mehrere Texte.
Um das asynchrone Feature von der openAI Python Bibliothek zu nutzen benötigen Sie Version 0.26. Der Vorteil beim asynchronen Programmieren ist, das man viele Begriffe gleichzeitig erledigen kann. So können wir in unserem Python Programm viele Fragen von ChatGPT beantworten lassen.
Dafür nutzen wir die Methode "openai.Completion.acreate".
Zum vorherigen synchronen Beispiel wurde nur das async vorm def eingefügt sowie statt create acreate.
Als Beispiel um zu zeigen wie man asynchron die ChatGPT Api nutzen kann, habe ich einige Anfragen geschrieben. Die Anfrage an ChatGPT ist "Beschreibe den Begriff " und dann der Name des Begriffs.
Nun werden wir uns alle Begriffe von ChatGPT beschreiben lassen. Dafür nutzen wir asyncio:
Um zu sehen, ob es wirklich asynchron abgelaufen ist, habe ich noch die Zeit gemessen. Die Asynchrone Methode ist deutlich schneller als die synchrone Methode. Der Unterschied wird immer größer desto mehr Anfragen an die Chat API gesendet werden. Die Laufzeit der synchronen Variante steigt linear, während die asynchrone etwa logarithmisch ansteigt.
Bei 20 Fragen an ChatGPT hat die synchrone Variante 90 Sekunden und die asynchrone 7 Sekunden benötigt.
Ich habe eine Analyse der durchschnittlichen Antwortzeiten von ChatGPT durchgeführt. Dafür habe ich verschiedene Fragen genutzt:
"Write an article about ChatGPT",
"What is the highest building in Europe?",
"What is 3 plus 4 ?",
"Where are my car keys?"
Von denen wäre sicherlich Frage 3 für einen Menschen die einfachste. Die Frage 2 sollte für eine Menschen schwierig sein, aber für einen Computer sehr einfach.
Die Fragen haben folgendermaßen abgeschnitten:
Wie man sieht war die 3+4 Frage die schnellste und "Write an article about ChatGPT" langsamste. Dies liegt unter anderem daran, dass die Antwort auf die Frage viel ausführlicher sein wird.
Als nächstes habe ich noch analysiert wie sich die Antwortzeit von ChatGPT verändert, wenn man die max_tokens erhöht.
Die eingezeichnete Regressions Linie hat einen r Score von 0.96, was bedeutet das es sich um eine positive lineare Beziehung handelt. Je höher die max_tokens sind desto länger braucht ChatGPT um die Frage zu beantworten.
Wenn man doppelt so viele Tokens anfragt, braucht die Antwort doppelt so lange.
In meinem Test haben Anfragen mit 300 Tokens durchschnittlich 5 Sekunden lang gedauert
Mit der ChatGPT Api kann man nicht nur Text vervollständigen sondern man kann auch Text bearbeiten. Dafür verwenden wir das text-davinci-edit-001 Modell.
Text-davinci-edit-001 ist eines der GPT-Modelle von OpenAI, es ist speziell für die Textbearbeitung und Text-Korrektur trainiert. Hier sind ein paar Beispiele, wie das Modell verwendet werden kann, um Text zu bearbeiten:
Das Ergebnis ist: "What day of the week is it?"
Um schnell viele Anfragen an die OpenAI API zu machen, sollte man asynchron programmieren.
Falls Sie ein Python Programm entwickeln wollen, aber selbst nicht die Zeit dazu haben. Dann können wir Ihnen gerne dabei helfen. Mit unserer Beratung können Sie Ihr KI Projekt verwirklichen. Schreib uns einfach ene Nchricht.