|
|
""" |
|
|
**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, |
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
_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", |
|
|
] |
|
|
|