Tool/Agent Registry

Summary: The tool/agent registry maintains a unified and convenient source to select diverse agents and tools.

Context: Within an agent, the task executor may cooperate with other agents or leverage external tools for expanded capabilities.

Problem: There are diverse agents and tools, how can the agent efficiently select the appropriate external agents and tools?

Forces:

  • Discoverability. It may be difficult for users and agents to discover the available agents and tools considering the diversity.
  • Efficiency. Users/agents need to finalise agent and tool selection within a certain time period.
  • Tool appropriateness. Particular tasks may have specific requirements of agents/tools (e.g. certain capabilities).

Solution: Fig. 1 depicts how can an agent search external agents and tools via a tool/agent registry. A user prompts goals to an agent, which then decomposes the goals into fine-grained tasks. The agent can query the tool/agent registry, which is the main entry point for collecting and categorising various tools and agents regarding a series of metrics (e.g., capability, price, context window). Based on the returned information, the agent can employ and assign the tasks to respective tools and agents. Please note that a registry can be implemented in different manners, for instance, a coordinator agent with specific knowledge base, blockchain-based smart contract, etc., and a registry can be extended into a marketplace for tool/agent service trading.

Figure 1. Tool/agent registry.

Benefits:

  • Discoverability. The registry provides a catalogue for users and agents to discover tools and agents with different capabilities.
  • Efficiency. The registry offers an intuitive inventory listing the attributes (e.g., performance, price) of tools and agents, which saves time for comparison.
  • Tool appropriateness. Given the task requirements and conditions, users and agents can select the most appropriate tools/agents according to the provided attributes.
  • Scalability. The registry only stores certain metadata about tools and agents, hence the data structure is simple and lightweight, which ensures the scalability of the registry.

Drawbacks:

  • Centralisation. The registry may become a vendor lock-in solution and cause single point of failure. It may be manipulated and compromised if it is maintained by external entities.
  • Overhead. Implementing and maintaining a tool/agent registry can introduce additional complexity and overhead.

Known uses:

  • GPTStore. GPTStore provides a catalogue for searching ChatGPT-based agents.
  • TPTU [1]. TPTU incorporates a toolset to broaden the capabilities of AI Agents.
  • VOYAGER [2]. VOYAGER can store action programs and hence incrementally establish a skill library for reusability.
  • OpenAgents [3]. An agent is specifically developed to manage the API invocation of plugins.

Related patterns:

  • Cross-reflection. The agent can search reflective agents for cross-reflection via tool/agent registry.
  • Voting-based, role-based and debate-based cooperation. Tool/agent registry can provide a source of agents for the cooperation patterns.
  • Agent adapter. Tool/agent registry records the available external tools, while agent adapter can convert the interface of selected tools into agent-friendly format.

References:

[1] J. Ruan, Y. Chen, B. Zhang, Z. Xu, T. Bao, du qing, shi shiwei, H. Mao, X. Zeng, and R. Zhao, “TPTU: Task planning and tool usage of large language model-based AI agents,” in NeurIPS 2023 Foundation Models for Decision Making Workshop, 2023. [Online]. Available: https://openreview.net/forum?id=GrkgKtOjaH

[2] G. Wang, Y. Xie, Y. Jiang, A. Mandlekar, C. Xiao, Y. Zhu, L. Fan, and A. Anandkumar, “Voyager: An open-ended embodied agent with large language models,” in Intrinsically-Motivated and Open-Ended Learning Workshop @NeurIPS2023, 2023. [Online]. Available: https://openreview.net/forum?id=nfx5IutEed

[3] T. Xie, F. Zhou, Z. Cheng, P. Shi, L. Weng, Y. Liu, T. J. Hua, J. Zhao, Q. Liu, C. Liu et al., “Openagents: An open platform for language agents in the wild,” arXiv preprint arXiv:2310.10634, 2023.