Application
TaskWeaverApp是TaskWeaver库的主类。作为该库的入口点,用于创建和运行任务。
通过调用TaskWeaverApp.__init__构造函数来创建TaskWeaverApp实例。
class TaskWeaverApp(object):
def __init__(
self,
app_dir: Optional[str] = None,
use_local_uri: Optional[bool] = None,
config: Optional[Dict[str, Any]] = None,
**kwargs: Any,
) -> None:
"""
Initialize the TaskWeaver app.
:param app_dir: The project directory.
:param use_local_uri: Whether to use local URI for artifacts.
:param config: The configuration.
:param kwargs: The additional arguments.
"""
app_dir参数是项目目录的路径。
use_local_uri参数是一个布尔值,用于指定是否对工件使用本地URI。
如果工件存储在本地,则应将use_local_uri参数设置为True。
当TaskWeaver作为远程服务使用且工件是远程URI时,这非常有用。
config参数是一个包含应用程序配置设置的字典。
config参数中的任何设置都将覆盖配置文件或环境变量中的现有设置。
TaskWeaverApp 类包含以下方法:
def get_session(
self,
session_id: Optional[str] = None,
) -> Session:
"""
Get the session. Return a new session if the session ID is not provided.
:param session_id: The session ID.
:return: The session.
"""
get_session方法用于获取会话。如果未提供session_id参数,则会创建一个新会话。
会话是用户与TaskWeaver应用程序进行对话的实例。
我们将在稍后讨论Session类。
def stop(self) -> None:
"""
Stop the TaskWeaver app. This function must be called before the app exits.
"""
stop方法用于停止TaskWeaver应用。必须在应用退出前调用此方法。
下面展示了一个创建TaskWeaverApp实例的示例:
from taskweaver.app.app import TaskWeaverApp
app = TaskWeaverApp(app_dir="path/to/project/")
session = app.get_session()
round = session.send_message("Hello, how can I help you?")
print(round)
app.stop()
在本示例中,创建了一个TaskWeaverApp实例,并将项目目录设置为"path/to/project/"。
随后使用get_session方法创建会话,并向该会话发送消息。
响应将是TaskWeaver应用生成的完整对话轮次。
最后调用stop方法来停止TaskWeaver应用。