test_max_marginal_relevance.py — langchain Source File
Architecture documentation for test_max_marginal_relevance.py, a python file in the langchain codebase. 5 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR b8ccb7a9_7dba_7f31_a422_739c1083c806["test_max_marginal_relevance.py"] 120e2591_3e15_b895_72b6_cb26195e40a6["pytest"] b8ccb7a9_7dba_7f31_a422_739c1083c806 --> 120e2591_3e15_b895_72b6_cb26195e40a6 c554676d_b731_47b2_a98f_c1c2d537c0aa["langchain_core.documents"] b8ccb7a9_7dba_7f31_a422_739c1083c806 --> c554676d_b731_47b2_a98f_c1c2d537c0aa 77801658_6b3a_bc26_7e54_388e5c04807d["langchain_qdrant"] b8ccb7a9_7dba_7f31_a422_739c1083c806 --> 77801658_6b3a_bc26_7e54_388e5c04807d a50ef027_f19e_86a8_94ef_895b4566f94e["tests.integration_tests.common"] b8ccb7a9_7dba_7f31_a422_739c1083c806 --> a50ef027_f19e_86a8_94ef_895b4566f94e 513f2bf4_0acd_14e4_0a43_45f7716ce101["tests.integration_tests.fixtures"] b8ccb7a9_7dba_7f31_a422_739c1083c806 --> 513f2bf4_0acd_14e4_0a43_45f7716ce101 style b8ccb7a9_7dba_7f31_a422_739c1083c806 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
from __future__ import annotations
import pytest # type: ignore[import-not-found]
from langchain_core.documents import Document
from langchain_qdrant import Qdrant
from tests.integration_tests.common import (
ConsistentFakeEmbeddings,
assert_documents_equals,
)
from tests.integration_tests.fixtures import (
qdrant_locations,
)
@pytest.mark.parametrize("batch_size", [1, 64])
@pytest.mark.parametrize("content_payload_key", [Qdrant.CONTENT_KEY, "test_content"])
@pytest.mark.parametrize("metadata_payload_key", [Qdrant.METADATA_KEY, "test_metadata"])
@pytest.mark.parametrize("vector_name", [None, "my-vector"])
@pytest.mark.parametrize("qdrant_location", qdrant_locations())
async def test_qdrant_max_marginal_relevance_search(
batch_size: int,
content_payload_key: str,
metadata_payload_key: str,
vector_name: str | None,
qdrant_location: str,
) -> None:
"""Test end to end construction and MRR search."""
texts = ["foo", "bar", "baz"]
metadatas = [{"page": i} for i in range(len(texts))]
docsearch = Qdrant.from_texts(
texts,
ConsistentFakeEmbeddings(),
metadatas=metadatas,
content_payload_key=content_payload_key,
metadata_payload_key=metadata_payload_key,
batch_size=batch_size,
vector_name=vector_name,
location=qdrant_location,
distance_func="EUCLID", # Euclid distance used to avoid normalization
)
output = await docsearch.amax_marginal_relevance_search(
"foo", k=2, fetch_k=3, lambda_mult=0.0
)
assert_documents_equals(
output,
[
Document(page_content="foo", metadata={"page": 0}),
Document(page_content="baz", metadata={"page": 2}),
],
)
Domain
Subdomains
Dependencies
- langchain_core.documents
- langchain_qdrant
- pytest
- tests.integration_tests.common
- tests.integration_tests.fixtures
Source
Frequently Asked Questions
What does test_max_marginal_relevance.py do?
test_max_marginal_relevance.py is a source file in the langchain codebase, written in python. It belongs to the CoreAbstractions domain, MessageSchema subdomain.
What functions are defined in test_max_marginal_relevance.py?
test_max_marginal_relevance.py defines 1 function(s): test_qdrant_max_marginal_relevance_search.
What does test_max_marginal_relevance.py depend on?
test_max_marginal_relevance.py imports 5 module(s): langchain_core.documents, langchain_qdrant, pytest, tests.integration_tests.common, tests.integration_tests.fixtures.
Where is test_max_marginal_relevance.py in the architecture?
test_max_marginal_relevance.py is located at libs/partners/qdrant/tests/integration_tests/async_api/test_max_marginal_relevance.py (domain: CoreAbstractions, subdomain: MessageSchema, directory: libs/partners/qdrant/tests/integration_tests/async_api).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free