diff --git a/src/backend/langflow/api/v1/chat.py b/src/backend/langflow/api/v1/chat.py index 7df4c65ed..9619d5f30 100644 --- a/src/backend/langflow/api/v1/chat.py +++ b/src/backend/langflow/api/v1/chat.py @@ -1,5 +1,6 @@ from fastapi import ( APIRouter, + HTTPException, WebSocket, WebSocketDisconnect, WebSocketException, @@ -24,3 +25,14 @@ async def websocket_endpoint(client_id: str, websocket: WebSocket): except WebSocketDisconnect as exc: logger.error(exc) await websocket.close(code=status.WS_1000_NORMAL_CLOSURE, reason=str(exc)) + + +@router.post("/build/{client_id}") +async def post_build(client_id: str, graph_data: dict): + """Build langchain object from data_graph.""" + try: + if chat_manager.build(client_id, graph_data.get("data")): + return {"message": "Build successful"} + except Exception as exc: + logger.exception(exc) + raise HTTPException(status_code=500, detail=str(exc)) from exc diff --git a/src/backend/langflow/api/v1/endpoints.py b/src/backend/langflow/api/v1/endpoints.py index 0427eb291..bef1c4d1e 100644 --- a/src/backend/langflow/api/v1/endpoints.py +++ b/src/backend/langflow/api/v1/endpoints.py @@ -1,5 +1,4 @@ import logging -from importlib.metadata import version from fastapi import APIRouter, HTTPException diff --git a/src/backend/langflow/cache/__init__.py b/src/backend/langflow/cache/__init__.py index 583d5ac6d..723aa9e18 100644 --- a/src/backend/langflow/cache/__init__.py +++ b/src/backend/langflow/cache/__init__.py @@ -1 +1,7 @@ -from langflow.cache.manager import cache_manager # noqa +from langflow.cache.manager import cache_manager +from langflow.cache.flow import InMemoryCache + +__all__ = [ + "cache_manager", + "InMemoryCache", +]