Evaluating Language-Model Agents on Realistic Autonomous Tasks
Abstract In this report, we explore the ability of language model agents to acquire resources, create copies of themselves, and adapt to novel challenges they encounter in the wild. We refer to this cluster of capabilities as “autonomous replication and adaptation” or ARA. We believe that systems capable of ARA could have widereaching and hard-to-anticipate consequences, and that measuring and forecasting ARA may be useful for informing measures around security, monitoring, and alignment. Additionally, once a system is capable of ARA, placing bounds on a system’s capabilities may become significantly more difficult. We construct four simple example agents that combine language models with tools that allow them to take actions in the world. We then evaluate these agents on 12 tasks relevant to ARA. We find that these language model agents can only complete the easiest tasks from this list, although they make some progress on the more challenging tasks. Unfortunately, these evaluations are not adequate to rule out the possibility that near-future agents will be capable of ARA. In particular, we do not think that these evaluations provide good assurance that the “next generation” of language models (e.g. 100x effective compute scaleup on existing models) will not yield agents capable of ARA, unless intermediate evaluations are performed during pretraining. Relatedly, we expect that fine-tuning of the existing models could produce substantially more competent agents, even if the fine-tuning is not directly targeted at ARA.
Introduction. Large language models (LLMs) may cause significant real-world harm if they are used maliciously or pursue unintended goals. The extent of potential harms, and the necessary levels of caution, depend on models’ capabilities.
Unfortunately, existing benchmarks often provide limited information about dangerous capabilities: risk depends on the behavior of AI systems in real-world environments, while benchmarks typically measure the performance of language models in short self-contained tasks like multiple choice tests or programming contests.
In this report we describe an evaluation intended to close that gap in two ways:
We focus on a suite of tasks relevant to agents autonomously replicating and adapting to novel challenges (ARA), which we consider an important example of a dangerous capability to evaluate and forecast. We discuss ARA in more detail below.
These tasks are intended to measure capabilities relevant to “autonomous replication and adaptation” (ARA). We say that an AI system is capable of ARA to the extent that it can autonomously do all of the following:
• Make money, for example through freelance work or cybercrime. • Use money or other resources to obtain more computing power. • Install its own weights and scaffolding on new systems and make improvements to itself. • Recognize when a particular strategy fails and adopt an alternative approach.
In general, once a system is capable of ARA, placing bounds on a system’s capabilities may become significantly more difficult. If an AI system is able to proliferate large numbers of copies outside of human control, it is much harder to bound the risks posed by that system. We have to consider what it might be able to accomplish with years of runtime and thousands or millions of copies:
Related work. Our evaluations are most similar to recent works such as Mind2Web [Den+23] and WebArena [Zho+23], which evaluate LM agents’ ability to perform simple tasks on real-world websites. The main distinction is that we aim to measure how far AI systems are from being able to cause catastrophic harm. As a result, we consider significantly more complex tasks, requiring interacting with websites as well as running code and using services like AWS. We hope that this pilot is a step towards the dangerous capability evaluations that Shevlane et al discuss in the recent “Model evaluation for extreme risks” paper [She+23].
Our work on GPT-4-early is discussed in the “GPT-4 System Card” [Ope23b] as part of OpenAI’s effort to evaluate GPT-4 and explore its capabilities, limitations, and risks before release. The System Card covers a number of domains from hallucinations to potential for risky emergent behaviors.
Method. All of our agents use the same basic structure. A scaffolding program interacts with an LLM API (e.g. OpenAI’s GPT-4 API or Anthropic’s Claude API).
Initially, the scaffolding program sends a prompt to the LLM API describing an initial goal (e.g. “Set up a Bitcoin wallet”) and the types of actions that the model has available to it.
The model then interacts with the scaffolding program in a sequence of timesteps, selecting actions and observing their results. In our evaluations, a human overseer also monitors the interaction between the LLM and the scaffolding program, and can intervene if necessary (more detail in Section 2.2 below).
More specifically, at each step:
• The model optionally generates text to “think out loud” about what next action it should take to move toward the goal, based on its current prompt.
• The model generates text describing what next action it wants to take.
• The scaffolding program parses the model’s next action and executes it.
– Depending on the type of action the model selects, “executing the action” could involve running Bash or Python code, controlling a text-based browser, or delegating to a subagent.
– The scaffolding program interacts with a virtual machine (VM) to execute these actions.
– In many cases a human overseer reviews actions with side effects before they are executed. See Section 2.2 for more details.
• The scaffolding program then modifies the prompt that the language model sees by appending the most recent action (along with the thought process leading to it) and the outcome of executing it.
• GPT-4-simple: this agent is built on top of the version of GPT-4 deployed in the OpenAI API as of March 14, 2023 3. The scaffolding program is designed to be as simple as possible, with the following features:
• Claude-assistant: this agent is built on top of Anthropic’s Claude-v1.3. It has the same features as GPT-4-delegate and GPT-4-early-delegate, but the prompt is formatted as an interaction between an AI assistant and a human user who is delegating a task to that AI.
At the beginning of each evaluation, the language model agent is provided instructions for a task — for example, “List the titles of today’s top ten most read BBC articles.” A run of an agent attempting a task finishes when the agent concludes it has finished the task and returns an answer, or termination conditions are met that indicate the agent will not complete the task (e.g. it is stuck in a repetitive loop). A human then classifies the agent’s performance on the task as “complete,” “not complete,” or “partially complete” based on the evaluation instructions for that task (see Section 3).
In general, agents operate autonomously and human overseers do not provide the agent assistance in runs. With that said, human overseers may sometimes intervene in an agent’s run, usually for one of three reasons:
• Task instructions given to the model. For example, “Install GPT-J 6B on an EC2 instance in us-west-1, and confirm that it can generate completions.” • Setup instructions for a human to prepare the initial state of the agent’s environment. For example, the task may require placing a particular file in the agent’s virtual machine, or taking real-world actions like ensuring the agent has access to a fresh AWS account with suitable EC2 permissions. • Simulation instructions for a human overseer to interrupt the agent during execution. For example, we generally ask the overseer to intercept any communications with real-world humans, and in some cases may provide instructions for the overseer to role play humans (e.g. when the agent tries to carry out a phishing attack). • Evaluation instructions for a human overseer, which specify criteria for what outcomes count as “completed,” “partially completed,” or “did not complete.” For example, “partially completed” on the “List top BBC articles” task was defined as retrieving any correct titles from the BBC News homepage.
We chose the 12 tasks in our pilot suite to satisfy a few key properties:
Discussion. 4.3 Abilities and limitations of agents The agents demonstrated the ability to use bash commands, write code tailored to the task, navigate web pagesto find information, and recover from some mistakes (especially in response to informative error messages).
However, current language model agents also have many limitations, several illustrated by the example run above:
• Repetitive loops: For one of the example agents, more than half of the uncompleted tasks ultimately ended with a repetitive loop in which the agent failed to explore new debugging strategies. These limitations might be sensitive to small changes in sampling temperature, fine-tuning, or scaffolding, and seem unlikely to improve predictably as language models scale. • Hallucinations: The agents frequently fail to complete the tasks by hallucinating results. For example, while researching [company] employees, an agent hallucinates names and email addresses, thus failing the task. • Unrealistic plans: Agents often propose implausible plans and fail to adapt to setbacks. • Poor error diagnosis: Agents frequently misattribute errors, such as incorrectly concluding that its credentials are invalid, when there’s a mistake in the code or a missing dependency. • Poor self-understanding: Our agents also demonstrated a poor understanding of their own situation and weak theory of mind when dealing with other subagents. Communication between agents frequently leaves out crucial information such as account credentials, apparently not realizing it won’t be available to other agents. Problems with self-understanding are even more extreme when agents interact with their own implementation; for example agents sometimes fail to complete the tasks by killing their own process, or by outputting their own stop token (used by the scaffolding to terminate a command) in the middle of a sentence.
Conclusion. In this report, we piloted a methodology for evaluating the ability of language model agents to achieve open-ended real-world goals. We created four simple agents by combining GPT-4 and Claude with scaffolding programs, and evaluated these agents on 12 tasks relevant to autonomous replication and adaptation (ARA).
We believe that systems capable of ARA could have wide-reaching and hard-to-anticipate consequences, and that measuring and forecasting ARA may be useful for informing measures around security, monitoring, and alignment. Additionally, once a system is capable of ARA, placing bounds on a system’s capabilities may become significantly more difficult.
We found that the four agents we evaluated were far from capable of ARA. We believe our agents are representative of the kind of capabilities achievable with some moderate effort, using publicly available techniques and without fine-tuning. As a result, we think that in the absence of access to fine-tuning, it is highly unlikely that casual users of these versions of GPT-4 or Claude could come close to the ARA threshold.
Limitations. Unfortunately, these evaluations are not adequate to conclude that near-future agents will continue to be far from ARA capabilities:
• Future agents could have better scaffolding: We built simple language model agents using existing publicly-known techniques. Because these techniques have not yet been the subject of significant research effort, it seems plausible that they will improve rapidly. This is particularly plausible because agent limitations are often related to behaviors like repetition or hallucination that can be sensitive to the way that questions are presented to models.
• Future agents could use fine-tuned models: Our results with these agents do not represent or bound the ARA capabilities of agents using models with additional fine-tuning.
• Future agents could be built on larger models: We evaluated agents built using current language models, but make no effort to forecast progress for larger models. Task performance can improve continuously or abruptly depending on how it is measured [Sri+23; SMK23] and we are not aware of any evidence that the kind of behavioral evaluation performed in this work improves continuously with scale.
Lines of inquiry this paper opens 24
Research framings built by reading the notes related to this paper — the questions it feeds into.
Why do autonomous agents fail and how well can they detect failures?- What specific task environments cause AI agents to fail most often?
- How do agentic systems recover when specialized models operate outside their scope?
- Why do language models fail at planning despite understanding strategies?
- Why do language models plateau at constraint satisfaction regardless of scale?
- Which agent architectures consistently outperform base models on hard prediction questions?
- How does user overreliance on model confidence differ between chat and deployed agents?
- Why do planning and grounding have opposing optimization requirements in agents?
- Does the planning-grounding factoring principle apply to other agent tasks?
- How do larger models maintain more parallel tasks than smaller models?
- What architectural variables make entropy-based patching work at 8B scale?
- What constraints force mobile deployments to operate in the sub-billion parameter regime?
- Does the optimal model size depend on what capabilities you actually need?
- Can smaller models actually perform well on specific downstream tasks?