News 17. Juli 2023 von Martin Merkli 5 Leseminuten Mein Praktikum bei Deimos mit AI-Chatbot

Als Kantischüler durfte ich zwei Wochen bei der Deimos AG arbeiten und habe Folgendes erlebt:

Im Rahmen meiner Ausbildung absolvierte ich ein zweiwöchiges Praktikum bei der Deimos AG. Dank der Lage des Büros - nur wenige Minuten vom Hauptbahnhof Zürich entfernt - konnte ich bequem mit dem Zug anreisen.

AI-Chatbot für internes Wiki

Deimos hat ein internes Wiki mit vielen Anleitungen für die Mitarbeitenden sowie Informationen über Projekte und Kunden. Meine erste Aufgabe bestand darin, die Suchfunktion mit einem Chatbot zu erweitern. Dazu verwendet man ein vorgefertigtes LLM (Large Language Model) wie ChatGPT und trainiert es mit den gewünschten Texten. Um andere Dateitypen wie PDF und Bilder zu importieren, wird das entsprechende Importmodul oder OCR (Optical Character Recognition) verwendet, um die relevanten Texte zu extrahieren.

Aus den Texten werden mithilfe eines Embedding-Models Vektoren erzeugt, um eine qualitativ hochwertigere Suche zu ermöglichen. Dadurch können bessere Quellen bzw. Dokumente gefunden und somit eine bessere Antwort auf die Eingabe generiert werden. Darüber hinaus ermöglicht diese Technologie auch Eingaben in anderen Sprachen, z.B. kann die Ein- und Ausgabe in Französisch erfolgen, obwohl die Daten nur in Deutsch vorliegen.

Es ist immer wichtig, das fertige Produkt zu testen. Ich habe zusammen mit Mitarbeitenden, welche schon länger bei Deimos arbeiten, die Qualität der Antworten bewertet und mit dem internen Wiki verglichen. Manchmal gab der Chatbot an, die Antwort nicht zu kennen oder generierte eine leicht fehlerhafte Antwort. Der Chatbot weiss natürlich nur, was im Wiki steht oder Allgemeinwissen ist, aber ich habe ihm den Auftrag gegeben, dass er lieber keine als eine falsche Aussage machen soll. Bei den meisten leicht fehlerhaften Antworten sind zu komplizierte Sätze oder Grammatikfehler die Ursache.

AI-Chatbot für Kunde

Danach ging es weiter mit der Entwicklung einer REST-Schnittstelle für einen weiteren AI-Chatbot, diesmal für einen Kunden. Da jeder API-Aufruf bei OpenAI einen kleinen Betrag kostet, muss darauf geachtet werden, dass es für einen Angreifer nicht möglich ist, dem Kunden durch zu viele Anfragen hohe Kosten zu verursachen. Ein Schutz gegen Prompt-Injections ist bei dieser Art von Chatbot nicht notwendig, da die Antworten des Chatbots nur beim Benutzer gespeichert werden und die Trainingsdaten öffentlich sind.

Um dem Kunden Arbeit abzunehmen, werden Änderungen an den Daten automatisch im AI-Chatbot übernommen. Der fertige Chatbot ist in einem Docker-Container verpackt. Dies ermöglicht eine stabilere Software, da sie vom eigentlichen System dank eines simulierten Dateisystems isoliert ist. Mögliche Fehler können so leichter reproduziert und behoben werden.

Anwendungsüberprüfung

Zum Schluss habe ich noch in der Anwendungsüberprüfung gearbeitet. Die Aufgabe bestand darin, Fehler im System - in diesem Fall eine Website - zu finden. Das beinhaltet alles von der Verwendung verschiedener Webbrowser bis hin zur Modifikation von Cookies, um sicherzustellen, dass die Sicherheitsmassnahmen funktionieren.

Fazit

Ich habe in diesen zwei Wochen viel gelernt: die Integration von Artificial Intelligence (AI) in Chatbots, das Arbeiten in einem grossen Team und das Deployment mit Docker. Docker werde ich auf jeden Fall bald in meine eigenen Projekte integrieren. Das Team von Deimos habe ich als professionell und kompetent wahrgenommen; vor allem das gute Design der Website hat mich beeindruckt, weil es so weit von meinen Fähigkeiten als Kantischüler entfernt ist.

Teilen