mirror of
https://github.com/langgenius/dify.git
synced 2026-05-11 06:37:13 +08:00
fix(api): address typing review feedback
This commit is contained in:
parent
cc5aac268a
commit
d014f0b91a
@ -520,9 +520,9 @@ class AdvancedChatAppGenerator(MessageBasedAppGenerator):
|
||||
worker_thread.start()
|
||||
|
||||
# release database connection, because the following new thread operations may take a long time
|
||||
with Session(bind=db.engine, expire_on_commit=False) as session:
|
||||
workflow = _refresh_model(session, workflow)
|
||||
message = _refresh_model(session, message)
|
||||
with Session(bind=db.engine, expire_on_commit=False):
|
||||
workflow = _refresh_model(workflow)
|
||||
message = _refresh_model(message)
|
||||
assert message is not None
|
||||
# workflow_ = session.get(Workflow, workflow.id)
|
||||
# assert workflow_ is not None
|
||||
@ -691,16 +691,20 @@ class AdvancedChatAppGenerator(MessageBasedAppGenerator):
|
||||
|
||||
|
||||
@overload
|
||||
def _refresh_model(session: Session, model: Workflow) -> Workflow: ...
|
||||
def _refresh_model(model: Workflow, session: Session | None = None) -> Workflow: ...
|
||||
|
||||
|
||||
@overload
|
||||
def _refresh_model(session: Session, model: Message) -> Message: ...
|
||||
def _refresh_model(model: Message, session: Session | None = None) -> Message: ...
|
||||
|
||||
|
||||
def _refresh_model(session: Session, model: Any) -> Any:
|
||||
del session
|
||||
with Session(bind=db.engine, expire_on_commit=False) as refresh_session:
|
||||
def _refresh_model(model: Any, session: Session | None = None) -> Any:
|
||||
if session is not None and hasattr(session, "get"):
|
||||
refresh_session = session
|
||||
else:
|
||||
refresh_session = Session(bind=db.engine, expire_on_commit=False)
|
||||
|
||||
with refresh_session:
|
||||
if isinstance(model, Workflow):
|
||||
detached_workflow = refresh_session.get(Workflow, model.id)
|
||||
assert detached_workflow is not None
|
||||
|
||||
@ -57,7 +57,7 @@ class AdvancedChatAppGenerateResponseConverter(AppGenerateResponseConverter):
|
||||
@classmethod
|
||||
def convert_stream_full_response(
|
||||
cls, stream_response: Iterator[AppStreamResponse]
|
||||
) -> Generator[dict | str, Any, None]:
|
||||
) -> Generator[dict | str, None, None]:
|
||||
"""
|
||||
Convert stream full response.
|
||||
:param stream_response: stream response
|
||||
@ -88,7 +88,7 @@ class AdvancedChatAppGenerateResponseConverter(AppGenerateResponseConverter):
|
||||
@classmethod
|
||||
def convert_stream_simple_response(
|
||||
cls, stream_response: Iterator[AppStreamResponse]
|
||||
) -> Generator[dict | str, Any, None]:
|
||||
) -> Generator[dict | str, None, None]:
|
||||
"""
|
||||
Convert stream simple response.
|
||||
:param stream_response: stream response
|
||||
|
||||
@ -84,7 +84,7 @@ class LoopVariableData(BaseModel):
|
||||
value_type = validation_info.data.get("value_type")
|
||||
if value_type == "variable":
|
||||
if value is None:
|
||||
return None
|
||||
raise ValueError("Variable loop inputs require a selector")
|
||||
return _VARIABLE_SELECTOR_ADAPTER.validate_python(value)
|
||||
if value_type == "constant":
|
||||
return _validate_loop_value(value)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user