ref: Remove some useless asyncio.to_thread (#5149)
Remove some useless asyncio.to_thread
This commit is contained in:
parent
0b39554795
commit
c0b25fa651
10 changed files with 44 additions and 94 deletions
|
|
@ -1,56 +1,10 @@
|
|||
import asyncio
|
||||
from typing import cast
|
||||
|
||||
from langflow.custom import Component
|
||||
from langflow.memory import astore_message
|
||||
from langflow.schema import Data
|
||||
from langflow.schema.message import Message
|
||||
|
||||
|
||||
class ChatComponent(Component):
|
||||
display_name = "Chat Component"
|
||||
description = "Use as base for chat components."
|
||||
|
||||
async def build_with_data(
|
||||
self,
|
||||
*,
|
||||
sender: str | None = "User",
|
||||
sender_name: str | None = "User",
|
||||
input_value: str | Data | Message | None = None,
|
||||
files: list[str] | None = None,
|
||||
session_id: str | None = None,
|
||||
return_message: bool = False,
|
||||
) -> str | Message:
|
||||
message = await asyncio.to_thread(self._create_message, input_value, sender, sender_name, files, session_id)
|
||||
message_text = message.text if not return_message else message
|
||||
|
||||
self.status = message_text
|
||||
if session_id and isinstance(message, Message) and isinstance(message.text, str):
|
||||
flow_id = self.graph.flow_id if hasattr(self, "graph") else None
|
||||
messages = await astore_message(message, flow_id=flow_id)
|
||||
self.status = messages
|
||||
self._send_messages_events(messages)
|
||||
|
||||
return cast("str | Message", message_text)
|
||||
|
||||
def _create_message(self, input_value, sender, sender_name, files, session_id) -> Message:
|
||||
if isinstance(input_value, Data):
|
||||
return Message.from_data(input_value)
|
||||
return Message(
|
||||
text=input_value,
|
||||
sender=sender,
|
||||
sender_name=sender_name,
|
||||
files=files,
|
||||
session_id=session_id,
|
||||
category="message",
|
||||
)
|
||||
|
||||
def _send_messages_events(self, messages) -> None:
|
||||
if hasattr(self, "_event_manager") and self._event_manager:
|
||||
for stored_message in messages:
|
||||
id_ = stored_message.id
|
||||
self._send_message_event(message=stored_message, id_=id_)
|
||||
|
||||
def get_properties_from_source_component(self):
|
||||
if hasattr(self, "_vertex") and hasattr(self._vertex, "incoming_edges") and self._vertex.incoming_edges:
|
||||
source_id = self._vertex.incoming_edges[0].source_id
|
||||
|
|
|
|||
|
|
@ -296,9 +296,6 @@ class DirectoryReader:
|
|||
file_content = str(StringCompressor(file_content).compress_string())
|
||||
return True, file_content
|
||||
|
||||
async def get_output_types_from_code_async(self, code: str):
|
||||
return await asyncio.to_thread(self.get_output_types_from_code, code)
|
||||
|
||||
async def abuild_component_menu_list(self, file_paths):
|
||||
response = {"menu": []}
|
||||
logger.debug("-------------------- Async Building component menu list --------------------")
|
||||
|
|
@ -328,7 +325,7 @@ class DirectoryReader:
|
|||
|
||||
if validation_result:
|
||||
try:
|
||||
output_types = await self.get_output_types_from_code_async(result_content)
|
||||
output_types = await asyncio.to_thread(self.get_output_types_from_code, result_content)
|
||||
except Exception: # noqa: BLE001
|
||||
logger.exception("Error while getting output types from code")
|
||||
output_types = [component_name_camelcase]
|
||||
|
|
|
|||
|
|
@ -114,10 +114,10 @@ class TracingService(Service):
|
|||
async def initialize_tracers(self) -> None:
|
||||
try:
|
||||
await self.start()
|
||||
await asyncio.to_thread(self._initialize_langsmith_tracer)
|
||||
await asyncio.to_thread(self._initialize_langwatch_tracer)
|
||||
await asyncio.to_thread(self._initialize_langfuse_tracer)
|
||||
await asyncio.to_thread(self._initialize_arize_phoenix_tracer)
|
||||
self._initialize_langsmith_tracer()
|
||||
self._initialize_langwatch_tracer()
|
||||
self._initialize_langfuse_tracer()
|
||||
self._initialize_arize_phoenix_tracer()
|
||||
except Exception as e: # noqa: BLE001
|
||||
logger.debug(f"Error initializing tracers: {e}")
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue