Home / Class/ FakeTranslator Class — langchain Architecture

FakeTranslator Class — langchain Architecture

Architecture documentation for the FakeTranslator class in test_base.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  9e4d4fef_e80e_52af_f50f_3b83384adb94["FakeTranslator"]
  18e3bab6_a53a_ad0f_2cea_5bfc37a5d878["Visitor"]
  9e4d4fef_e80e_52af_f50f_3b83384adb94 -->|extends| 18e3bab6_a53a_ad0f_2cea_5bfc37a5d878
  d1736cc5_5d04_ec6a_a15a_4a8a730c63dd["test_base.py"]
  9e4d4fef_e80e_52af_f50f_3b83384adb94 -->|defined in| d1736cc5_5d04_ec6a_a15a_4a8a730c63dd
  5e73b9f5_9281_d99b_5941_7393ff3b36e6["_format_func()"]
  9e4d4fef_e80e_52af_f50f_3b83384adb94 -->|method| 5e73b9f5_9281_d99b_5941_7393ff3b36e6
  0de15a93_ee52_fa3b_b7fe_f6db06addae7["visit_operation()"]
  9e4d4fef_e80e_52af_f50f_3b83384adb94 -->|method| 0de15a93_ee52_fa3b_b7fe_f6db06addae7
  ddf5c8de_7c34_f88c_1c2e_16afecc719fe["visit_comparison()"]
  9e4d4fef_e80e_52af_f50f_3b83384adb94 -->|method| ddf5c8de_7c34_f88c_1c2e_16afecc719fe
  ff75578d_881c_9093_3ef4_b858a66c7e21["visit_structured_query()"]
  9e4d4fef_e80e_52af_f50f_3b83384adb94 -->|method| ff75578d_881c_9093_3ef4_b858a66c7e21

Relationship Graph

Source Code

libs/langchain/tests/unit_tests/retrievers/self_query/test_base.py lines 25–61

class FakeTranslator(Visitor):
    allowed_comparators = (
        Comparator.EQ,
        Comparator.NE,
        Comparator.LT,
        Comparator.LTE,
        Comparator.GT,
        Comparator.GTE,
        Comparator.CONTAIN,
        Comparator.LIKE,
    )
    allowed_operators = (Operator.AND, Operator.OR, Operator.NOT)

    def _format_func(self, func: Operator | Comparator) -> str:
        self._validate_func(func)
        return f"${func.value}"

    def visit_operation(self, operation: Operation) -> dict:
        args = [arg.accept(self) for arg in operation.arguments]
        return {self._format_func(operation.operator): args}

    def visit_comparison(self, comparison: Comparison) -> dict:
        return {
            comparison.attribute: {
                self._format_func(comparison.comparator): comparison.value,
            },
        }

    def visit_structured_query(
        self,
        structured_query: StructuredQuery,
    ) -> tuple[str, dict]:
        if structured_query.filter is None:
            kwargs = {}
        else:
            kwargs = {"filter": structured_query.filter.accept(self)}
        return structured_query.query, kwargs

Extends

Frequently Asked Questions

What is the FakeTranslator class?
FakeTranslator is a class in the langchain codebase, defined in libs/langchain/tests/unit_tests/retrievers/self_query/test_base.py.
Where is FakeTranslator defined?
FakeTranslator is defined in libs/langchain/tests/unit_tests/retrievers/self_query/test_base.py at line 25.
What does FakeTranslator extend?
FakeTranslator extends Visitor.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free