🐨CoALA: Awesome Language Agents


A compilation of language agents using the Cognitive Architectures for Language Agents (🐨CoALA) framework.
@misc{sumers2023cognitive,
title={Cognitive Architectures for Language Agents},
author={Theodore Sumers and Shunyu Yao and Karthik Narasimhan and Thomas L. Griffiths},
year={2023},
eprint={2309.02427},
archivePrefix={arXiv},
primaryClass={cs.AI}
}
🐨CoALA OverviewCoLLA neatly specifies a language agent starting with its action space, which has 2 parts:
- External actions to interact with external environments (grounding)
- Internal actions to interact with internal memories (reasoning, retrieval, learning)
- A language agent has a short-term working memory and several (optional) long-term memories (episodic for experience, semantic for knowledge, procedural for code/LLM)
- Reasoning = update working memory (with LLM)
- Retrieval = read long-term memory
- Learning = write long-term memory

Then how does a language agent choose which action to take? Its actions are structured into decision making cycles, and each cycle has two stages:
- Planning: The agent applies reasoning/retrieval actions to (iteratively) propose and evaluate actions, then select a learning/grounding action.
- Execution: The selected learning/grounding action is executed to affect the internal memory or external world.

To understand more, read Section 4 of our paper.
Resources(more to be added soon. pull request welcome.)