🐛 fix(base.py): handle import errors when importing utilities to prevent application crashes
The code now handles import errors when importing utilities from the `langchain.utilities` module. If an import error occurs, the utility is skipped and not added to the `type_dict` dictionary. This prevents the application from crashing when encountering an invalid or missing utility.
This commit is contained in:
parent
49bcadf892
commit
f6ab266294
1 changed files with 8 additions and 4 deletions
|
|
@ -28,10 +28,14 @@ class UtilityCreator(LangChainTypeCreator):
|
||||||
"""
|
"""
|
||||||
if self.type_dict is None:
|
if self.type_dict is None:
|
||||||
settings_service = get_settings_service()
|
settings_service = get_settings_service()
|
||||||
self.type_dict = {
|
self.type_dict = {}
|
||||||
utility_name: import_class(f"langchain.utilities.{utility_name}")
|
for utility_name in utilities.__all__:
|
||||||
for utility_name in utilities.__all__
|
try:
|
||||||
}
|
imported = import_class(f"langchain.utilities.{utility_name}")
|
||||||
|
self.type_dict[utility_name] = imported
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
|
||||||
self.type_dict["SQLDatabase"] = utilities.SQLDatabase
|
self.type_dict["SQLDatabase"] = utilities.SQLDatabase
|
||||||
# Filter according to settings.utilities
|
# Filter according to settings.utilities
|
||||||
self.type_dict = {
|
self.type_dict = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue