Home / File/ schema.py — langchain Source File

schema.py — langchain Source File

Architecture documentation for schema.py, a python file in the langchain codebase. 3 imports, 0 dependents.

File python CoreAbstractions MessageSchema 3 imports 2 functions

Entity Profile

Dependency Diagram

graph LR
  fbdf51a2_fad3_bc14_c0e8_8e72986664b8["schema.py"]
  8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"]
  fbdf51a2_fad3_bc14_c0e8_8e72986664b8 --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3
  439a4142_6fa6_fe9a_2cba_7c9fb0cdceb7["langchain_classic._api"]
  fbdf51a2_fad3_bc14_c0e8_8e72986664b8 --> 439a4142_6fa6_fe9a_2cba_7c9fb0cdceb7
  85b6d44b_f1b4_6709_95e6_22acff70d1d6["langchain_community.vectorstores.redis.schema"]
  fbdf51a2_fad3_bc14_c0e8_8e72986664b8 --> 85b6d44b_f1b4_6709_95e6_22acff70d1d6
  style fbdf51a2_fad3_bc14_c0e8_8e72986664b8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

from typing import TYPE_CHECKING, Any

from langchain_classic._api import create_importer

if TYPE_CHECKING:
    from langchain_community.vectorstores.redis.schema import (
        FlatVectorField,
        HNSWVectorField,
        NumericFieldSchema,
        RedisDistanceMetric,
        RedisField,
        RedisModel,
        RedisVectorField,
        TagFieldSchema,
        TextFieldSchema,
        read_schema,
    )

# Create a way to dynamically look up deprecated imports.
# Used to consolidate logic for raising deprecation warnings and
# handling optional imports.
DEPRECATED_LOOKUP = {
    "RedisDistanceMetric": "langchain_community.vectorstores.redis.schema",
    "RedisField": "langchain_community.vectorstores.redis.schema",
    "TextFieldSchema": "langchain_community.vectorstores.redis.schema",
    "TagFieldSchema": "langchain_community.vectorstores.redis.schema",
    "NumericFieldSchema": "langchain_community.vectorstores.redis.schema",
    "RedisVectorField": "langchain_community.vectorstores.redis.schema",
    "FlatVectorField": "langchain_community.vectorstores.redis.schema",
    "HNSWVectorField": "langchain_community.vectorstores.redis.schema",
    "RedisModel": "langchain_community.vectorstores.redis.schema",
    "read_schema": "langchain_community.vectorstores.redis.schema",
}

_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)


def __getattr__(name: str) -> Any:
    """Look up attributes dynamically."""
    return _import_attribute(name)


__all__ = [
    "FlatVectorField",
    "HNSWVectorField",
    "NumericFieldSchema",
    "RedisDistanceMetric",
    "RedisField",
    "RedisModel",
    "RedisVectorField",
    "TagFieldSchema",
    "TextFieldSchema",
    "read_schema",
]

Subdomains

Dependencies

  • langchain_classic._api
  • langchain_community.vectorstores.redis.schema
  • typing

Frequently Asked Questions

What does schema.py do?
schema.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 schema.py?
schema.py defines 2 function(s): __getattr__, langchain_community.
What does schema.py depend on?
schema.py imports 3 module(s): langchain_classic._api, langchain_community.vectorstores.redis.schema, typing.
Where is schema.py in the architecture?
schema.py is located at libs/langchain/langchain_classic/vectorstores/redis/schema.py (domain: CoreAbstractions, subdomain: MessageSchema, directory: libs/langchain/langchain_classic/vectorstores/redis).

Analyze Your Own Codebase

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

Try Supermodel Free