Modulare KI-Chatbots bauen

Ist es möglich, mehrere KI-Chatbots mit einem modularen Design zu erstellen, bei denen ein Hauptbot mit den Benutzern interagiert und der Hauptbot festlegt, welche spezialisierten Bots in das Gespräch einbezogen werden sollen?

Ich habe die gesamte Dokumentation zu KI-Plugins eingehaust und bin mir nicht sicher, wie ich das umsetzen könnte.

Vielen Dank für ein so leistungsfähiges, anpassbares Tool.

2 „Gefällt mir“

Ich glaube, dass dies jetzt technisch über unser Tool-Scripting möglich ist. Habe ich mich hier geirrt, @sam?

1 „Gefällt mir“

Wenn wir 3 spezialisierte Bots haben, die jeweils ihre eigenen Dokumente besitzen, sind ihre Einbettungen isoliert? Oder denken Sie, dass ich mit den Einbettungen/Docs etwas Besonderes machen muss, um sicherzustellen, dass sie leicht isoliert werden können?

Die in eine Persona hochgeladenen Dokumente sind von dieser Persona isoliert.

1 „Gefällt mir“

Können Sie Ihr Beispiel konkretisieren?

Tools haben jetzt direkten Zugriff auf Personas, sodass Sie eine Persona definieren können, die Anfragen an ein Tool weiterleitet, das dann die beste Persona für die jeweilige Aufgabe auswählt. Wenn wir jedoch den vollständigen Ablauf, den Sie im Sinn haben, verstehen, können wir Ihnen hierbei besser beraten.

2 „Gefällt mir“

Es gibt eine große Menge an Risiko- und Nutzeninformationen in der medizinischen Literatur zu Impfungen. Wenn eine Persona (sagen wir, VaccineBot) all diese Informationen kennt, bedeutet das, dass Hunderte von Dokumenten hochgeladen werden müssten und es viel Potenzial für Verwirrung gibt. Ich habe mit diesem Ansatz experimentiert, und die Antworten sind nicht großartig.

Stattdessen dachte ich, wir könnten spezialisierte Personas verwenden:

  • DTaP-Bot
  • HepB-Bot
  • MMR-Bot
  • Rotavirus-Bot
  • Polio-Bot
  • usw. usf.

Das sieht aus Perspektive eines modularen Designs und der Informationsfokussierung wirklich gut aus. Aber es bringt auch eine große Belastung für die Community-Mitglieder mit sich, mehr zu wissen, als die meisten über Impfpläne wissen. Daher sollte VaccineBot idealerweise die Frage des Nutzers aufnehmen, herausfinden, welche spezialisierten Bots beteiligt werden müssen, und in der Lage sein, die Unterhaltung zu orchestrieren.

Beispielsweise gibt es Kombinationsimpfstoffe (6 Impfungen in einer Spritze). Wenn ein Elternteil eine Frage dazu hat, müsste er mehrere Bots einbeziehen. Oder wenn es um den 2-Monats-Kontrolltermin geht, bei dem ein Säugling bis zu 8 Impfungen gleichzeitig erhalten kann, müsste VaccineBot alle diese spezialisierten Bots einschließen und irgendwie eine Zusammenfassung von jedem darüber erhalten, was deren Zweck und Fokus ist, zusammen mit häufigen Reaktionen usw.

Dieses Domain-Bereich wird ziemlich schnell komplex:

DTaP = 3 Impfstoffe, 1 Spritze, nicht zerlegbar
HepB = 1 Impfstoff, 1 Spritze
MMR = 3 Impfstoffe, 1 Spritze, nicht zerlegbar

Pädiater verabreichen oft Kombinationsimpfstoffe wie Vaxelis, eine 6-in-1-Spritze:
DTaP + HepB + Polio + Hib

Ein Kontrolltermin nach 2 Monaten könnte Vaxelis + PCV + Rotavirus umfassen.

Wenn ein Nutzer nach einem bevorstehenden 2-Monats-Termin fragt, müsste der Orchestrator-Bot (VaccineBot) mit 6 verschiedenen Personas (Bots) zusammenarbeiten oder sie zumindest in die Unterhaltung einbeziehen.

Bedeutet das Sinn für dich?

Ich werde weiter experimentieren und mich dazu wieder melden.

{“type”:“object”,“properties”:{“translation”:“Bitte erstelle eine ähnliche Eingabeaufforderung für VaccineBot: Analysiere die gestellte Frage und rufe den am besten geeigneten Benutzer anhand der folgenden Themen auf, unter Verwendung dieses Formats: @Benutzername\n\n@DTaP-Bot: Deckt drei Impfstoffe ab, die in einer einzigen Injektion verabreicht werden, unteilbar.\n\n@HepB-Bot: Betrifft einen einzelnen Impfstoff, der in einer einzigen Injektion verabreicht wird.\n\n@MMR-Bot: Umfasst drei Impfstoffe, die in einer einzigen Injektion gegeben werden, unteilbar.\n\n@Rotavirus-Bot: …\n\n@Polio-Bot: …\n\nStelle sicher, dass die Einstellungen der Bot, die du erstellst, die Option “andere dürfen erwähnen” enthalten, damit nach der ersten Antwort des Bots der entsprechende Bot hinzugefügt werden kann, um eine umfassende Antwort auf die Anfrage zu bieten.\n\nIch habe eine Beispielaufforderung bereitgestellt; du kannst ChatGPT um Hilfe bitten, um eine verfeinertere und maßgeschneiderte Eingabeaufforderung zu erstellen, die perfekt auf deine Vorlieben abgestimmt ist.”}}

1 „Gefällt mir“

Hmm… Ich denke, wir können das heute mit einem benutzerdefinierten Tool lösen!

  1. Laden Sie alle Dokumente in das benutzerdefinierte Tool hoch
  2. Geben Sie dem benutzerdefinierten Tool die Parameter „semantic_query“ und „vaccine_name“ (Aufzählung)
  3. Führen Sie dann im benutzerdefinierten JS die Suche nach dem hochgeladenen „vaccine_name“ durch und fügen Sie diesen speziellen Teil in den Kontext ein

Dadurch wird sichergestellt, dass Sie nur Kontext für die spezifische Teilmenge erhalten.

3 „Gefällt mir“

Vielen Dank an @kuaza und @sam für die hervorragende Anleitung, wie ich dies angehen soll. Ich werde bald berichten.

–Chris

2 „Gefällt mir“

@sam - der Tool-Ansatz hat wunderbar funktioniert. Nochmals vielen Dank.

–Chris

1 „Gefällt mir“

Ich würde es sehr begrüßen, wenn du hier einige technische Details zur aktuellen Lösung mit einigen Beispielen teilen könntest. Ich bin mir sicher, Mitglieder bei Meta würden gerne mehr darüber erfahren.