6b7e6b44f1
gh-pages / build (push) Waiting to run
Python Publish (pypi) / Upload release to PyPI (push) Waiting to run
Spellcheck / spellcheck (push) Waiting to run
Python Build and Type Check / python-ci (ubuntu-latest, 3.11) (push) Has been cancelled
Python Build and Type Check / python-ci (ubuntu-latest, 3.13) (push) Has been cancelled
Python Build and Type Check / python-ci (windows-latest, 3.11) (push) Has been cancelled
Python Build and Type Check / python-ci (windows-latest, 3.13) (push) Has been cancelled
Python Integration Tests / python-ci (ubuntu-latest, 3.13) (push) Has been cancelled
Python Integration Tests / python-ci (windows-latest, 3.13) (push) Has been cancelled
Python Notebook Tests / python-ci (ubuntu-latest, 3.13) (push) Has been cancelled
Python Notebook Tests / python-ci (windows-latest, 3.13) (push) Has been cancelled
Python Smoke Tests / python-ci (ubuntu-latest, 3.13) (push) Has been cancelled
Python Smoke Tests / python-ci (windows-latest, 3.13) (push) Has been cancelled
Python Unit Tests / python-ci (ubuntu-latest, 3.13) (push) Has been cancelled
Python Unit Tests / python-ci (windows-latest, 3.13) (push) Has been cancelled
37 lines
772 B
Python
37 lines
772 B
Python
# Copyright (c) 2024 Microsoft Corporation.
|
|
# Licensed under the MIT License
|
|
|
|
"""Create cache key."""
|
|
|
|
from typing import Any, Protocol, runtime_checkable
|
|
|
|
from graphrag_common.hasher import hash_data
|
|
|
|
|
|
@runtime_checkable
|
|
class CacheKeyCreator(Protocol):
|
|
"""Create cache key function protocol.
|
|
|
|
Args
|
|
----
|
|
input_args: dict[str, Any]
|
|
The input arguments for creating the cache key.
|
|
|
|
Returns
|
|
-------
|
|
str
|
|
The generated cache key.
|
|
"""
|
|
|
|
def __call__(
|
|
self,
|
|
input_args: dict[str, Any],
|
|
) -> str:
|
|
"""Create cache key."""
|
|
...
|
|
|
|
|
|
def create_cache_key(input_args: dict[str, Any]) -> str:
|
|
"""Create a cache key based on the input arguments."""
|
|
return hash_data(input_args)
|