There was an issue in how we treated beliefs, specifically with multiple beliefs of the same name but different arguments. This is fixed with this commit.
Also implemented correct updating of the "responded" belief, when the user_said belief is updated (when we get a new user message, we state that we have not yet responded to that message)
ref: N25B-197
[
Before it was a list of a dict of lists of lists of strings
now it is a dict of lists of lists of strings as prescribed by architecture (knowledge base)
*also added some tests, but will have to add some more
]
[ref]: N25B-206
Used to be every `timeout` time that we'd get the message that no audio data is received. Now only the first time since no data is received.
ref: N25B-213
[
- Currently implements belief collection from text-based mock agent.
- The beliefs communicated by this agent look like this:
{
"type": "belief_extraction_text",
"beliefs": [
{"user_said": [["hello"],["Can you help me?"],["stop talking to me"],["No"],["Pepper do a dance"]]}
]
}
* have yet to add tests (but we want to merge into Dev. asap)
]
[ref]: N25B-206
body: added the llmAgent class and made it run at the start.
modified the bdi_core to send a test message and recieve an awnser from LLM agent
Added a connection to a local llm via lmstudio.
Tests are Tba.
ref: N25B-207
The communication with other agents has been tested with mock data as the other agents (transcriber and belief collector) are not yet implemented.
ref: N25B-208
Main BDI brain structure implemented. Still some TODOs left, and very
basic implementation (only one belief "user_said(Message)" and every
message is sent straight to a function which is responsible for getting
an LLM response.
ref: N25B-197
Inside the `/message` enpoint we put a message onto the internal event
queue, which gets read by TestAgent. This agent, in turn, logs the
message (temporary behaviour until we implement RI integration).
The name TestAgent is of course temporary, this is just for exploratory
purposes.
ref: N25B-165