Caching

term_id: caching

Category: engineering_practice

Definition

Im KI-Engineering optimiert Caching die Leistung, indem aktuelle oder häufig angefragte Ergebnisse, Modellvorhersagen oder Zwischenergebnisse im schnellen Speicher (wie RAM) gehalten werden. Dies reduziert die Notwendigkeit teurer…

Summary

Caching ist eine Technik zum Speichern häufig zugriffener Daten in einer temporären, hochgeschwindigen Speicher Ebene, um Latenzzeiten zu reduzieren und die Last auf primären Datenquellen zu verringern.

Key Concepts

  • Reduzierung der Latenz
  • Speicheroptimierung
  • Eviktionsrichtlinien
  • Trefferquote

Use Cases

  • Speichern von Modell-Inferenzergebnissen
  • Zwischenspeichern von Datenbankabfrageergebnissen
  • Vorab-Berechnung von Feature-Embeddings

Code Example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import redis

# Simple caching example
r = redis.Redis(host='localhost', port=6379, db=0)

def get_prediction(model_id, input_data):
    cache_key = f"pred_{model_id}_{hash(str(input_data))}"
    result = r.get(cache_key)
    if result:
        return result.decode('utf-8')
    # Compute if not cached
    prediction = model.predict(input_data)
    r.setex(cache_key, 3600, str(prediction))
    return prediction