Computerhaus Quickborn TEST

So händeln Sie Day-2-Probleme bei GenAI-Deployments

Wenn das GenAI-System läuft, fängt die eigentliche Arbeit erst an.

Treecha | shutterstock.com

Alle IT-Projekte durchlaufen Phasen, und Generative KI ist in dieser Hinsicht nicht anders. In ersten Pilotprojekten wird getestet, wie Technologie oder Software funktioniert, und es wird ermittelt, ob die gewünschten Ergebnisse oder die Versprechungen der Anbieter oder Entwickler erreicht werden. Sobald diese Pilotphasen abgeschlossen sind, ist es an der Zeit, zu skalieren. Man könnte zwar meinen, dass die Skalierung neuer Projekte einfach darin besteht, mehr Ressourcen einzusetzen. Das kann jedoch neue Probleme aufwerfen. Im Fall von GenAI können Skalierungsprobleme zudem sehr unterschiedlich ausfallen.

IT-Mitarbeiter bezeichnen diese Probleme üblicherweise als „Day-1“- und „Day-2“-Probleme. Erstere sind solche, die bei der Implementierung auftreten. Bei der generativen KI umfasst dies die Vorbereitung Ihrer Daten für die Verwendung mit Retrieval-Augmented Generation (RAG) bis hin zur Überprüfung, ob Ihr Ansatz zur Aufteilung und Indizierung von Daten effektiv ist. Bei RAG werden vortrainierte große Sprachmodelle (LLMs) zusammen mit den unternehmenseigenen Daten verwendet, sodass Ihre generative KI-Anwendung relevantere, spezifischere und zeitnahere Antworten liefern kann, anstatt sich nur auf das zu verlassen, worauf das LLM ursprünglich trainiert wurde.

Daten-Chunking, -Indexierung und -Einbettung

Aus der Day-1-Perspektive können RAG-Deployments mit Problemen bei der Vorbereitung Ihrer Daten konfrontiert sein. In der Anfangsphase der Datenvorbereitung werden beispielsweise alle unstrukturierten und strukturierten Daten in ein Format umgewandelt, mit dem das generative KI-System arbeiten kann. Dazu gehört die Erstellung einer Reihe von Dokumentobjekten, die alle Ihre Unternehmensdaten darstellen und sowohl den Text als auch alle zugehörigen Metadaten enthalten.

Textdaten werden dann in kleinere Teile, sogenannte Chunks, aufgeteilt, die indiziert und verstanden werden können. Die Größe der Chunks kann hier einen großen Unterschied machen. Man kann diese beispielsweise auf Satz- oder Absatzebene oder als komplexere selbstreferenzielle Chunks implementieren, die in immer kleinere Elemente verarbeitet werden. Unabhängig davon, für welchen Ansatz man sich entscheidet, werden diese Chunks dann indiziert und in Vektor-Einbettungen umgewandelt, wo sie für zukünftige Suchvorgänge gespeichert werden können.

Sendet ein Benutzer eine Abfrage, wird diese Abfrage in einen Vektor umgewandelt, der zur Suche nach den relevantesten Daten verwendet wird. Diese werden dann an das LLM weitergeleitet, damit es diese berücksichtigen kann. RAG kann zwar dazu beitragen, KI-Halluzinationen zu reduzieren und die Antworten zu verbessern. Die Technik reicht aber allein nicht aus. Probleme wie die Wahl des falschen LLM, die Verwendung des falschen Chunking-Ansatzes oder die Indexierung von Daten können sich auf die Funktionsweise Ihres RAG-Systems und die Qualität seiner Antworten auswirken. Wenn Sie beispielsweise zu große Chunks verwenden, gibt das LLM große Textblöcke zurück, die für bestimmte Anfragen möglicherweise nicht relevant sind.

GenAI-Anwendungen skalieren

Sobald Ihr RAG-System effektiv funktioniert, werden Sie möglicherweise auf neue Herausforderungen treffen. So wurde beispielsweise der ChatGPT-Dienst von OpenAI trainiert und für Benutzer zur Verfügung gestellt, um Fragen zu stellen. Die Zahl der Nutzer wuchs extrem schnell – laut Business of Apps dauerte es nur zwei Monate, um 100 Millionen Nutzer zu erreichen. Unternehmen, die generative KI und RAG einsetzen, hoffen, dass auch sie eine große Anzahl von Nutzeranfragen erhalten werden.

