Explanation & Example, Bugfix in Extract

This commit is contained in:
2025-06-09 15:28:03 +02:00
parent a469746af1
commit b1db9e695c
4 changed files with 59 additions and 7 deletions

View File

@ -1,8 +1,63 @@
# Calculator-Example
This is a simple example of an calculator agent system using the [Agents Platform](https://git.chai.uni-hamburg.de/UMS-Agenten/Agenten-Plattform) and based on [Agent Template](https://git.chai.uni-hamburg.de/UMS-Agenten/Agent-Template).
This is a simple example of an calculator "agent system" using the [Agents Platform](https://git.chai.uni-hamburg.de/UMS-Agenten/Agenten-Plattform) and based on [Agent Template](https://git.chai.uni-hamburg.de/UMS-Agenten/Agent-Template).
Start by `docker compose up` and open web interface of management at <http://localhost:8080/>.
## Riddle Example
## Calculator
A riddle is a math expression, e.g., `x * y =` and the values of the variables `x` and `y` are defined via text files.
For example a line `x = 12` in text file assigns the value to `12` to the variable `x`.
For example, the result of a riddle `x * x =` would be `144` with the explanation `12 * 12 = 144`.
## Riddle Example
In this example the values of the variables are [`x = 10`](./data/share/example/x.txt), [`y = 15`](./data/share/example/y.txt), [`z = 20`](./data/share/example/z.txt), see the files in [`./data/share/example/`](./data/share/example/).
1. You may send a riddle to the management using the web interface (<http://localhost:8080/app/new>) and press "Send Message"
![](./webinterface_new_riddle.png)
2. The message to the management will look like:
```json
{
"id": "test1",
"sub_ids": [],
"riddle": {
"context": "",
"question": "y + x =",
"solutions_before": []
},
"solution": [],
"data": [
{
"type": "text",
"file_plain": "example/z.txt",
"file_extracted": null
},
{
"type": "text",
"file_plain": "example/y.txt",
"file_extracted": null
}
],
"status": {
"extract": {
"required": true,
"finished": false
},
"solve": {
"required": true,
"finished": false
},
"validate": {
"required": true,
"finished": false
},
"trial": 0,
"solved": false
},
"contacts": 0
}
```
3. Message will be send between agents for solving the riddle.
4. Result can be found in web interface (<http://localhost:8080/app/table>)
![](./webinterface_result.png)

View File

@ -21,11 +21,8 @@ class CalculatorExtractVariables(ExtractTextAgent):
variable, value = match.group(1), int(match.group(2))
data.file_extracted = self.store_extracted(data, ExtractedData(
contents=[
ExtractedContent(type="variable", content=variable),
ExtractedContent(type="value", content=value)
]
))
other={"variable" : variable, "value" : value}
))
return data

BIN
webinterface_new_riddle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

BIN
webinterface_result.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB