Environments
Environments consist of the information that agents have access too as well as 'what can be done' to influence the environment. An environment sends information that an agent can receive.
Especially for systems without people-in-the-loop, there is potential for negative things to be done. This could be incorrectly writing files, sending emails/tweets that are inappropriate or spammy, and otherwise corrupt the positive value that an AI-agent may provide. Consequently it is important to have a sandbox
Sandbox¶
Sandboxes appropriately limit the ability of an Agent to export (write or send) or receieve (read from disk or memory) information beyond the Sandbox. While sandboxes may be fully isolated, sandbox-controllers can provide interaction boundaries that permit some essential degree of information input/output. These boundaries may the ability to only a single file or folder, or a set of domains that are on admit-lists, and refined with block-lists.
Cloud Based Sandboxes¶
E2B.dev sandbox
E2B.dev provides a cloud-based sandbox to enable AI-agents to within safe confines. Their Docs
Local Sandboxes¶
Example Environments¶
Chat environment¶
In a chat environment the GenAI receives text information from a user and then returns text information that is printed for the user to read.
Web environments¶
Webarena:
Developments "WebArena is a standalone, self-hostable web environment for building autonomous agents. WebArena creates websites from four popular categories with functionality and data mimicking their real-world equivalents. To emulate human problem-solving, WebArena also embeds tools and knowledge resources as independent websites. WebArena introduces a benchmark on interpreting high-level realistic natural language command to concrete web-based interactions. We provide annotated programs designed to programmatically validate the functional correctness of each task."
Social Simulations¶
Generative Agents: Interactive Simulacra of Human Behavior provides a town simulation to provide observable information and an interaction world with/between other agents.
Chat Arena ChatArena is a library that provides multi-agent language game environments.
??? example "Generative agent-based modeling with actions grounded in physical, social, or digital space using Concordia (Google DeepMind, December 2023) " Abstract: "Agent-based modeling has been around for decades, and applied widely across the social and natural sciences. The scope of this research method is now poised to grow dramatically as it absorbs the new affordances provided by Large Language Models (LLM)s. Generative Agent-Based Models (GABM) are not just classic Agent-Based Models (ABM)s where the agents talk to one another. Rather, GABMs are constructed using an LLM to apply common sense to situations, act "reasonably", recall common semantic knowledge, produce API calls to control digital technologies like apps, and communicate both within the simulation and to researchers viewing it from the outside. Here we present Concordia, a library to facilitate constructing and working with GABMs. Concordia makes it easy to construct language-mediated simulations of physically- or digitally-grounded environments. Concordia agents produce their behavior using a flexible component system which mediates between two fundamental operations: LLM calls and associative memory retrieval. A special agent called the Game Master (GM), which was inspired by tabletop role-playing games, is responsible for simulating the environment where the agents interact. Agents take actions by describing what they want to do in natural language. The GM then translates their actions into appropriate implementations. In a simulated physical world, the GM checks the physical plausibility of agent actions and describes their effects. In digital environments simulating technologies such as apps and services, the GM may handle API calls to integrate with external tools such as general AI assistants (e.g., Bard, ChatGPT), and digital apps (e.g., Calendar, Email, Search, etc.). Concordia was designed to support a wide array of applications both in scientific research and for evaluating performance of real digital services by simulating users and/or generating synthetic data." Paper
Operating Systems¶
The versatility and interpretability of an cursor and keyboard interface to software and programs within an OS, it provides a integral environment for AI agents to augment and automated otherwise hard-to-program tasks.
Embodied environments¶
Embodied environments involve acuiring information from reality using recording instrumentation like cameras, microphones.
Self-aware embodiments¶
Self aware embodiments involve knowing a measured of an actuating device, such as the angle or extension of a robotic limb.