diff --git a/.asset/taskweaver_arch.png b/.asset/taskweaver_arch.png
new file mode 100644
index 00000000..d884f973
Binary files /dev/null and b/.asset/taskweaver_arch.png differ
diff --git a/README.md b/README.md
index bbf9aed9..622704b5 100644
--- a/README.md
+++ b/README.md
@@ -2,12 +2,24 @@
TaskWeaver
-A **code-first** agent framework for seamlessly planning and executing data analytics tasks.
-This innovative framework interprets user requests through coded snippets and efficiently
-coordinates a variety of plugins in the form of functions to execute
-data analytics tasks.
+
-# Newsπ
+[![Discord Follow](https://dcbadge.vercel.app/api/server/Z56MXmZgMb?style=flat)](https://discord.gg/Z56MXmZgMb)
+![Python Version](https://img.shields.io/badge/Python-3776AB?&logo=python&logoColor=white-blue&label=3.10%20%7C%203.11)
+[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
+![Welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)
+
+
+
+TaskWeaver is A **code-first** agent framework for seamlessly planning and executing data analytics tasks. This innovative framework interprets user requests through coded snippets and efficiently coordinates a variety of plugins in the form of functions to execute data analytics tasks in a stateful manner.
+
+
+
+
+
+
+
+## π News
- π
2024-01-01: Happy New Year π with TaskWeaver [Discord](https://discord.gg/Z56MXmZgMb).
- π
2023-12-21: TaskWeaver now supports a number of LLMs, such as LiteLLM, Ollama, Gemini, and QWenπ.
- π
2023-12-21: TaskWeaver Website is now [available](https://microsoft.github.io/TaskWeaver/) with more documentations.
@@ -15,7 +27,7 @@ data analytics tasks.
-## Highlights
+## π₯ Highlights
- [x] **Rich data structure** - TaskWeaver allows you to work with rich data structures in Python, such as DataFrames, instead of dealing with strings.
- [x] **Customized algorithms** - TaskWeaver allows you to encapsulate your own algorithms into plugins and orchestrate them.
@@ -27,9 +39,9 @@ data analytics tasks.
- [x] **Security consideration** - TaskWeaver supports a basic session management to keep different users' data separate. The code execution is separated into different processes to avoid mutal interference.
- [x] **Easy extension** - TaskWeaver is easy to extend to accomplish more complex tasks with multiple agents as the plugins.
-## Quick Start
+## β¨ Quick Start
-### Installation
+### π οΈ Step 1: Installation
TaskWeaver requires **Python >= 3.10**. It can be installed by running the following command:
```bash
# [optional to create conda environment]
@@ -44,7 +56,7 @@ pip install -r requirements.txt
```
-### Configure the LLMs
+### ποΈ Step 2: Configure the LLMs
Before running TaskWeaver, you need to provide your LLM configurations. Taking OpenAI as an example, you can configure `taskweaver_config.json` file as follows.
#### OpenAI
@@ -57,9 +69,9 @@ Before running TaskWeaver, you need to provide your LLM configurations. Taking O
π‘ TaskWeaver also supports other LLMs and advanced configurations, please check the [documents](https://microsoft.github.io/TaskWeaver/docs/overview) for more details.
-### Start TaskWeaver
+### π© Step 3: Start TaskWeaver
-#### 1. Command Line Interaction
+#### β¨οΈ Command Line (CLI)
```bash
# assume you are in the cloned TaskWeaver folder
python -m taskweaver -p ./project/
@@ -79,26 +91,29 @@ TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please e
Human: ___
```
-#### 2. Web UI
+#### or π» Web UI
TaskWeaver also supports WebUI for demo purpose, please refers to [web UI docs](https://microsoft.github.io/TaskWeaver/docs/usage/webui) for more details.
-#### 3. Import as a Library
+#### or π Import as a Library
TaskWeaver can be imported as a library to integrate with your existing project, more information can be found in [docs](https://microsoft.github.io/TaskWeaver/docs/usage/library)
-## Documentation
+## π Documentation
More documentations can be found on [TaskWeaver Website](https://microsoft.github.io/TaskWeaver).
+### βGet help
+* βGitHub Issues (prefered)
+* [π¬ Discord](https://discord.gg/Z56MXmZgMb) for discussion
---
-## Demo Examples
+## π¬ Demo Examples
The demos were made based on the [web UI](https://microsoft.github.io/TaskWeaver/docs/usage/webui), which is better for displaying the generated artifacts such as images.
The demos could also be conducted in the command line interface.
-#### Example 1: Pull data from a database and apply an anomaly detection algorithm
+#### 1οΈβ£π Example 1: Pull data from a database and apply an anomaly detection algorithm
In this example, we will show you how to use TaskWeaver to pull data from a database and apply an anomaly detection algorithm.
[Anomaly Detection](https://github.com/microsoft/TaskWeaver/assets/7489260/248b9a0c-d504-4708-8c2e-e004689ee8c6)
@@ -122,7 +137,7 @@ pip install langchain
pip install tabulate
```
-#### Example 2: Forecast QQQ's price in the next 7 days
+#### 2οΈβ£π¦ Example 2: Forecast QQQ's price in the next 7 days
In this example, we will show you how to use TaskWeaver to forecast QQQ's price in the next 7 days.
[Nasdaq 100 Index Price Forecasting](https://github.com/microsoft/TaskWeaver/assets/7489260/1361ed83-16c3-4056-98fc-e0496ecab015)
@@ -140,7 +155,7 @@ For more examples, please refer to our [paper](http://export.arxiv.org/abs/2311.
> Typically, more concrete prompts will help the model to generate better plans and code.
-## Citation
+## π Citation
Our paper could be found [here](http://export.arxiv.org/abs/2311.17541).
If you use TaskWeaver in your research, please cite our paper:
```