diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 27d6e89..b96d9fc 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -20,5 +20,8 @@ jobs:
path: .cache
- run: pip install mkdocs-material
- run: pip install mike
+ - run: pip install markdown-callouts
+ - run: pip install mkdocs-callouts
+ - run: pip install mkdocs-click
- run: pip install pillow cairosvg
- run: mkdocs gh-deploy --force
\ No newline at end of file
diff --git a/docs/README.md b/docs/README.md
index 0f2fd24..46b7a30 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -14,36 +14,22 @@
-
+*For the best experience, we recommend reading this document on the [website](https://sotopia-lab.github.io/awesome-social-agents/).*
The rise of Large Language Models (LLMs)/foundational models presents new opportunities for simulating complex human **social behaviors**. As a result, there is a rapidly growing body of work emerging in this domain. We hope to categorize and synergize recent efforts to provide a comprehensive guidebook of **social agents** weaving together multiple domains, including language, embodiment, and robotics.
Our goal is to offer insights crucial for understanding and harnessing **social agents'** potential impact on society. We strive to keep these updated regularly and continuously. **We greatly appreciate any contributions via PRs, issues, emails, or other methods.**
-> [!Note]
+> [!NOTE]
> * **Agent** and **Environment** (Sutton and Barto 2018): An agent is a goal-driven decision-maker that sense and act upon the state of the environment. An environment comprises the state outside the agent, including the other agents if any.
> * **Social Agent**: An agent that interacts with a multi-agent environment.
> * **Socially Intelligent Agent**: A social agent that interacts and communicates with other agents in a human-interpretable way.
> more notes
> - The social intelligence that we are focusing on is human-like, excluding the collective intelligence in a lot of social animals like ants, bees, fishes.
> - To understand whether an entity is a (social) agent, we have to situate it in an environment. It is not possible to discuss an agent outside of an environment.
+> - We acknowledge there are many types of definitions for social agents. Our defitions here help narrow down the scope of our survey.
-Social Agent Examples:
-
-| Examples | Social agent | Socially intelligent agent |
-| -------- | ------- | ------- |
-| Agent outputing only yes or no | β, if the yes or no is somewhat meaningful | β, if the yes or no is interpretable by a certain group of people. But the communication bandwidth is quite limited, so its social intelligence level could be low. |
-| Agent outputting only yes | β, the agent could not perceive environment and act accordingly | β |
-| [StarCraft](https://www.nature.com/articles/s41586-019-1724-z) Agents | β, they interact |β, humans cannot understand their internal signals |
-| Agents speak an artificial code language that only few people understand | β, they interact | β, they interact and communicate in a human-interpretable way |
-| [Trisolarans](https://aliens.fandom.com/wiki/Trisolaran) | β, they interact | β, their way of interaction is different from how humans communicate. They are essentially mind readers, and they don't need theory of mind |
-| A newspaper, or a bot that only responds you with today's weather in Pittsburgh | β, it doesn't interact | β |
-| A [Webareana](https://webarena.dev/) agent | β, it only interacts with the browser environment | β |
-| A tree | β, it doesn't interact | β |
-| A lightbulb with motion sensor that turns on when you walk by | ? | ? |
-| Self-driving cars on the real road | β, they interact |?|
-
-
+πͺ *Check out the [examples](examples.md) of social agents.*
π *We are currently working on a survey paper related to content of this repository. Stay tuned for updates!*
@@ -73,64 +59,7 @@ Our goal is to offer insights crucial for understanding and harnessing **social
- [Ethics](#ethics)
-# Taxonomy
-## 1 Social interaction types
-*The objectives of different agents*
-### 1.1 Pure collaboration
-*The objectives are shared among agents*
-
-### 1.2 Pure Competition
-*The objectives are zero-sum*
-
-### 1.3 Mixed Objectives
-*Agentsβ have different goals, but they are not zero-sum*
-
-### 1.4 Implicit Objectives
-*Goals are not expressed explicitly*
-
-## 2 Number of agents
-### 2.1 Two agents
-### 2.2 More than three agents
-### 2.3 Multiple teams of agents
-
-## 3 Social interaction environments
-### 3.1 Closed simulation
-*A fixed hand-crafted world*
-
-### 3.2 Open simulation
-*Procedurally expanded or naturally large env*
-
-### 3.3 Real physical world
-* Indoor scenes
-* Outdoor scenes
-
-
-## 4 Communication protocol
-### 4.1 Non-human-like (?) communication
-*Centralized control instead of modeling each agent on their own*
-
-### 4.2 Text Communication
-### 4.3 Speech Communication
-### 4.4 Non-verbal communication
-
-## 5 Modeling Techniques
-### 5.1 Prompting
-### 5.2 In-context learning
-### 5.3 Fine-tuning
-### 5.4 Reinforcement learning
-
-## 6 Human involvement
-### 6.1 No human involvement
-### 6.2 Simulated humans
-### 6.3 Human-in-loop
-
-## 7 Evaluation Protocol
-### 7.1 Rule-based evaluation
-### 7.2 Human evaluation
-### 7.3 Model-based evaluation
-## 8 Smaller categories
-### 8.1 Non-turn-based social interaction
## Papers
diff --git a/docs/examples.md b/docs/examples.md
new file mode 100644
index 0000000..0f10948
--- /dev/null
+++ b/docs/examples.md
@@ -0,0 +1,14 @@
+Social Agent Examples:
+
+| Examples | Social agent | Socially intelligent agent |
+| -------- | ------- | ------- |
+| Agent outputing only yes or no | β, if the yes or no is somewhat meaningful | β, if the yes or no is interpretable by a certain group of people. But the communication bandwidth is quite limited, so its social intelligence level could be low. |
+| Agent outputting only yes | β, the agent could not perceive environment and act accordingly | β |
+| [StarCraft](https://www.nature.com/articles/s41586-019-1724-z) Agents | β, they interact |β, humans cannot understand their internal signals |
+| Agents speak an artificial code language that only few people understand | β, they interact | β, they interact and communicate in a human-interpretable way |
+| [Trisolarans](https://aliens.fandom.com/wiki/Trisolaran) | β, they interact | β, their way of interaction is different from how humans communicate. They are essentially mind readers, and they don't need theory of mind |
+| A newspaper, or a bot that only responds you with today's weather in Pittsburgh | β, it doesn't interact | β |
+| A [Webareana](https://webarena.dev/) agent | β, it only interacts with the browser environment | β |
+| A tree | β, it doesn't interact | β |
+| A lightbulb with motion sensor that turns on when you walk by | ? | ? |
+| Self-driving cars on the real road | β, they interact |?|
\ No newline at end of file
diff --git a/docs/paper_table.md b/docs/paper_table.md
new file mode 100644
index 0000000..cfbe253
--- /dev/null
+++ b/docs/paper_table.md
@@ -0,0 +1 @@
+# Table of Papers
\ No newline at end of file
diff --git a/docs/taxonomy.md b/docs/taxonomy.md
new file mode 100644
index 0000000..227e0c6
--- /dev/null
+++ b/docs/taxonomy.md
@@ -0,0 +1,58 @@
+# Taxonomy
+## 1 Social interaction types
+*The objectives of different agents*
+### 1.1 Pure collaboration
+*The objectives are shared among agents*
+
+### 1.2 Pure Competition
+*The objectives are zero-sum*
+
+### 1.3 Mixed Objectives
+*Agentsβ have different goals, but they are not zero-sum*
+
+### 1.4 Implicit Objectives
+*Goals are not expressed explicitly*
+
+## 2 Number of agents
+### 2.1 Two agents
+### 2.2 More than three agents
+### 2.3 Multiple teams of agents
+
+## 3 Social interaction environments
+### 3.1 Closed simulation
+*A fixed hand-crafted world*
+
+### 3.2 Open simulation
+*Procedurally expanded or naturally large env*
+
+### 3.3 Real physical world
+* Indoor scenes
+* Outdoor scenes
+
+
+## 4 Communication protocol
+### 4.1 Non-human-like (?) communication
+*Centralized control instead of modeling each agent on their own*
+
+### 4.2 Text Communication
+### 4.3 Speech Communication
+### 4.4 Non-verbal communication
+
+## 5 Modeling Techniques
+### 5.1 Prompting
+### 5.2 In-context learning
+### 5.3 Fine-tuning
+### 5.4 Reinforcement learning
+
+## 6 Human involvement
+### 6.1 No human involvement
+### 6.2 Simulated humans
+### 6.3 Human-in-loop
+
+## 7 Evaluation Protocol
+### 7.1 Rule-based evaluation
+### 7.2 Human evaluation
+### 7.3 Model-based evaluation
+
+## 8 Smaller categories
+### 8.1 Non-turn-based social interaction
\ No newline at end of file
diff --git a/mkdocs.yml b/mkdocs.yml
index b0a9d59..7c6bfc3 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -36,6 +36,9 @@ extra:
provider: mike
generator: false
+repo_name: awesome-social-agents
+repo_url: https://github.com/sotopia-lab/awesome-social-agents
+
markdown_extensions:
- toc:
permalink: ο
@@ -47,9 +50,8 @@ markdown_extensions:
- pymdownx.snippets
- pymdownx.superfences
- callouts
- - mdx_gh_links:
- user: mkdocs
- repo: mkdocs
+ - admonition
+ - pymdownx.details
- mkdocs-click
plugins:
@@ -58,4 +60,5 @@ plugins:
canonical_version: null
css_dir: css
javascript_dir: js
- - search:
\ No newline at end of file
+ - search:
+ - callouts
\ No newline at end of file