Aber haben Sie auch bedacht, was passieren könnte, wenn Ihre App ein Riesenerfolg wird, und wie sehr das Ihre generative KI-Infrastruktur belasten könnte? Werden Ihre Kosten für generative KI mit den Einnahmen, die Sie damit erzielen wollen, steigen, oder betrachten Sie dies als zusätzliche Einnahmen zu Ihren Produkten? Wie hoch schätzen Sie die Gewinnschwelle ein, ab der Sie die gewünschte Marge erzielen werden – je nachdem, wie groß das Interesse ist, das Sie wecken?

Bei vielen Dienstleistungen ist die Arbeit, die in den Betrieb im großen Maßstab fließt, genauso wichtig wie die anfängliche Aufbau- und Entwurfsphase, um qualitativ hochwertige Antworten zu liefern. Dies ist ein Beispiel für ein Day-2-Problem, bei dem man feststellt, dass das, was in der Testphase funktioniert hat, nicht skalierbar ist, um die Nachfrage zu decken. Wie bewältigt beispielsweise Ihr RAG-Deployment Tausende oder Millionen von gleichzeitigen Anfragen von Benutzern, und wie schnell können Ihre Vektordatenbank und die LLM-Integrationskomponenten diese Daten analysieren, damit das System dem Benutzer eine Antwort zurückgeben kann?

Während Benutzer bei einem kostenlosen, neuartigen Dienst eine eingeschränkte Leistung akzeptieren, sind sie weniger bereit, schlechte Antwortzeiten in Kauf zu nehmen, wenn sie für einen Dienst bezahlen. Bei der Analyse von RAG-Anfragen können bis zu 40 Prozent der Latenz innerhalb von Transaktionen von Aufrufen an den Einbettungsdienst und den Vektorsuchdienst stammen, bei denen RAG die richtigen Daten abgleicht und sie an den Benutzer zurückgibt. Die Optimierung dieses Roundtrips kann daher einen enormen Einfluss auf die Benutzererfahrung haben, beispielsweise durch das Zwischenspeichern früherer ähnlicher Anfragen.

Gleichzeitig verursacht jeder Roundtrip Kosten in Form von Rechenressourcen, insbesondere in der Cloud. Die Reduzierung der Workloads, sodass Unternehmen nur für das bezahlen, was sie nutzen, kann dazu beitragen, diese Kosten zu senken und die Ausgaben effizienter zu gestalten.

Gleichzeitig müssen sich Entwickler und IT-Mitarbeiter damit befassen, wo sie generative KI-Workloads ausführen. Viele Unternehmen werden damit in der Cloud beginnen, da sie die Last der Ausführung ihrer eigenen LLMs vermeiden wollen. Andere werden ihren eigenen Ansatz verfolgen wollen, um das Beste aus ihren Entscheidungen zu machen und eine Bindung zu vermeiden. Unabhängig davon, ob Sie On-Premises oder die Cloud bevorzugen, müssen Sie jedoch darüber nachdenken, an mehreren Standorten zu arbeiten.

Die Nutzung mehrerer Standorte sorgt für die Ausfallsicherheit eines Dienstes. Wenn ein Standort nicht mehr verfügbar ist, kann der Dienst trotzdem weiter funktionieren. Bei lokalen Standorten kann dies die Implementierung von Failover- und Verfügbarkeitstechnologien rund um Vektordatensätze bedeuten, sodass diese Daten bei Bedarf abgefragt werden können. Bei Cloud-Bereitstellungen ist der Betrieb an mehreren Standorten einfacher, da man verschiedene Cloud-Regionen zum Hosten und Replizieren von Vektordaten verwenden kann. Die Nutzung mehrerer Standorte ermöglicht es auch, Antworten von dem Standort zu liefern, der dem Benutzer am nächsten liegt, wodurch die Latenzzeit verringert wird und die Unterstützung geografischer Datenstandorte erleichtert wird, wenn Daten aus Compliance-Gründen an einem bestimmten Standort oder in einer bestimmten Region aufbewahrt werden müssen.

Laufende Betriebskosten in den Griff bekommen

