Add support for Runnable objects in generate_result function
This commit is contained in:
parent
7999b3364b
commit
f36b6a5693
1 changed files with 5 additions and 0 deletions
|
|
@ -12,6 +12,7 @@ from langflow.interface.run import build_sorted_vertices, get_memory_key, update
|
||||||
from langflow.services.deps import get_session_service
|
from langflow.services.deps import get_session_service
|
||||||
from loguru import logger
|
from loguru import logger
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel
|
||||||
|
from langchain_core.runnables.base import Runnable
|
||||||
|
|
||||||
|
|
||||||
def fix_memory_inputs(langchain_object):
|
def fix_memory_inputs(langchain_object):
|
||||||
|
|
@ -131,6 +132,10 @@ def generate_result(langchain_object: Union[Chain, VectorStore], inputs: dict):
|
||||||
result = langchain_object.search(**inputs)
|
result = langchain_object.search(**inputs)
|
||||||
elif isinstance(langchain_object, Document):
|
elif isinstance(langchain_object, Document):
|
||||||
result = langchain_object.dict()
|
result = langchain_object.dict()
|
||||||
|
elif isinstance(langchain_object, Runnable):
|
||||||
|
result = langchain_object.invoke(inputs)
|
||||||
|
result = result.content if hasattr(result, "content") else result
|
||||||
|
|
||||||
else:
|
else:
|
||||||
logger.warning(f"Unknown langchain_object type: {type(langchain_object)}")
|
logger.warning(f"Unknown langchain_object type: {type(langchain_object)}")
|
||||||
if isinstance(langchain_object, Coroutine):
|
if isinstance(langchain_object, Coroutine):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue