Operation Management

Environment

Under the HelperAI Project, tenants can create one or multiple environments based on their development needs.

An environment defines a set of shared configurations, which include both required configurations built into HelperAI (e.g., which set of OpenAI API keys to use) and user-defined environment variables. These user-defined environment variables can be used as configuration values for an Agent, allowing the Agent to operate with different configurations in different environments.

For example, if a Skill of an Agent requires a specific Tool API key, but the API key may vary in different environments, tenants can set an environment variable instead of directly inputting the actual API key when configuring the API key. When the Agent is running, HelperAI automatically replaces the value of the environment variable with the actual value in that specific environment, enabling the Agent to correctly use the API key.

Deployment

Under the HelperAI project, tenants can create one or multiple deployments for their agents. Each deployment specifies which static release version of the agent instance should be deployed to a particular environment under the same project as the agent. During the actual execution of the agent, the configuration values from that specific environment will be used.

Runtime

Once the deployment is defined by the tenant, the built-in Orchestrator of HelperAI will generate the actual running instance of the agent based on the content of that deployment. This running instance is called the Runtime, which represents the tenant's AI agent application.

HelperAI's Orchestrator automatically manages the lifecycle of the Runtime. When a tenant wants to stop a specific agent, they just need to delete or disable the deployment of that agent. HelperAI's Orchestrator will automatically stop the Runtime of that agent. Similarly, when a tenant tries to change the version of the agent in the deployment, HelperAI's Orchestrator will automatically detect this change and will deactivate the old Runtime while starting a new Runtime running the updated version.

If you are familiar with Kubernetes and container management, you will find that HelperAI's Runtime management mechanism is very similar. We can use Kubernetes concepts as an analogy to better understand HelperAI's Runtime Orchestration mechanism:

HelperAI ResourceEquivalent Kubernetes Resource or Container Concept
Agent Instance (Release Version)Image
EnvironmentConfigMap/Secret
DeploymentDeployment
RuntimePod
  1. Each agent release version, like a packaged static image, is created and not further modified.
  2. The environment is similar to a ConfigMap/Secret and can be used to define a set of environment variables.
  3. The deployment is like a Deployment object which defines the mapping between the agent's release version and environment variables.
  4. Finally, the Runtime is like a Pod, representing the actual running instance of an agent. It is generated based on the content of the deployment and is automatically managed by the Orchestrator.