Am zweiten Tag des IT-Betriebs werden Ihre Gemeinkosten und Probleme im Zusammenhang mit dem Betrieb Ihrer Infrastruktur untersucht und anschließend entweder Engpässe beseitigt oder Ihr Lösungsansatz optimiert. Da GenAI-Anwendungen riesige Datenmengen sowie integrierte Komponenten und Dienste umfassen, ist es wichtig, die im Laufe der Zeit anfallenden Betriebskosten zu berücksichtigen. Mit zunehmender Beliebtheit generativer KI-Dienste können Probleme bei der Skalierung dieser Integrationen auftreten. Wenn Sie feststellen, dass Sie weitere Funktionen hinzufügen oder mehr potenzielle KI-Agenten integrieren möchten, benötigen diese Integrationen Unterstützung auf Unternehmensebene.

Wenn Sie Ihre Komponenten selbst auswählen und integrieren, können Sie einen Best-of-Breed-Ansatz für Ihre Anwendung wählen. Die Verwendung eines Microservices-Ansatzes kann es auch einfacher machen, im Laufe der Zeit mehr Integrationen oder Funktionen zu unterstützen. DIY bedeutet jedoch auch, dass Sie für die gesamte Integration und Verwaltung verantwortlich sind, was sich im Laufe der Zeit summieren kann. Die Alternative ist ein Stack-basierter Ansatz, bei dem die Unterstützung für verschiedene Tools oder Integrationen für Sie implementiert wurde. Ein vorgefertigter Stapel ermöglicht es Ihrem Team, sich auf die Erstellung von Anwendungen zu konzentrieren, anstatt die Infrastruktur zu implementieren, und sollte auch Ihre Abläufe vereinfachen.

Sobald Ihre generative KI-Anwendung einsatzbereit ist, müssen Sie diesen Dienst betreiben und unterstützen, damit er die Erwartungen der Benutzer in Bezug auf Leistung und Qualität erfüllt. Wenn Sie Ihre Einrichtung abgeschlossen haben, werden Sie neue potenzielle Probleme entdecken, die spezifisch für RAG-Bereitstellungen sind, sowie einige traditionelle IT-Managementprobleme wie Verfügbarkeit und Kosten. Wenn Sie expandieren, wird sich Ihr Fokus von den Problemen des ersten Tages auf die Herausforderungen des zweiten Tages verlagern müssen. Ein stapelbasierter Ansatz kann in dieser Hinsicht hilfreich sein, sodass Sie sich darauf konzentrieren können, Ihren Benutzern den bestmöglichen Service zu bieten. (mb)

 Wenn das GenAI-System läuft, fängt die eigentliche Arbeit erst an.
Treecha | shutterstock.com

Alle IT-Projekte durchlaufen Phasen, und Generative KI ist in dieser Hinsicht nicht anders. In ersten Pilotprojekten wird getestet, wie Technologie oder Software funktioniert, und es wird ermittelt, ob die gewünschten Ergebnisse oder die Versprechungen der Anbieter oder Entwickler erreicht werden. Sobald diese Pilotphasen abgeschlossen sind, ist es an der Zeit, zu skalieren. Man könnte zwar meinen, dass die Skalierung neuer Projekte einfach darin besteht, mehr Ressourcen einzusetzen. Das kann jedoch neue Probleme aufwerfen. Im Fall von GenAI können Skalierungsprobleme zudem sehr unterschiedlich ausfallen.

IT-Mitarbeiter bezeichnen diese Probleme üblicherweise als „Day-1“- und „Day-2“-Probleme. Erstere sind solche, die bei der Implementierung auftreten. Bei der generativen KI umfasst dies die Vorbereitung Ihrer Daten für die Verwendung mit Retrieval-Augmented Generation (RAG) bis hin zur Überprüfung, ob Ihr Ansatz zur Aufteilung und Indizierung von Daten effektiv ist. Bei RAG werden vortrainierte große Sprachmodelle (LLMs) zusammen mit den unternehmenseigenen Daten verwendet, sodass Ihre generative KI-Anwendung relevantere, spezifischere und zeitnahere Antworten liefern kann, anstatt sich nur auf das zu verlassen, worauf das LLM ursprünglich trainiert wurde.

Daten-Chunking, -Indexierung und -Einbettung

Aus der Day-1-Perspektive können RAG-Deployments mit Problemen bei der Vorbereitung Ihrer Daten konfrontiert sein. In der Anfangsphase der Datenvorbereitung werden beispielsweise alle unstrukturierten und strukturierten Daten in ein Format umgewandelt, mit dem das generative KI-System arbeiten kann. Dazu gehört die Erstellung einer Reihe von Dokumentobjekten, die alle Ihre Unternehmensdaten darstellen und sowohl den Text als auch alle zugehörigen Metadaten enthalten.

