Conversational Assistant, Virtual Agent / CAVA
CAVA is an architectural model expanding on the craze of conversational assistants today. There are two main components:
- a conversational assistant that runs locally,
- a virtual agent that runs constantly and remotely.
The assistant’s job is to take care of your immediate needs. The agent is always running, always working, always searching depending on what your assistant asks it to do.
The model is inspired somewhat from how Hollywood works. This relationship between the actor, assistant, and agent is core to CAVA. The assistant frequently gives the agent a task on behalf of the actor and checks in to get status. The agent also gives the actor tasks via the assistant.
Actors have personal assistants who do everything from getting them their coats and making appointments to driving them around and giving them directions. They cannot be given really long tasks because they need to be available for other tasks with immediate urgency.
In some ways the assistant is like C3P0.
Actors also have agents who are always working for the actor — and for others — who is frequently in contact with the actor’s assistant rather than the actor, but can be when needed. The agent’s job is to do long-running tasks like searching for new gigs, coordinating PR, and negotiating contracts. The agent is free to schedule time as needed so long as stuff gets done in a reasonable time frame.
The agent is implemented in the most robust, concurrent, enterprise-level language possible because maximum concurrent tasks are paramount. Usually this will mean Go do to the number of libraries supported and rich, concurrent, Internet-enabled standard libraries. The agent speaks nothing but JSON.
In some ways the agent is like R2D2.