Page cover image

About Oracle Mode

What is Oracle?

Oracle is a cutting-edge intelligent agent system developed by the flowith team, designed with the goal of achieving pre-AGI (pre-Artificial General Intelligence). It is specifically engineered to handle multi-step, complex tasks that require the use of multiple tools.

Key features of Oracle include:

  • Autonomous task planning

  • Task decomposition

  • Unlimited tool utilization

  • Self-optimization

Oracle's external capabilities are continuously updated and upgraded, allowing it to become increasingly powerful over time.

Oracle Recipe and Nodes

In other words, Oracle is a data-level (operating at the data layer, without physical medium or real-world interaction) generalized (capable of performing general tasks, not limited to pre-trained or pre-defined functions) Agent (beyond just an LLM, able to utilize tools, manage memory, and collaborate with multiple LLMs) that can complete complex tasks (beyond simple queries or commands) and adapt to new situations (capable of self-learning and processing in novel environments or tasks).

Core Concepts

Recipe Workflow

The term "recipe" originally refers to a set of instructions for preparing a dish. In the context of Oracle, a Recipe represents a systematic workflow that AI executes to complete user tasks. When a user inputs a requirement or instruction, Oracle breaks down the overall directive into smaller subtasks based on its capabilities and available tools. These subtasks are then passed to a task allocator for step-by-step execution.

After designing a complete Recipe, Oracle always confirms it with the user before beginning execution. During this confirmation process, users can directly modify specific steps within the Recipe, including:

  • Adjusting the order of steps

  • Deleting steps

  • Modifying text

  • Adding new steps

A Recipe Generated by Oracle

Dispatcher

The Dispatcher, also known as a Task Allocator, is a crucial component in the execution of subtasks generated by the Oracle. For each Oracle-generated subtask, a dedicated Agent within the Dispatcher is responsible for allocation and implementation. This Agent identifies the most suitable tool from the Oracle's supported toolset and then executes and completes the subtask.

For example, when the subtask is "search for user reviews of flowith on social media", the task allocator will invoke the "Twitter Search Tool", "Reddit Search Tool", and "Google Search Tool" to conduct searches for Flowith user reviews.

You can view the currently supported tools for Oracle on the Oracle conversation initiation page. This list is updated in real-time, and we continuously add the most useful tools to Oracle's supported toolkit.

Current Capabilities Supported by Oracle

Tools supported by Oracle

Memory and Context Management

Oracle is designed for complex tasks, which often generate extensive context due to their multi-step nature. If we were to provide all previous context to the LLM (Large Language Model), it could potentially impact its performance.

To address this, Oracle employs intelligent context management during task allocation and execution. For example, when Oracle reaches step 10 of a process, its memory manager evaluates which information from previous steps is essential and incorporates only the necessary context into the current step. This approach eliminates concerns about excessively long context.

Self-Iteration and Update Recipe

After completing each step, Oracle automatically updates the entire Recipe based on the execution results of each step. For instance, if it fails to find the required information, it will incorporate additional search steps into the subsequent stages to ensure successful task completion.

When Oracle inquires about user satisfaction with the results, and the user expresses dissatisfaction, it will generate additional steps in an attempt to provide the desired outcome.

Last updated