Skip to content

NachoBrito/amica

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A.M.I.C.A.

A.M.I.C.A. stands for "Autonomous Multi-agent Intelligent Companion Assistant", and "amica" is the latin word for friend.

This project is a proof of concept for a system in which several agents cooperate asynchronously to perform different tasks. This is the companion code for the article "A.M.I.C.A." where you can find all the details about this project.

How to run this project

1. Start the services:

docker compose up -d

This will start two containers:

  • A mosquitto MQTT message broker that will be used as Message Bus.
  • A Valkey cache that will be used as a shared memory.

2. Compile the Java SDK project:

cd amika-sdk-java
mvn clean install

3. Start the services (each one in a different terminal):

cd agents/local-system-agent
mvn mn:run
cd agents/minute-taker-agent
mvn mn:run

4. Start the CLI (in a new terminal)

cd amica-cli
mvn mn:run

Once in the CLI application, you can send queries, like for example:

> How many users are currently logged into this system?

The local-system-agent will use the UserCount tool to get the number of users currently logged, and will respond with something like this:

There are currently 2 users logged into this system.

You will also see how the minute-taker-agent will detect there was a new conversation between the user and the agent, and will generate the minute:

10:13:55.198 [RxComputationThreadPool-1] INFO  e.n.a.a.m.i.l.agent.MinuteTakerAgent - Saving minute for conversation ebc5d308-8fba-4a61-af09-913dd0766eb8 to ...
10:13:55.198 [RxComputationThreadPool-1] INFO  e.n.a.a.m.i.l.agent.MinuteTakerAgent - 
{
  "actors": ["nacho", "local-system-agent"],
  "summary": "The user asked how many users are currently logged into this system.",
  "messages": [
    "The user asked How many users are currently logged into this system",
    "The agent response was There are currently 2 users logged into this system."
  ]
}

References

About

A.M.I.C.A. - Autonomous Multi-agent Intelligent Companion Assistant

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published