Agenten-Plattform/Requests.md
2024-09-18 16:32:01 +02:00

3.6 KiB

Ablauf

  1. Daten und Rästel eingeben
    • an Management von Benutzer (oder als Subrätsel)
    {
        "id" : "xyz",
        "riddle" : {
            "context" : "The values of the variables of the following math problem are given in the text document as written numbers.",
            "question" : "What is x+y?",
            "solution_before" : "", # if trial > 0
            "review_before": "" # if trial > 0
        },
        "trial" : 0, # did we try this before
        "steps" : {
            "extract" : true,
            "solve" : true,
            "validate": true,
        },
        "data" : [
            {
                "type" : "text",
                "file" : "./my-test.txt"
            },
            ...
        ]
    }
    
  2. Daten verteilen (if "extract" : true)
    • an alle "🤖 Daten einlesen" vom Management
    {
        "id" : "xyz",
        "data" : [
            {
                "type" : "text",
                "file" : "./my-test.txt"
            },
            ...
        ]    
    }
    
  3. Verarbeitete Daten annehmen (if "extract" : true|false)
    • von allen "🤖 Daten einlesen" an Management
    {
        "id" : "xyz",
        "data" : [
            {
                "type" : "text",
                "file" : "./my-test.txt",
                "extraction" : "./my-test.json" # schema für alle gleich
            },
            ...
        ]    
    }
    
  4. Rätsel lösen (if "solve" : true|false)
    • an (alle) "🤖 Lösung bestimmen" von Management
    {
        "id" : "xyz",
        "riddle" : { ... },
        "data" : [
            {
                "type" : "text",
                "file" : "./my-test.txt",
                "extraction" : "./my-test.json"
            },
            ...
        ]
    }
    
    • Muss ein "Subrätsel" erzeugen (können), wenn weitere Datenanalyse notwenig ist
    • Mit einer Submenge der Daten bzw. konkreten Fragen etc.
  5. Lösung eines Rätsel annehmen (if "solve" : true)
    • von (alle) "🤖 Lösung bestimmen" an Management
    {
       "id" : "xyz",
       "solution" : "26",
       "explanation" : "x = 12, y = 14, ...",
       "sub_riddles" : [    # optional
           "xyz-1",
           "xyz-2"
       ],
       "used_data" : [ # optional
           {
               "type" : "text",
               "file" : "./my-test.txt",
               "extraction" : "./my-test.json"
           },
           ...
       ]
    }
    
  6. Lösung validieren lassen (if "validate": true)
    • an (alle) "🤖 Lösung validieren" durch Management
    {
       "id" : "xyz",
       "riddle" : { ... }
       "solution" : "26",
       "explanation" : "x = 12, y = 14, ...",
       "sub_riddles" : [    # optional
           "xyz-1",
           "xyz-2"
       ],
       "used_data" : [ # optional
           {
               "type" : "text",
               "file" : "./my-test.txt",
               "extraction" : "./my-test.json"
           },
           ...
       ]
    }
    
  7. Validierung annehmen (if "validate": true)
    • von (alle) "🤖 Lösung validieren" an Management
     {
        "id" : "xyz",
        "solution" : "26",
        "explanation" : "x = 12, y = 14, ...",
        "accept" : false # or true
        "review" : "y does not match Y"
     }
    
  8. Ausgabe oder Wiedervorlage
    • von Management an User oder als neues Riddle
    • if "accept" : false: Neues Riddle mit trial+1, solution_before, review_before
    • if "accept" : true: User bekommt solution, explanation, review