Textdaten werden dann in kleinere Teile, sogenannte Chunks, aufgeteilt, die indiziert und verstanden werden können. Die Größe der Chunks kann hier einen großen Unterschied machen. Man kann diese beispielsweise auf Satz- oder Absatzebene oder als komplexere selbstreferenzielle Chunks implementieren, die in immer kleinere Elemente verarbeitet werden. Unabhängig davon, für welchen Ansatz man sich entscheidet, werden diese Chunks dann indiziert und in Vektor-Einbettungen umgewandelt, wo sie für zukünftige Suchvorgänge gespeichert werden können.

Sendet ein Benutzer eine Abfrage, wird diese Abfrage in einen Vektor umgewandelt, der zur Suche nach den relevantesten Daten verwendet wird. Diese werden dann an das LLM weitergeleitet, damit es diese berücksichtigen kann. RAG kann zwar dazu beitragen, KI-Halluzinationen zu reduzieren und die Antworten zu verbessern. Die Technik reicht aber allein nicht aus. Probleme wie die Wahl des falschen LLM, die Verwendung des falschen Chunking-Ansatzes oder die Indexierung von Daten können sich auf die Funktionsweise Ihres RAG-Systems und die Qualität seiner Antworten auswirken. Wenn Sie beispielsweise zu große Chunks verwenden, gibt das LLM große Textblöcke zurück, die für bestimmte Anfragen möglicherweise nicht relevant sind.

GenAI-Anwendungen skalieren

Sobald Ihr RAG-System effektiv funktioniert, werden Sie möglicherweise auf neue Herausforderungen treffen. So wurde beispielsweise der ChatGPT-Dienst von OpenAI trainiert und für Benutzer zur Verfügung gestellt, um Fragen zu stellen. Die Zahl der Nutzer wuchs extrem schnell – laut Business of Apps dauerte es nur zwei Monate, um 100 Millionen Nutzer zu erreichen. Unternehmen, die generative KI und RAG einsetzen, hoffen, dass auch sie eine große Anzahl von Nutzeranfragen erhalten werden.

Aber haben Sie auch bedacht, was passieren könnte, wenn Ihre App ein Riesenerfolg wird, und wie sehr das Ihre generative KI-Infrastruktur belasten könnte? Werden Ihre Kosten für generative KI mit den Einnahmen, die Sie damit erzielen wollen, steigen, oder betrachten Sie dies als zusätzliche Einnahmen zu Ihren Produkten? Wie hoch schätzen Sie die Gewinnschwelle ein, ab der Sie die gewünschte Marge erzielen werden – je nachdem, wie groß das Interesse ist, das Sie wecken?

Bei vielen Dienstleistungen ist die Arbeit, die in den Betrieb im großen Maßstab fließt, genauso wichtig wie die anfängliche Aufbau- und Entwurfsphase, um qualitativ hochwertige Antworten zu liefern. Dies ist ein Beispiel für ein Day-2-Problem, bei dem man feststellt, dass das, was in der Testphase funktioniert hat, nicht skalierbar ist, um die Nachfrage zu decken. Wie bewältigt beispielsweise Ihr RAG-Deployment Tausende oder Millionen von gleichzeitigen Anfragen von Benutzern, und wie schnell können Ihre Vektordatenbank und die LLM-Integrationskomponenten diese Daten analysieren, damit das System dem Benutzer eine Antwort zurückgeben kann?

Während Benutzer bei einem kostenlosen, neuartigen Dienst eine eingeschränkte Leistung akzeptieren, sind sie weniger bereit, schlechte Antwortzeiten in Kauf zu nehmen, wenn sie für einen Dienst bezahlen. Bei der Analyse von RAG-Anfragen können bis zu 40 Prozent der Latenz innerhalb von Transaktionen von Aufrufen an den Einbettungsdienst und den Vektorsuchdienst stammen, bei denen RAG die richtigen Daten abgleicht und sie an den Benutzer zurückgibt. Die Optimierung dieses Roundtrips kann daher einen enormen Einfluss auf die Benutzererfahrung haben, beispielsweise durch das Zwischenspeichern früherer ähnlicher Anfragen.

Gleichzeitig verursacht jeder Roundtrip Kosten in Form von Rechenressourcen, insbesondere in der Cloud. Die Reduzierung der Workloads, sodass Unternehmen nur für das bezahlen, was sie nutzen, kann dazu beitragen, diese Kosten zu senken und die Ausgaben effizienter zu gestalten.

