InnoGames

Der GenAI-Alltag in Hamburgs größtem Gaming-Unternehmen

09.12.2024 von Volker Janz
Die InnoGames GmbH profitiert in mehrfacher Hinsicht von generativer KI. Expert Data Engineer Volker Janz gibt detaillierte Einblicke, wie das die täglichen Arbeitsabläufe beim Gaming-Spezialisten prägt.
Bei InnoGames ist der Name Programm.
Foto: InnoGames

Unternehmen diverser Branchen setzen inzwischen auf künstliche Intelligenz (KI), um effizienter zu arbeiten und neue, innovative Produkte und Geschäftsmodelle zu entwickeln. Dabei bildet die Spiele-Industrie keine Ausnahme. Schließlich verändert generative KI (Generative AI, GenAI) sowohl die Art und Weise, wie Spiele entwickelt werden als auch das Spielerlebnis selbst grundlegend.

Als datengetriebenes Unternehmen beschäftigt sich die InnoGames GmbH schon seit längerem mit den Möglichkeiten (aber auch den rechtlichen und ethischen Problemstellungen), die die Technologie mit sich bringt.

Die GenAI-Basis bei InnoGames

KI ist bei InnoGames längst kein Nischenthema mehr, sondern ein integraler Bestandteil der Arbeitsweise, der in vielen Bereichen kreative Impulse setzt und zu innovativen Spielerlebnissen beiträgt. Gerade in der frühen Phase der Spieleentwicklung, wenn neue Ideen entstehen und erste Konzepte Gestalt annehmen, spielt KI eine wichtige Rolle. Zum Beispiel helfen KI-gestützte Chat-Tools unseren Game Designern dabei:

Sie fungieren als digitale Sparringspartner, die neue Perspektiven eröffnen und den kreativen Prozess beschleunigen. Die KI liefert dabei nicht immer das finale Ergebnis, ist aber ein guter Startpunkt für die Ideenfindung.

InnoGames ist ein Spezialist für Mobile- und Browser Games wie "Rise of Cultures" (im Bild), "Forge of Empires", "Elvenar" oder "Die Stämme".
Foto: InnoGames

KI-gestützte Bildgeneratoren bereichern hingegen die Erstellung von Concept-Art-Materialien, die Atmosphäre und Stil eines Spiels visualisieren. Unsere Artists können damit verschiedene Stile und Variationen in kürzester Zeit testen und so schneller zu überzeugenden Ergebnissen gelangen. Indem KI zeitaufwändige Routineaufgaben übernimmt, gewinnen die Künstler wertvolle Zeit, um zu experimentieren und einzigartige, visuelle Welten zu entwickeln.

Um den Mitarbeitern einen einfachen Zugang zu KI-Tools zu gewährleisten, nutzt InnoGames zudem die Plattform TypingMind. Sie bietet eine zentrale Anlaufstelle für eine Vielzahl von KI-Modellen, darunter ChatGPT und Gemini. Über diese Plattform können unsere Mitarbeiter beispielsweise:

Um das Potenzial von KI voll auszuschöpfen, setzt InnoGames zudem auf einen offenen und experimentellen Ansatz. Wir ermutigen unsere Teams, mit verschiedenen KI-Modellen und -Plattformen zu experimentieren und neue Anwendungsfelder zu erschließen. Zum Beispiel im Rahmen eines kürzlich abgehaltenen, internen "AI Jam", bei dem es darum ging, in Teamarbeit innovative KI-Lösungen zu entwickeln.

KI-Prototypen für bessere Spielerlebnisse

Doch um das volle Potenzial der KI auszuschöpfen, reicht der Einsatz allgemeiner Werkzeuge allein nicht aus. Der nächste logische Schritt war daher, maßgeschneiderte KI-Lösungen zu entwickeln, die auf die spezifischen Bedürfnisse und Herausforderungen von InnoGames zugeschnitten sind.

