`make_async` 函数接受一个同步函数(例如 LangChain agent),并返回一个异步函数,该异步函数将在单独的线程中运行原始函数。这对于运行长时间运行的同步任务而不会阻塞事件循环非常有用。
将在单独线程中运行的同步函数。
将在单独线程中运行同步函数的异步函数。
import time import chainlit as cl def sync_func(): time.sleep(5) return "Hello!" @cl.on_message async def main(message: cl.Message): answer = await cl.make_async(sync_func)() await cl.Message( content=answer, ).send()
import chainlit as cl res = await cl.make_async(agent)(input_str, callbacks=[cl.LangchainCallbackHandler()]) await cl.Message(content=res["text"]).send()
本页有帮助吗?