autogen_ext.cache_store.redis#

pydantic Model RedisStoreConfig[Quelle]#

Bases: BaseModel

Konfiguration für RedisStore

JSON-Schema anzeigen
{
   "title": "RedisStoreConfig",
   "description": "Configuration for RedisStore",
   "type": "object",
   "properties": {
      "host": {
         "default": "localhost",
         "title": "Host",
         "type": "string"
      },
      "port": {
         "default": 6379,
         "title": "Port",
         "type": "integer"
      },
      "db": {
         "default": 0,
         "title": "Db",
         "type": "integer"
      },
      "username": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Username"
      },
      "password": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Password"
      },
      "ssl": {
         "default": false,
         "title": "Ssl",
         "type": "boolean"
      },
      "socket_timeout": {
         "anyOf": [
            {
               "type": "number"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Socket Timeout"
      }
   }
}

Felder:
Feld host: str = 'localhost'#
Feld port: int = 6379#
Feld db: int = 0#
Feld username: str | None = None#
Feld password: str | None = None#
Feld ssl: bool = False#
Feld socket_timeout: float | None = None#
Klasse RedisStore(redis_instance: Redis)[Quelle]#

Bases: CacheStore[T], Component[RedisStoreConfig]

Eine typisierte CacheStore-Implementierung, die Redis als zugrundeliegenden Speicher verwendet. Siehe ChatCompletionCache für ein Beispiel zur Verwendung.

Diese Implementierung bietet automatische Serialisierung und Deserialisierung für: - Pydantic-Modelle (verwendet model_dump_json/model_validate_json) - Primitive Typen (Strings, Zahlen usw.)

Parameter:

cache_instance – Eine Instanz von redis.Redis. Der Benutzer ist für die Verwaltung der Lebensdauer der Redis-Instanz verantwortlich.

component_config_schema#

Alias von RedisStoreConfig

component_provider_override: ClassVar[str | None] = 'autogen_ext.cache_store.redis.RedisStore'#

Überschreibe den Anbieter-String für die Komponente. Dies sollte verwendet werden, um zu verhindern, dass interne Modulnamen Teil des Modulnamens werden.

get(key: str, default: T | None = None) T | None[Quelle]#

Ruft einen Wert aus dem Redis-Cache ab.

Diese Methode behandelt sowohl primitive Werte als auch komplexe Objekte: - Pydantic-Modelle werden automatisch aus JSON deserialisiert - Primitive Werte (Strings, Zahlen usw.) werden unverändert zurückgegeben - Wenn die Deserialisierung fehlschlägt, wird der Rohwert oder der Standardwert zurückgegeben

Parameter:
  • key – Der abzurufende Schlüssel

  • default – Wert, der zurückgegeben werden soll, wenn der Schlüssel nicht existiert

Gibt zurück:

Der Wert, wenn er gefunden und korrekt deserialisiert wurde, andernfalls der Standardwert

set(key: str, value: T) None[Quelle]#

Speichert einen Wert im Redis-Cache.

Diese Methode behandelt sowohl primitive Werte als auch komplexe Objekte: - Pydantic-Modelle werden automatisch in JSON serialisiert - Listen, die Pydantic-Modelle enthalten, werden in JSON serialisiert - Primitive Werte (Strings, Zahlen usw.) werden unverändert gespeichert

Parameter:
  • key – Der Schlüssel, unter dem der Wert gespeichert werden soll

  • value – Der zu speichernde Wert

_to_config() RedisStoreConfig[Quelle]#

Gib die Konfiguration aus, die erforderlich wäre, um eine neue Instanz einer Komponente zu erstellen, die der Konfiguration dieser Instanz entspricht.

Gibt zurück:

T – Die Konfiguration der Komponente.

Klassenmethode _from_config(config: RedisStoreConfig) Self[Quelle]#

Erstelle eine neue Instanz der Komponente aus einem Konfigurationsobjekt.

Parameter:

config (T) – Das Konfigurationsobjekt.

Gibt zurück:

Self – Die neue Instanz der Komponente.