Dabei haben sich zwei Ansätze als besonders vielversprechend erwiesen: Retrieval-Augmented Generation (RAG) und Feinabstimmung. Auf dieser Grundlage hat InnoGames zwei interne Prototypen entwickelt: QueryMind und KAWAII. Beide sind entstanden, um eine grundlegende Problemstellung in zweifacher Hinsicht zu adressieren:

  1. Daten, die ungenutzt bleiben: InnoGames erfasst täglich mehr als 1,7 Milliarden Datensätze in Echtzeit, die auf Interaktionen der Spieler mit seinen Games basieren. Hinzu kommen diverse Stammdaten aus verschiedenen Systemen. Dennoch bleiben viele wertvolle Informationen ungenutzt, die für strategische Entscheidungen, die Planung zukünftiger Projekte und vieles mehr relevant sein könnten. Der Zugang zu diesen Informationen und die Gewinnung von Wissen erfordern jedoch in der Regel fundierte SQL-Kenntnisse. QueryMind eröffnet an dieser Stelle neue Möglichkeiten.

  2. Wissen, das nicht verfügbar ist: Wie viele andere Unternehmen nutzt auch InnoGames eine Wiki-Software, um Dokumentationen zu erstellen, Meeting-Protokolle festzuhalten, Konzepte zu diskutieren und vieles mehr. Konkret kommt hierbei Confluence von Atlassian zum Einsatz. Wer bereits eine umfangreiche Wissensdatenbank aufgebaut hat, kennt die Schwierigkeit, relevante Informationen schnell und einfach zu finden. Hier setzt KAWAII an.

Im Folgenden werfen wir einen detaillierten Blick auf die beiden in Eigenregie entwickelten GenAI-Prototypen sowie ihre Funktionsweise.

KAWAII

KAWAII steht für "Knowledge Assistant for Wiki with Artificial Intelligence and Interaction". Es handelt sich um einen Prototyp, der den RAG-Ansatz implementiert, um das interne Wissen von InnoGames schnell und einfach zugänglich zu machen.

Ein detaillierter Blick auf die KAWAII-Architektur.
Foto: InnoGames

KAWAII greift dazu auf Daten aus unserem internen Wiki und optional auch auf Tickets aus Jira zu. Der Fokus liegt jedoch auf den Wiki-Inhalten. Um die Relevanz der Informationen sicherzustellen und veraltete Daten zu vermeiden, können wir mithilfe der Confluence Query Language (CQL) gezielt die Wiki-Seiten auswählen, die in KAWAII integriert werden sollen.

KAWAII-Trainingsdaten als YAML-Konfiguration.
Foto: InnoGames

Bevor die Wiki-Seiten jedoch für die KI verarbeitet werden können, müssen sie in kleinere, semantisch sinnvolle Einheiten - sogenannte Chunks - zerlegt werden. Dieser Prozess wird Chunking genannt und ist entscheidend für die Qualität der Suchergebnisse. Um die Wiki-Seiten in Chunks mit einer Größe von 1024 Token und einem Overlap von 150 Token zu zerlegen, verwenden wir den TokenTextSplitter von LangChain. Der Overlap stellt dabei sicher, dass Zusammenhänge zwischen den Chunks erhalten bleiben.

Um die Chunks für die KI-Suche zugänglich zu machen, werden sie mithilfe von Einbettungsmodellen in numerische Vektoren umgewandelt. Wir verwenden die Google-Texteinbettungen, die eine maximale Chunk-Größe von 2048 Token unterstützen. Zusätzlich zu den Vektoren werden jedem Chunk kontextbezogene Überschriften hinzugefügt. Diese enthalten den Seitentitel und weitere Metadaten, um sicherzustellen, dass jeder Chunk auch isoliert betrachtet seinen Bezug zur ursprünglichen Wiki-Seite behält.

Der Text, die Vektoren und die Metadaten der Chunks werden in einer Datenbank gespeichert, die Vektoren verarbeiten und Distanzen berechnen kann. Zu diesem Zweck kommt die Open-Source-Datenbank StarRocks zum Einsatz, die bereits in die Dateninfrastruktur von InnoGames integriert ist und über eine Schnittstelle zu LangChain verfügt. Mit Funktionen wie cosine_similarity_norm ermöglicht StarRocks effiziente Ähnlichkeitssuchen zwischen den Vektoren.

