diff options
Diffstat (limited to 'autogpts/autogpt/tests/integration/memory/utils.py')
-rw-r--r-- | autogpts/autogpt/tests/integration/memory/utils.py | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/autogpts/autogpt/tests/integration/memory/utils.py b/autogpts/autogpt/tests/integration/memory/utils.py new file mode 100644 index 000000000..aea12832f --- /dev/null +++ b/autogpts/autogpt/tests/integration/memory/utils.py @@ -0,0 +1,44 @@ +import numpy +import pytest +from pytest_mock import MockerFixture + +import autogpt.memory.vector.memory_item as vector_memory_item +import autogpt.memory.vector.providers.base as memory_provider_base +from autogpt.config.config import Config +from autogpt.core.resource.model_providers import OPEN_AI_EMBEDDING_MODELS +from autogpt.memory.vector import get_memory +from autogpt.memory.vector.utils import Embedding + + +@pytest.fixture +def embedding_dimension(config: Config): + return OPEN_AI_EMBEDDING_MODELS[config.embedding_model].embedding_dimensions + + +@pytest.fixture +def mock_embedding(embedding_dimension: int) -> Embedding: + return numpy.full((1, embedding_dimension), 0.0255, numpy.float32)[0] + + +@pytest.fixture +def mock_get_embedding(mocker: MockerFixture, mock_embedding: Embedding): + mocker.patch.object( + vector_memory_item, + "get_embedding", + return_value=mock_embedding, + ) + mocker.patch.object( + memory_provider_base, + "get_embedding", + return_value=mock_embedding, + ) + + +@pytest.fixture +def memory_none(agent_test_config: Config, mock_get_embedding): + was_memory_backend = agent_test_config.memory_backend + + agent_test_config.memory_backend = "no_memory" + yield get_memory(agent_test_config) + + agent_test_config.memory_backend = was_memory_backend |