Eine Einstellung, um persistent JSON-Daten in Artefakten zu speichern

Ich schlage demütig die Implementierung einer rails console-Einstellung vor, die es Administratoren ermöglichen würde, die Fähigkeit von KI-Artefakten zu aktivieren, persistente Daten in einer einzigen JSON-Datei zu speichern. Dies könnte natürlich unbeabsichtigt einige Probleme/Risiken mit sich bringen, ähnlich wie die Einstellung zum dauerhaften Löschen von Themen – :warning: daher die Aktivierung über die rails console.

KI-Artefakte sind sehr nützlich und tragen erheblich zur Qualität von Diskussionen bei. Ihre Nützlichkeit kann sich jedoch verdreifachen, wenn sie einfache Daten dauerhaft speichern und diese Daten auf einfache Weise manipulieren könnten :eyes:.

Mein persönlicher Anwendungsfall

Meine Discourse-Instanz wird als LMS (für den Englischunterricht) und als virtuelles Labor für Experimente für meine wissenschaftliche Forschung im Bereich KI genutzt. Jeder meiner Kunden/Studenten hat seine eigene private Kategorie (der Zugriff wird über seine private Gruppe gewährt), in der alles gespeichert und verfolgt wird (Lernmaterialien usw.). Ein kleiner Teil meiner Forschung beschäftigt sich damit, wie ein System entworfen werden kann, das erfolgreich und autonom Bildungsinhalte für einen Lernenden erstellt, gegeben seine „Lernerbiografie“ (wie in den nachstehenden Screenshots gezeigt) und eine Art Wissensgraph (den Rest werde ich vorerst vertraulich behandeln).

Ich beabsichtige, die Discourse-API zu verwenden, um diese JSON-Daten (die Lernerbiografie aus dem Artefakt) aus dem Themainhalt abzurufen (hierfür sind wahrscheinlich einige starke reguläre Ausdrücke erforderlich) und sie dann meiner kognitiven Architektur zuzuführen, die mit FastAPI erstellt wurde und auf demselben Server mit einem Reverse-Proxy läuft. Die kognitive Architektur erledigt ihre Magie, erstellt dann neue Inhalte für diesen Lernenden und erstellt dann ein neues Thema mit diesen Inhalten in der privaten Kategorie dieses Lernenden.

Hier ist eine schnelle und grobe Visualisierung dessen, was ich meine:

    flowchart TD
    A[Discourse Instanz<br/>LMS + KI-Forschungslabor] --&gt; B[Private Kategorien für Studenten<br/>mit Gruppenzugriffskontrolle]
    
    B --&gt; C[Lernerbiografie<br/>gespeichert im Themainhalt<br/>im JSON-Format]
    
    C --&gt; D[Discourse API<br/>Themainhalt abrufen]
    
    D --&gt; E[Regulärer Ausdruck<br/>JSON-Daten extrahieren]
    
    E --&gt; F[Lernerbiografie<br/>Extrahierte Daten]
    
    F --&gt; G[FastAPI Kognitive Architektur<br/>Gleicher Server + Reverse Proxy]
    
    H[Wissensgraph<br/>Vertrauliche Forschungsdaten] --&gt; G
    
    G --&gt; I[KI-Inhaltsgenerierung<br/>Hier passiert Magie ✨]
    
    I --&gt; J[Neue Bildungsinhalte<br/>Personalisiert für den Lernenden]
    
    J --&gt; K[Neues Thema erstellen<br/>über Discourse API]
    
    K --&gt; L[Inhalt gepostet in<br/>private Kategorie des Studenten]
    
    L --&gt; M[Lernmaterialien<br/>Verfolgt & gespeichert]
    
    M --&gt; N[Kontinuierliche Lern-<br/>& Forschungs-Schleife]
    
    N -.-> C
    
    style A fill:#e1f5fe
    style G fill:#f3e5f5
    style I fill:#fff3e0
    style L fill:#e8f5e8


Technisch gesehen kann all dies erreicht werden (und eleganter), indem HTTP in Artefakten zugelassen wird, aber ich vermute, dass dies noch riskanter ist als das Speichern von Daten.

:heart: Ich beabsichtige voll und ganz, diese Technologie Open Source zu machen, sobald ich alles zum Laufen gebracht und gründlich getestet habe.


Dieses Lernerbiografie-Artefakt funktioniert einwandfrei, mit der Ausnahme, dass die eingegebenen Daten nach dem Aktualisieren der Seite verschwinden :see_no_evil_monkey:

So sehen die Datenfelder im Artefakt aus

3 „Gefällt mir“

Ich habe bereits über dieses superpowerful Feature nachgedacht, das hinter einer Seiteneinstellung liegt. Ich möchte die Speicherung von Artefakten aus Schlüssel-Wert-Paaren erlauben, die an den aktuellen Benutzer gebunden sind.

Dies eröffnet eine enorme Anzahl von Anwendungsfällen, einschließlich dieses.

5 „Gefällt mir“

Ohhh lieber Herr Sam, das wäre ein Segen!

Bezüglich Ihrer Implementierung: Bedeutet “bound to current” Benutzer, dass nur ein Benutzer die gespeicherten Daten bearbeiten/sehen kann? Ich frage, weil ich je nach Ihrer Vorgehensweise möglicherweise meine Herangehensweise ändern muss. In meinem Anwendungsfall möchte ich, dass die Daten von sowohl mir als auch dem Schüler bearbeitet werden können. Keine anderen Benutzer sollten sie bearbeiten oder sogar sehen können, da das Artefakt in der privaten Kategorie dieses Schülers wäre.

1 „Gefällt mir“

Ich denke gerade über die JS-API nach, aber unabhängig davon werden Sie immer auf Daten im Daten-Explorer zugreifen können, da diese in einer Tabelle vorliegen. (Benutzer-ID, Artefakt-ID, Artefaktversion, Schlüssel, Wert, öffentlich (bool))

Lassen Sie mich darüber nachdenken, da ich gerade viele Fragen im Kopf beantworte.

  • Öffentlicher Bereich für Anonyme? Ja oder Nein? Was sind die Grenzen?
  • Administratorzugriff auf alles über das Artefakt?
  • Öffentliche vs. private Informationen (z. B. Umfragen)

Ich werde hier erweitern, sobald die Antworten feststehen.

3 „Gefällt mir“

Kind von Ausweitung dieser Vorstellung von persistenten Daten in Artefakten… es wäre toll, wenn wir Artefakte irgendwie “wiederverwenden” (oder neue manuell registrieren) könnten, indem wir nur geringfügige JSON-Datenänderungen in jedem vornehmen. Zum Beispiel:

Wie bereits erwähnt, hat jeder meiner Schüler seine eigene private Kategorie, was bedeutet, dass sie ihre eigenen Materialien und Quizze haben. Heute habe ich das Erstellen eines Quiz-Artefakts getestet.

Aktueller Ansatz zum Erstellen von Quizzen

(Das Thema wird als Wiki-Thema erstellt, damit der Schüler tatsächlich seine Antwort-Checkbox auswählen kann.)

Artefakt-Version

Der Grund, warum es nützlich wäre, ist, dass wir dann eine “Quiz-Engine” hätten, die gut funktioniert (das eigentliche Miniprogramm), und dann nur die Phrasalverben (oder beliebige andere Daten) durch ein anderes JSON-Objekt ersetzen könnten. Die Daten ändern sich also, aber der Code nicht, wenn das Sinn ergibt.

1 „Gefällt mir“