SyamNaren's picture
upload env
63deadc verified
"""
**Utility functions** for LangChain.
These functions do not depend on any other LangChain module.
"""
from typing import TYPE_CHECKING, Any
from langchain_core.utils import (
comma_list,
get_from_dict_or_env,
get_from_env,
stringify_dict,
stringify_value,
)
from langchain_core.utils.formatting import StrictFormatter, formatter
from langchain_core.utils.input import (
get_bolded_text,
get_color_mapping,
get_colored_text,
print_text,
)
from langchain_core.utils.utils import (
check_package_version,
convert_to_secret_str,
get_pydantic_field_names,
guard_import,
mock_now,
raise_for_status_with_text,
xor_args,
)
from langchain._api import create_importer
if TYPE_CHECKING:
from langchain_community.utils.math import (
cosine_similarity,
cosine_similarity_top_k,
)
# Not deprecated right now because we will likely need to move these functions
# back into langchain (as long as we're OK with the dependency on numpy).
_MODULE_LOOKUP = {
"cosine_similarity": "langchain_community.utils.math",
"cosine_similarity_top_k": "langchain_community.utils.math",
}
_import_attribute = create_importer(__package__, module_lookup=_MODULE_LOOKUP)
def __getattr__(name: str) -> Any:
"""Look up attributes dynamically."""
return _import_attribute(name)
__all__ = [
"StrictFormatter",
"check_package_version",
"comma_list",
"convert_to_secret_str",
"cosine_similarity",
"cosine_similarity_top_k",
"get_bolded_text",
"get_color_mapping",
"get_colored_text",
"get_from_dict_or_env",
"get_from_env",
"formatter",
"get_pydantic_field_names",
"guard_import",
"mock_now",
"print_text",
"raise_for_status_with_text",
"stringify_dict",
"stringify_value",
"xor_args",
]