Updated working principles
This commit is contained in:
44
old_architecture.md
Normal file
44
old_architecture.md
Normal file
@@ -0,0 +1,44 @@
|
||||
## Architecture
|
||||
|
||||
An overview of the key components and their interactions.
|
||||
|
||||

|
||||
|
||||
### Core Actions
|
||||
|
||||
Core actions are implemented each in a separate class.
|
||||
Each action in the context is an instance of the corresponding class.
|
||||
The `delete` and `stop` actions are exceptions to this.
|
||||
They are implemented as functions in the `AgentCore`.
|
||||
|
||||
Actions have a `template(id)` method that returns an XML Element.
|
||||
If they require updating in each iteration, they do so at the start of the `template` method.
|
||||
|
||||
### Agent Core
|
||||
|
||||
The `AgentCore` manages the state of the agent.
|
||||
|
||||
It can also run a basic main loop consisting of:
|
||||
- Running template on all actions
|
||||
- Collecting system information
|
||||
- Building the context
|
||||
- Running the LLM
|
||||
- Splitting the LLM output in reasoning and actions
|
||||
- Instantiating the new actions and listing id's to delete
|
||||
- Deleting the old actions
|
||||
|
||||
### Web System
|
||||
|
||||
The `WebSystem` uses an `AgentCore` but doesn't run the main loop.
|
||||
It runs a modified main loop and interacts with the WebSystem.
|
||||
It also instantiates alternative actions for stdio to interact with the WebSystem.
|
||||
|
||||
### LLM Engine
|
||||
|
||||
The `LLMEngine` does the LLM inference.
|
||||
It takes a context as string and returns an iterator of tokens.
|
||||
|
||||
### Inference Result
|
||||
|
||||
An `InferenceResult` object contains the resoning and parsed actions.
|
||||
Parsing is part of the Inference Result constructor.
|
||||
Reference in New Issue
Block a user