Projektarbeit Chat Bot

KI-Anwendung mit Python & ChatGPT
Aufgabenstellung
Ziel ist es, eine einfache Anwendung zu entwickeln, die die OpenAI ChatGPT-API nutzt, um Benutzern die Interaktion mit einem KI-gesteuerten Chatbot zu ermöglichen. Die Anwendung sollte Benutzeranfragen entgegennehmen, diese an die ChatGPT-API senden und die Antwort des Chatbots in einer benutzerfreundlichen Oberfläche darstellen.
Projektumfang:
Das Projekt ist auf etwa 20-27 Schulstunden ausgelegt und beinhaltet die Planung, Implementierung und das Testen der Anwendung.
Aufgabenbeschreibung:
- Recherche und Planung (4 Stunden)
- Erforschung der ChatGPT-API-Dokumentation und ihrer Möglichkeiten.
- Entwurf eines Konzepts für die Benutzeroberfläche und des Interaktionsflusses zwischen Benutzer und KI.
- Auswahl der geeigneten Werkzeuge und Bibliotheken für die Umsetzung.
- Das fertige Ergebnis dieses Arbeitsschritts ist ein sogenanntes Lastenheft, welches abgegeben wird und in die Benotung mit einfließt.
- Setup des Projekts (3 Stunden)
- Einrichtung der Entwicklungsumgebung.
- Anlegen eines neuen Python-Projekts mit entsprechenden Abhängigkeiten.
- Erstellung der notwendigen API-Schlüssel und Authentifizierungsmechanismen für die Nutzung der ChatGPT-API.
- Implementierung der API-Anbindung (5 Stunden)
- Programmierung der Schnittstelle zur ChatGPT-API.
- Implementierung der Logik für das Senden von Anfragen und das Empfangen von Antworten.
- Entwicklung der Benutzeroberfläche (5 Stunden)
- Gestaltung einer einfachen, aber intuitiven Benutzeroberfläche, die auf Web- oder Konsolenbasis funktionieren kann.
- Implementierung der Benutzereingabe und Anzeige der Chat-Antworten.
- Integration und Tests (4 Stunden)
- Zusammenführung der API-Anbindung und der Benutzeroberfläche.
- Durchführung von Funktionstests zur Überprüfung der Kommunikation mit der ChatGPT-API und der Benutzerinteraktion.
- Dokumentation und Abschluss (3 Stunden)
- Anfertigung einer Benutzerdokumentation, die die Installation und Bedienung der Anwendung erklärt.
- Reflektion über das Projekt und Dokumentation der gelernten Inhalte und der gemachten Erfahrungen.
- Optional: Vorbereitung einer kurzen Präsentation des Projekts.
- Extras (3 Stunden)
- Erweiterung der Anwendung um zusätzliche Funktionen, wie z. B. das Speichern von Chatverläufen oder die Anpassung der Antwortstile.
- Untersuchung und Implementierung zusätzlicher Sicherheitsmaßnahmen, wie z. B. die Validierung von Benutzereingaben.
Werkzeuge:
- !!! ACHTUNG !!!
- Den API-Schlüssel nicht auf GitHub speichern, oder veröffentlichen, da OpenAI dies erkennt und den Schlüsse sofort entwertet. Das bedeutet, dass der Schlüssel nicht mehr nutzbar ist, wenn dieser öffentlich wird.
- Verwendung von ChatGPT ist erlaubt
api_key = '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'
Zu liefernde Ergebnisse:
- Quellcode der Anwendung: Ablage im Info2-Ordner >> Python >> „Prüfungsaufgaben“
- Eine schriftliche Dokumentation, welche die Anwendung und ihre Nutzung beschreibt.
- Ein kurzes Reflexionsdokument, das die Herausforderungen und Lernerfahrungen des Projekts darlegt.
Benotung:
Die Projektnote hat die Gewichtung einer Klausur