Gleichzeitig müssen sich Entwickler und IT-Mitarbeiter damit befassen, wo sie generative KI-Workloads ausführen. Viele Unternehmen werden damit in der Cloud beginnen, da sie die Last der Ausführung ihrer eigenen LLMs vermeiden wollen. Andere werden ihren eigenen Ansatz verfolgen wollen, um das Beste aus ihren Entscheidungen zu machen und eine Bindung zu vermeiden. Unabhängig davon, ob Sie On-Premises oder die Cloud bevorzugen, müssen Sie jedoch darüber nachdenken, an mehreren Standorten zu arbeiten.

Die Nutzung mehrerer Standorte sorgt für die Ausfallsicherheit eines Dienstes. Wenn ein Standort nicht mehr verfügbar ist, kann der Dienst trotzdem weiter funktionieren. Bei lokalen Standorten kann dies die Implementierung von Failover- und Verfügbarkeitstechnologien rund um Vektordatensätze bedeuten, sodass diese Daten bei Bedarf abgefragt werden können. Bei Cloud-Bereitstellungen ist der Betrieb an mehreren Standorten einfacher, da man verschiedene Cloud-Regionen zum Hosten und Replizieren von Vektordaten verwenden kann. Die Nutzung mehrerer Standorte ermöglicht es auch, Antworten von dem Standort zu liefern, der dem Benutzer am nächsten liegt, wodurch die Latenzzeit verringert wird und die Unterstützung geografischer Datenstandorte erleichtert wird, wenn Daten aus Compliance-Gründen an einem bestimmten Standort oder in einer bestimmten Region aufbewahrt werden müssen.

Laufende Betriebskosten in den Griff bekommen

Am zweiten Tag des IT-Betriebs werden Ihre Gemeinkosten und Probleme im Zusammenhang mit dem Betrieb Ihrer Infrastruktur untersucht und anschließend entweder Engpässe beseitigt oder Ihr Lösungsansatz optimiert. Da GenAI-Anwendungen riesige Datenmengen sowie integrierte Komponenten und Dienste umfassen, ist es wichtig, die im Laufe der Zeit anfallenden Betriebskosten zu berücksichtigen. Mit zunehmender Beliebtheit generativer KI-Dienste können Probleme bei der Skalierung dieser Integrationen auftreten. Wenn Sie feststellen, dass Sie weitere Funktionen hinzufügen oder mehr potenzielle KI-Agenten integrieren möchten, benötigen diese Integrationen Unterstützung auf Unternehmensebene.

Wenn Sie Ihre Komponenten selbst auswählen und integrieren, können Sie einen Best-of-Breed-Ansatz für Ihre Anwendung wählen. Die Verwendung eines Microservices-Ansatzes kann es auch einfacher machen, im Laufe der Zeit mehr Integrationen oder Funktionen zu unterstützen. DIY bedeutet jedoch auch, dass Sie für die gesamte Integration und Verwaltung verantwortlich sind, was sich im Laufe der Zeit summieren kann. Die Alternative ist ein Stack-basierter Ansatz, bei dem die Unterstützung für verschiedene Tools oder Integrationen für Sie implementiert wurde. Ein vorgefertigter Stapel ermöglicht es Ihrem Team, sich auf die Erstellung von Anwendungen zu konzentrieren, anstatt die Infrastruktur zu implementieren, und sollte auch Ihre Abläufe vereinfachen.

Sobald Ihre generative KI-Anwendung einsatzbereit ist, müssen Sie diesen Dienst betreiben und unterstützen, damit er die Erwartungen der Benutzer in Bezug auf Leistung und Qualität erfüllt. Wenn Sie Ihre Einrichtung abgeschlossen haben, werden Sie neue potenzielle Probleme entdecken, die spezifisch für RAG-Bereitstellungen sind, sowie einige traditionelle IT-Managementprobleme wie Verfügbarkeit und Kosten. Wenn Sie expandieren, wird sich Ihr Fokus von den Problemen des ersten Tages auf die Herausforderungen des zweiten Tages verlagern müssen. Ein stapelbasierter Ansatz kann in dieser Hinsicht hilfreich sein, sodass Sie sich darauf konzentrieren können, Ihren Benutzern den bestmöglichen Service zu bieten. (mb)