跳至主要内容

快速入门

安装

您可以通过运行以下命令来安装TaskWeaver:

# [optional] create a conda environment to isolate the dependencies
# conda create -n taskweaver python=3.10
# conda activate taskweaver

# clone the repository
git clone https://github.com/microsoft/TaskWeaver.git
cd TaskWeaver
# install the requirements
pip install -r requirements.txt

项目目录

TaskWeaver作为一个进程运行,您需要创建一个项目目录来存储插件和配置文件。 我们在project文件夹中提供了一个示例项目目录。您可以将project文件夹复制到您的工作区。 一个项目目录通常包含以下文件和文件夹:

📦project
┣ 📜taskweaver_config.json # the project configuration file for TaskWeaver
┣ 📂plugins # the folder to store plugins
┣ 📂logs # the folder to store logs, will be generated after program starts
┣ 📂examples
┣ 📂 planner_examples # the folder to store planner examples
┗ 📂 code_generator_examples # the folder to store code generator examples
┗ 📂workspace # the directory stores session data, will be generated after program starts
┗ 📂 session_id
┣ 📂ces # the folder used by the code execution service
┣ 📂cwd # the current working directory to run the generated code
┗ other session data

OpenAI 配置

在运行TaskWeaver之前,您需要提供OpenAI API密钥和其他必要信息。 您可以通过编辑taskweaver_config.json文件来完成此操作。 如果您使用的是Azure OpenAI,则需要在taskweaver_config.json文件中设置以下参数:

Azure OpenAI

{
"llm.api_base": "https://xxx.openai.azure.com/",
"llm.api_key": "your_api_key",
"llm.api_type": "azure",
"llm.api_version": "the api version",
"llm.model": "the model name, e.g., gpt-4" # In Azure OpenAI, the model name is the deployment_name
}

OpenAI

{
"llm.api_key": "the api key",
"llm.model": "the model name, e.g., gpt-4"
}

💡 只有最新版本的OpenAI API支持json_object响应格式。 如果您使用的是旧版OpenAI API,需要在taskweaver_config.json文件中设置"llm.response_format"=null

更多配置选项可在配置文档中找到。

启动TaskWeaver

# assume you are in the TaskWeaver folder cloned from the repository
python -m taskweaver -p ./project/ # -p is the path to the project directory

这将启动TaskWeaver进程,您可以通过命令行(CLI)界面与其交互。 如果一切顺利,您将看到以下提示:

=========================================================
_____ _ _ __
|_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____
| |/ _` / __| |/ /| | /| / / _ \/ __ `/ | / / _ \/ ___/
| | (_| \__ \ < | |/ |/ / __/ /_/ /| |/ / __/ /
|_|\__,_|___/_|\_\|__/|__/\___/\__,_/ |___/\___/_/
=========================================================
TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request?
Human: ___

还有其他方式可以启动TaskWeaver:

  • A Chainlit UI interface: TaskWeaver提供了一个实验性的基于网页的界面,用于与系统交互。
  • A Library: 你也可以将TaskWeaver作为Python代码中的一个库来使用。
  • 一体化Docker镜像: 我们提供了包含运行TaskWeaver所需全部依赖项的Docker镜像。