KAWAII nutzt eine benutzerfreundliche Web-Oberfläche, die mit Streamlit in Python entwickelt wurde, um Anfragen in natürlicher Sprache zu stellen. So kann beispielsweise ein Mitarbeiter fragen, was eine bestimmte, InnoGames-spezifische KPI bedeutet. Jeder neuen Anfrage wird die gesamte Gesprächshistorie hinzugefügt, um Folgefragen zu ermöglichen. Um die Ergebnisse zu optimieren, wird diese Historie zusammen mit der aktuellen Eingabe mithilfe des Large Language Models (LLM) Gemini Flash in eine neue, prägnante und alleinstehende Frage umformuliert.

Das KAWAII-Frontend.
Foto: InnoGames

Diese umformulierte Frage wird dann wie zuvor mithilfe der Google-Texteinbettungen in einen numerischen Vektor umgewandelt. Basierend auf diesem Vektor werden die relevantesten Chunks aus der Vektordatenbank abgefragt. Die umformulierte Frage und der abgefragte Kontext werden dann erneut an Gemini Flash übergeben, um eine abschließende Antwort zu generieren. Auf diese Weise erhalten Nutzer präzise und kontextbezogene Antworten auf ihre unternehmensspezifischen Fragen.

QueryMind

Die Dateninfrastruktur von InnoGames hat sich im Laufe der Jahre von einer On-Premises-Lösung mit Open-Source-Technologien wie Kafka, Flink, Hadoop und Hive zu einer hybriden Architektur entwickelt, die auch Cloud-Dienste wie BigQuery und Vertex AI umfasst.

Unser zweiter Prototyp, QueryMind, ermöglicht es, diese umfangreiche Datenlandschaft mithilfe von natürlicher Sprache abzufragen. QueryMind basiert auf dem RAG-Ansatz und nutzt das flexible, quelloffene Python-Framework Vanna. Das erlaubt uns, verschiedene Komponenten wie Vektordatenbanken, LLMs und SQL-Datenbanken flexibel zu kombinieren, um natürliche Sprache in Datenbankabfragen umzuwandeln, diese auszuführen und die Ergebnisse optional zu interpretieren.

Die Datenlandschaft von InnoGames auf einen Blick.
Foto: InnoGames

Bei QueryMind haben wir uns für folgende Komponenten entschieden:

Das Training von QueryMind basiert auf Informationen zur Tabellenstruktur, Beispielabfragen und Dokumentationen.

Über die intuitive Streamlit-Oberfläche können Mitarbeiter nun Fragen in natürlicher Sprache stellen, ohne SQL-Kenntnisse zu benötigen. Ganz konkret könnte eine solche Frage etwa so aussehen, wie im nachfolgenden Screenshot.

QueryMind im Praxiseinsatz.
Foto: InnoGames

QueryMind übersetzt diese Anfrage automatisch in eine SQL-Abfrage, führt sie auf StarRocks aus und präsentiert die Ergebnisse in einem leicht verständlichen Format. So wird wertvolles Wissen für datengetriebene Entscheidungen einer breiteren Mitarbeiterschaft zugänglich gemacht.

Ein Blick auf die Ergebnisse der QueryMind-Abfrage.
Foto: InnoGames

Die KI-getriebene Gaming-Zukunft

Die vorgestellten Prototypen KAWAII und QueryMind sind erst der Anfang. Die Zukunft der KI im Gaming birgt ein enormes Potenzial, das weit darüber hinausgeht, interne Prozesse zu optimieren. So könnte beispielsweise eine zukünftige Version von KAWAII dazu eingesetzt werden, neue Spielinhalte wie Quests und Dialoge zu generieren. Darüber hinaus eröffnen sich durch KI-Technologien wie generative Agenten und neuronale Spiel-Engines weitere, neue Möglichkeiten:

Egal ob generative KI als unterstützendes Werkzeug in der Spieleentwicklung oder als Teil des Spiels in Form KI-getriebener Narrative, Animationen oder NPCs - die Technologie wird die Gaming-Landschaft in den kommenden Jahren grundlegend verändern. Diese Entwicklung möchte die InnoGames GmbH aktiv mitgestalten. (fm)