feat(rnd): Add IPC support on autogpt_server (#7212)

### Background

This PR adds support on IPC on autogpt_server.
To make this happen, there are a couple of refactoring efforts being made (will be described in the `Changes` section).
Currently, there are three independent processes:

```
AgentServer ----> ExecutionManager
    | 
     --> ExecutionScheduler
```


### Changes 🏗️

* Added Pyro5 for IPC support.
* Introduced `AppService`: a class to construct an independent process that can expose a method to other running processes (this is analogous to a microservice).
* Introduced `AppProcess`: used by `AppService` a class for creating a child process that can be executed in the background.
* Adapting existing codebase to user `AppService`.
This commit is contained in:
Zamil Majdy
2024-06-19 19:49:47 +04:00
committed by GitHub
parent c19ab2b24f
commit 210d7738b9
20 changed files with 944 additions and 475 deletions

View File

@@ -29,11 +29,14 @@ setup(
icon=icon,
),
Executable(
"autogpt_server/cli.py", target_name="agpt_server_cli", base="console", icon=icon
"autogpt_server/cli.py",
target_name="agpt_server_cli",
base="console",
icon=icon,
),
],
options={
# Options for building all the executables
# Options for building all the executables
"build_exe": {
"packages": packages,
"includes": [