Viele Unternehmen erleben, wie ihre Rechnungen für Large Language Model (LLM) Application Programming Interfaces (APIs) explodieren, was durch redundante Abfragen verursacht wird, so Sreenivasa Reddy Hulebeedu Reddy, ein KI-Anwendungsentwickler. Reddy stellte fest, dass Benutzer oft dieselben Fragen auf unterschiedliche Weise stellen, was dazu führt, dass das LLM jede Variation separat verarbeitet und für jede die vollen API-Kosten verursacht.
Reddys Analyse von Abfrageprotokollen ergab, dass Benutzer wiederholt dieselben Fragen mit unterschiedlichen Formulierungen stellten. Zum Beispiel lösten Fragen wie "Wie lautet Ihre Rückgaberichtlinie?", "Wie kann ich etwas zurückgeben?" und "Kann ich eine Rückerstattung erhalten?" fast identische Antworten vom LLM aus, lösten aber jeweils einen separaten API-Aufruf aus.
Traditionelles, exakt übereinstimmendes Caching, das den Abfragetext als Cache-Schlüssel verwendet, erwies sich als unwirksam bei der Lösung dieses Problems. Reddy stellte fest, dass exakt übereinstimmendes Caching nur 18 dieser redundanten Aufrufe von 100.000 Produktionsabfragen erfasste. "Dieselbe semantische Frage, anders formuliert, umging den Cache vollständig", erklärte Reddy.
Um dies zu bekämpfen, implementierte Reddy Semantic Caching, eine Technik, die Antworten basierend auf der Bedeutung der Abfrage und nicht auf dem genauen Wortlaut speichert. Dieser Ansatz erhöhte die Cache-Trefferrate auf 67 %, was zu einer Reduzierung der LLM-API-Kosten um 73 % führte. Semantic Caching adressiert das Kernproblem, dass Benutzer dieselbe Frage auf verschiedene Weise formulieren.
Semantic Caching stellt einen bedeutenden Fortschritt gegenüber traditionellen Caching-Methoden im Kontext von LLMs dar. Traditionelles Caching basiert auf einer exakten Übereinstimmung zwischen der eingehenden Abfrage und der zwischengespeicherten Abfrage. Diese Methode ist einfach zu implementieren, erfasst aber nicht die Nuancen der menschlichen Sprache, in der dieselbe Absicht auf verschiedene Weise ausgedrückt werden kann. Semantic Caching hingegen verwendet Techniken wie Embeddings und Ähnlichkeitsmetriken, um festzustellen, ob eine neue Abfrage semantisch ähnlich zu einer zuvor zwischengespeicherten Abfrage ist. Wenn die Ähnlichkeit einen vordefinierten Schwellenwert überschreitet, wird die zwischengespeicherte Antwort zurückgegeben, wodurch ein kostspieliger API-Aufruf vermieden wird.
Die Entwicklung von Semantic Caching unterstreicht den wachsenden Bedarf an effizienten und kostengünstigen Methoden zur Nutzung von LLMs. Da LLMs zunehmend in verschiedene Anwendungen integriert werden, wird die Verwaltung der API-Kosten zu einem kritischen Anliegen für Unternehmen. Semantic Caching bietet eine vielversprechende Lösung, indem es Redundanz reduziert und die Ressourcenauslastung optimiert. Weitere Forschung und Entwicklung in diesem Bereich könnten zu noch ausgefeilteren Caching-Strategien führen, die die LLM-API-Kosten weiter minimieren und die Gesamtleistung verbessern.
Discussion
Join the conversation
Be the first to comment