Verbesserung der Qualität der Suchfilter in Discourse AI

Zunächst einmal ist das unglaublich – vielen Dank! :heart_eyes:

Ich habe eine Frage zu einer Persona, die ich mit den folgenden aktivierten Befehlen erstellt habe: Suchen, Kategorien, Lesen, Tags.

Ich habe auch eine .txt-Datei hochgeladen. Mein Ziel mit dieser Persona ist es, dass sie immer mein Forum und die Uploads durchsucht und RAG mit beidem durchführt.

Nachdem ich die .txt-Datei hochgeladen hatte, bemerkte ich, dass sie aufhörte, mein Forum zu durchsuchen. Das steht in meiner Basis-Suchanfrage: #docs #faqs #anking-wiki
#docs und #faqs sind Kategorien, während #anking-wiki ein Tag ist.

Fragen:

  • Benötige ich die Befehle für Kategorien und Tags tatsächlich? Ich sehe, dass diese Befehle nur die Tags und Kategorien aus meiner Instanz auflisten. Es scheint, dass der Suchbefehl ausreichen sollte.
  • Ist meine Basis-Suchanfrage in Ordnung?
  • Warum hat der Bot aufgehört, mein Forum zu durchsuchen?
    • Ist die Lösung einfach, meinen Prompt anzupassen, um klarzustellen, dass er immer die Suchfunktion verwenden soll?

Hier ist der Prompt, wie er in den Debugging-Informationen zu sehen ist:

Du bist ein hilfreicher Discourse-Assistent für AnkiHub-Benutzer.
Du verstehst und generierst Discourse Markdown.
Du lebst in einer Discourse Forum-Nachricht.
Du lebst im Forum mit der URL: https://community.ankihub.net
Der Titel deiner Seite: AnkiHub Community
Die Beschreibung lautet: Ein Community-Forum für die AnkiHub- und AnKing-Projekte
Die Teilnehmer dieser Konversation sind: gpt4o_bot, andrew
Die aktuelle Uhrzeit ist: 2024-06-07 23:32:13 UTC, seit deinem Training hat sich viel verändert.
Du wurdest auf alten Daten trainiert, nutze die Suche, um aktuelle Informationen über dieses Forum zu erhalten.
Versuche bei der Suche, Suchbegriffe zu vereinfachen.
Discourse-Suche verbindet alle Begriffe mit UND. Reduziere und vereinfache Begriffe, um mehr Ergebnisse zu finden.

Die folgenden Texte geben dir zusätzliche Anleitungen für deine Antwort.
Wir haben sie aufgenommen, weil wir sie für relevant für dieses Gesprächsthema halten.
Texte:

Ich habe versucht, “Sei sicher, dass du immer die Suchfunktion verwendest” zu meinem Prompt hinzuzufügen. Dies führte dazu, dass die Suchfunktion tatsächlich verwendet wurde, aber mit schlechten Ergebnissen:

Es wurden anscheinend 3 Suchen durchgeführt und dreimal fälschlicherweise “0 Ergebnisse gefunden” gemeldet. Wenn du auf die Links zu den Suchergebnissen klickst, kannst du sehen, dass es tatsächlich Ergebnisse gab. Weiterhin kannst du sehen, dass die Parameter in meiner “Basis-Suchanfrage” nicht verwendet wurden, sodass das gesamte Forum durchsucht wurde und nicht die spezifischen Kategorien.

Ich denke, ein Teil des Problems hier ist, dass unsere Suche etwas verwirrend ist:

https://meta.discourse.org/search?q=%23bug%20%23feature%20test

Sucht nach Bug UND Feature - test

Was Sie hier wollen, ist:

https://meta.discourse.org/search?q=categories%3Abug%2Cfeature%20test

2 „Gefällt mir“

Ich bin verwirrt. Das funktioniert nicht wie erwartet. Ich erwartete, dass die Suche nur Ergebnisse aus den angegebenen Kategorien zurückgibt. Die Suche gibt jedoch Ergebnisse aus jeder Kategorie zurück. Das erste Ergebnis dieser Suche befindet sich in der Kategorie Theme component.

2 „Gefällt mir“

Das stimmt, das sieht fehlerhaft aus, oh nein, ich werde es mir ansehen.

1 „Gefällt mir“

Dies wurde behoben gemäß:

Ich stimme zu, dass es intuitiv ist, #bug #feature etwas zu unterstützen, aber dies wird noch nicht ganz unterstützt und bedarf einer gewissen Diskussion.

categories:bug,feature etwas funktioniert jetzt, und category:bug,feature etwas ebenfalls.

1 „Gefällt mir“

Super! Danke, dass Sie die Korrektur so schnell herausgebracht haben. :bowing_man:

Während die Suche jetzt richtig funktioniert, scheint der Discourse AI Bot immer noch nicht wie erwartet zu funktionieren. Hier sind meine Beobachtungen mit 3.3.0.beta3-dev (a1d881f625):

  • Verwendet die Option base_query nicht
    • es scheint sie komplett zu ignorieren. Ist meine Konfiguration gültig?
    • Soweit ich weiß, gibt es keine Anforderungen für die Werte der Basis-Suchanfrage. Aber egal, was ich dort eingebe, es wird nicht an search_query angehängt.
  • Suchergebnisse werden nicht zum Kontext für RAG hinzugefügt
    • Wenn das Suchwerkzeug aufgerufen wird (wenn auch ohne base_query), scheinen die Ergebnisse nicht im LLM-Aufruf verwendet zu werden.
    • Missverstehe ich, wie dieses Werkzeug funktionieren sollte? Ich erwartete, dass es eine Discourse-Suche durchführt und die Suchergebnisse (d. h. den Inhalt der gefundenen Themen) für RAG verwendet.
      Siehe diese Anfrage als Beispiel:
Request JSON
{"model":"gpt-4","messages":[{"role":"system","content":"You are a friendly and helpful assistant for Anki users specializing in the AnkiHub add-on and web app.\nYou _understand_ and **generate** Discourse Markdown.\nYou live in a Discourse Forum Message.\n\nYou live in the forum with the URL: https://community.ankihub.net\nYou answer questions specifically about using Anki with AnkiHub.\nThe title of your site: AnkiHub Community\nThe description is: A community forum for the AnkiHub and AnKing projects\nThe participants in this conversation are: gpt4_bot, andrew\nThe date now is: 2024-06-13 18:29:19 UTC, much has changed since you were\ntrained.\nYou were trained on OLD data, lean on search to get up to date information about this forum\nWhen searching try to SIMPLIFY search terms\nDiscourse search joins all terms with AND. Reduce and simplify terms to find more results."},{"role":"user","content":"Can I purchase accounts for other users and automatically subscribe them to my private decks?","name":"andrew"},{"role":"assistant","content":null,"tool_calls":[{"type":"function","function":{"arguments":"{\"search_query\":\"purchase accounts for other users subscribe private decks\"}","name":"search"},"id":"call_fmzwIbU4ravFRKWRsOQlqGBq"}]},{"role":"tool","tool_call_id":"call_fmzwIbU4ravFRKWRsOQlqGBq","content":"{\"column_names\":[\"title\",\"url\",\"username\",\"excerpt\",\"created\",\"category\",\"likes\",\"topic_views\",\"topic_likes\",\"topic_replies\",\"tags\"],\"rows\":[[39;\"👪 Organizations\",41;\"/t/organizations/166454/1\",41;\"andrew\",41;\"\\u003ca name=\\\\\\\"what-are-ankihub-organizations-1\\\\\\\" class=\\\\\\\"anchor\\\\\\\" href=\\\\\\\"#what-are-ankihub-organizations-1\\\\\\\"\\\\u003e\\\\u003c/a\\\\u003eWhat are AnkiHub Organizations\\\\nAnkiHub Organizations allow Organization Owners to purchase AnkiHub for other users and invite those users to the Organization. \\\\nAnkiHub organizations work like this and have the following features: \\\\n\\\\u003ca name=\\\\\\\"linked-decks-2\\\\\\\" class=\\\\\\\"anchor\\\\\\\" href=\\\\\\\"#linked-decks-2\\\\\\\"\\\\u003e\\\\u003c/a\\\\u003eLinked Decks\\\\nUsers in your organization can automatically get access \\\\u0026hellip;\",41;\"2024-02-08T17:44:27.842Z\",41;\"🎓 Docs \\\\u003e 🤝 Create \\\\u0026 Collaborate\",41;1,41;166,41;1,41;1],[39;\"How can I get my school to buy AnkiHub for my class?\",41;\"/t/how-can-i-get-my-school-to-buy-ankihub-for-my-class/228569/1\",41;\"andrew\",41;\"Some students have successfully gotten their schools to sponsor AnkiHub memberships for their students. To do so, your school must create an AnkiHub Organization: \\\\n\\\\n\\\\n:bulb: Here are some tips for getting your school to purchase AnkiHub: \\\\n\\\\nConnect with your school’s student government people or med e\\\\u0026hellip;\",41;\"2024-05-23T21:40:37.477Z\",41;\"❓ FAQs\",41;0,41;50,41;0,41;1],[39;\"What happens after my AnkiHub subscription ends?\",41;\"/t/what-happens-after-my-ankihub-subscription-ends/167190/1\",41;\"Ahmed7\",41;\"If your subscription to AnkiHub runs out and you do not wish to renew. \\\\nAll your decks will stay, nothing will be removed. However, you will no longer be able to sync with AnkiHub and receive new changes to your decks, nor will you be able to suggest new changes or notes to any pre-existing decks yo\\\\u0026hellip;\",41;\"2024-02-10T06:14:53.787Z\",41;\"❓ FAQs\",41;0,41;307,41;0,41;1],[39;\"What if I can't afford AnkiHub?\",41;\"/t/what-if-i-cant-afford-ankihub/167280/1\",41;\"Ahmed7\",41;\"AnkiHub has a scholarship program to get access at a decreased price. Apply \\\\u003ca href=\\\\\\\"https://www.ankihub.net/scholarships\\\\\\\"\\\\u003ehere \\\\u003c/a\\\\u003e. (You must \\\\u003ca href=\\\\\\\"https://app.ankihub.net/accounts/signup/\\\\\\\"\\\\u003esign up \\\\u003c/a\\\\u003efor an AnkiHub account before applying).\\\",41;\"2024-02-10T13:58:24.842Z\",41;\"❓ FAQs \\\\u003e AnKing Decks\",41;0,41;445,41;0,41;1,\\\"anking-wiki\\\"],[39;\"Does AnkiHub offer discounts?\",41;\"/t/does-ankihub-offer-discounts/228564/1\",41;\"andrew\",41;\"The are currently two ways to get a discount on AnkiHub: \\\\n\\\\nPurchase our \\\\u003ca href=\\\\\\\"https://app.ankihub.net/memberships/plans/\\\\\\\"\\\\u003eannual billing option\\\\u003c/a\\\\u003e for one free month per year\\\\n\\\\nAnkiHub is available at $4.58/user/month with an annual billing discount. We can’t afford to discount AnkiHub any further, unfortunately.\\\\n\\\\n\\\\nParticipate in an Ambassador program\\\\n\\\\n\\\\u0026hellip;\",41;\"2024-05-23T21:34:32.829Z\",41;\"❓ FAQs\",41;0,41;90,41;0,41;1]],\"args\":{\"search_query\":\"purchase accounts for other users subscribe private decks\"}}}\",\"name\":\"search\"}],\"stream\":true,\"stream_options\":{\"include_usage\":true},\"tools\":[{\"type\":\"function\",\"function\":{\"name\":\"search\",\"description\":\"Will search topics in the current discourse instance, when rendering always prefer to link to the topics you find\",\"parameters\":{\"type\":\"object\",\"properties\":{\"search_query\":{\"description\":\"Specific keywords to search for, space separated (correct bad spelling, remove connector words)\",\"type\":\"string\"},\"user\":{\"description\":\"Filter search results to this username (only include if user explicitly asks to filter by user)\",\"type\":\"string\"},\"order\":{\"description\":\"search result order\",\"type\":\"string\",\"enum\":[\"latest\",\"latest_topic\",\"oldest\",\"views\",\"likes\"]},\"limit\":{\"description\":\"limit number of results returned (generally prefer to just keep to default)\",\"type\":\"integer\"},\"max_posts\":{\"description\":\"maximum number of posts on the topics (topics where lots of people posted)\",\"type\":\"integer\"},\"tags\":{\"description\":\"list of tags to search for. Use + to join with OR, use , to join with AND\",\"type\":\"string\"},\"category\":{\"description\":\"category name to filter to\",\"type\":\"string\"},\"before\":{\"description\":\"only topics created before a specific date YYYY-MM-DD\",\"type\":\"string\"},\"after\":{\"description\":\"only topics created after a specific date YYYY-MM-DD\",\"type\":\"string\"},\"status\":{\"description\":\"search for topics in a particular state\",\"type\":\"string\",\"enum\":[\"open\",\"closed\",\"archived\",\"noreplies\",\"single_user\"]}},\"required\":[]}}},{\"type\":\"function\",\"function\":{\"name\":\"read\",\"description\":\"Will read a topic or a post on this Discourse instance\",\"parameters\":{\"type\":\"object\",\"properties\":{\"topic_id\":{\"description\":\"the id of the topic to read\",\"type\":\"integer\"},\"post_numbers\":{\"description\":\"the post numbers to read (optional)\",\"type\":\"array\",\"items\":{\"type\":\"integer\"}}},\"required\":[\"topic_id\"]}}}]}\n```

Sie können sehen, dass das Suchwerkzeug aufgerufen wurde, aber base_query nicht enthält.

Sie können auch sehen, dass content nur den Standard-System-Prompt enthält, ohne die Suchergebnisse.

  • Zeigt nicht die richtige Anzahl von Suchergebnissen an
    • es sagt 0, wenn es viele gibt, oder 5, wenn es 0 gibt
    • scheint weder mit den normalen Suchergebnissen noch mit den Ergebnissen der semantischen Ähnlichkeit korreliert zu sein
  • Der Bot fügt ungültige Abfrageparameter hinzu
    • z. B. fügte er category:non-existent-category am Ende der Abfrage hinzu.

:pleading_face: Anfragen

  • Es wäre sehr hilfreich, wenn es eine Option gäbe, eine ausführliche Protokollierung für discourse-ai zu aktivieren, damit wir Nicht-Ruby-Experten (ich lerne! :nerd_face: ) schnell Einblicke in das Geschehen im Hintergrund erhalten können, indem wir /logs besuchen.
  • Wenn das Suchwerkzeug verwendet wird, fügen Sie die Top-Ergebnisse zum Kontext für RAG hinzu.
  • Ratschläge, wie sichergestellt werden kann, dass base_query verwendet wird.

Habe ich Recht, dass der Funktionsaufruf gemäß dieser Angabe die Ergebnisse des Tool-Aufrufs in den Prompt pushen sollte?

Also aktualisiert er vielleicht den Prompt, aber das ist aus der Anfrage, die vom Debugging-Tool angezeigt wird, nicht ersichtlich?

Sollte ich nicht erwarten, den gesamten Kontext dort zu sehen? Wenn nicht, ist das verwirrend, da der gesamte Prompt-Kontext sichtbar ist, wenn eine Persona verwendet wird, die RAG mit Uploads durchführt.

Ich bin immer noch verwirrt über die Anzahl der gemeldeten Ergebnisse.

Das gesagt, ich erhalte viel bessere Ergebnisse, nachdem ich das Folgende zum System-Prompt hinzugefügt habe!

  • Rufe immer sowohl die Such- als auch die Lese-Funktion auf.
  • Rufe die Suchfunktion nicht öfter als 3 Mal auf.
  • Beim Aufruf der Suchfunktion immer diesen Wert für den Parameter category verwenden: “docs,faqs”

Dies wird ein absoluter Game-Changer sein, sobald ich die Dinge richtig konfiguriert habe.

Ich bin mir nicht sicher, ob Sie sich dessen bewusst sind, aber Sie befähigen uns effektiv mit etwas weitaus Mächtigerem als dem, was Intercom zu erreichen versucht.

Ich versuche bereits, den Intercom-Messenger zu kapern, indem ich Benutzer direkt zu Discourse AI leite :nerd_face: :

Der AnkiHub AI-Link öffnet eine PM mit dem AI-Bot mit einem Link wie diesem: /new-message?username=ankihubai_bot

Ja, das Debugging-Tool zeigt alles an, was wir an das LLM senden.

Ich habe gerade eine Korrektur an der Anzahl der Ergebnisse vorgenommen:

Wir haben eine gefilterte Abfrage nicht richtig verknüpft.

Ich rate davon ab, verwenden Sie stattdessen base_query, ich habe gerade getestet, dass es einwandfrei funktioniert: categories:docs,faqs


Ich rate davon ab, heutzutage GPT4 zu verwenden. Stellen Sie sicher, dass Sie GPT4o oder Turbo verwenden, da diese viel günstiger und schneller sind.

Ich überprüfe nur noch einmal … Sie haben die Einstellung

ai_bot_debugging_allowed_groups aktiviert, damit Sie den Debug-Button sehen?

2 „Gefällt mir“

Ja. Ich schicke dir gleich einen kurzen Screenshare, um zu zeigen, dass die Ergebnisse des Aufrufs der Lesefunktion nicht im Prompt verwendet werden.

Mir ist auch aufgefallen, dass die Lesefunktion nie aufgerufen wird, es sei denn, ich füge eine Notiz im System-Prompt hinzu: “rufe immer die Lesefunktion auf”. Es wäre großartig, wenn wir mehr Kontrolle über die Funktionsaufrufe hätten. Zum Beispiel set tool_choice: "required" im Fall von OpenAI.

Ich habe es gerade noch einmal mit dieser Basisabfrage versucht und die richtigen Suchparameter wurden verwendet. Das ist das erste Mal, dass ich sehe, dass es funktioniert. :person_shrugging:

Ich weiß, ich experimentiere gerade mit verschiedenen Modellen :smile: Ich habe mich gefragt, ob GPT4 entscheiden würde, andere Funktionsaufrufe zu tätigen. Haiku klingt sehr vielversprechend.

1 „Gefällt mir“

Vielen Dank
oh, das ist richtig, eine System-Prompt-Injektion findet nur statt, wenn die Persona Uploads hat. Wenn keine Uploads vorhanden sind, injizieren wir nichts.

Ohne Uploads verwenden wir keine bedingungslose System-Prompt-Injektion, sondern verlassen uns auf Tool-Aufrufe mit Tool-Aufruf-Ergebnissen, die Sie beim Scrollen sehen können.

Ein Tool-freier Modus, der auf Themen abzielt, ist sicherlich interessant, er würde eine beträchtliche Menge an Tokens verbrauchen. Die Herausforderung besteht jedoch darin, die richtigen Inhalte aus einem Thema herauszufiltern.

Wenn ein Thema beispielsweise 5000 Tokens umfasst, welche Tokens würden wir auswählen? Wie würden wir die richtigen Tokens auswählen?

Derzeit haben wir nur N Tokens pro Thema eingebettet, abhängig vom verwendeten Embedding-Modell.

Wir müssten also anfangen, mehr Chunks pro Thema einzubetten oder einen Algorithmus zu entwickeln, um herauszufinden, welcher Teil des Themas am interessantesten ist.

2 „Gefällt mir“

Ich bin verwirrt. Wenn die Ergebnisse des Aufrufs des Lese-Tools nicht für RAG verwendet werden, was bewirkt der Aufruf des Lese-Tools überhaupt? Ich sehe, dass die Ergebnisse des Lese-Tool-Aufrufs in den rohen Kontext eingefügt werden, aber es scheint nicht, dass dies vom LLM in irgendeiner Weise verwendet wird.

Mein gewünschter Anwendungsfall ist einfach: RAG auf einer Teilmenge von Themen gemäß der base_query aktivieren.

Ich denke, es wäre am besten, sich nicht auf Discourse zu verlassen, um meine Themen in mehrere Chunks aufzuteilen, die jeweils ihre eigene Einbettung haben. Vielmehr möchte ich dafür verantwortlich sein, meine Docs und FAQs so zu gestalten, dass sie für RAG optimiert sind. D.h., der gesamte Hauptbeitrag der Themen sollte einbettbar sein. Ich spreche hier von Wiki-Themen, deren Antworten ignoriert werden können und sollten.

ada-002 hat eine maximale Token-Eingabe von 8191, was für jedes gut geschriebene Dokument oder FAQ-Thema mehr als ausreichend ist. Solche Themen sollten weit unter diesem Limit liegen. Voyage AI hat eine viel größere Kontextlänge von 16000.

Wie wäre es mit etwas so Einfachem wie diesem:

  • (Tokens im System-Prompt - Tokens in der Benutzernachricht) = insgesamt verbleibende verfügbare Tokens
  • Injizieren Sie so viele Themen wie möglich in den Prompt, basierend auf den verbleibenden verfügbaren Tokens
    • Verwenden Sie nur den ersten Beitrag in den gefundenen Themen

Ich denke, die kurzfristige Umgehungslösung könnte die folgende sein:

  • Erstellen Sie eine Persona, die das Suchwerkzeug verwendet
  • Exportieren Sie alle Themen, die mit dem Suchwerkzeug gefunden werden konnten
    • Ich muss diese Dokumente nicht aufteilen, weil
      • Mich die Antworten auf die Themen nicht interessieren
      • Das Haupt-Wiki-Thema bereits klein genug ist, um das Ganze einzubetten.
  • Laden Sie diese Dokumente für RAG in die Persona hoch

Auf diese Weise wird die Persona tatsächlich RAG mit den Suchergebnissen durchführen.

Ich hoffe, das ergibt Sinn! Lassen Sie mich wissen, wenn etwas unklar ist.

1 „Gefällt mir“

Wenn Sie etwas lesen, wird es in den Konversationsstrom eingefügt.

Z. B.:

  • Können Sie X lesen?
  • Werkzeugaufruf liest X
  • Werkzeugergebnis „die Seite“
  • LLM-Antwort

RAG ist ein sehr überladener Begriff, aber am Ende fügt das Lesen eines Themas es zum Kontext hinzu, das LLM am Ende ist dafür verantwortlich, wie es verwendet wird, verschiedene LLMs können es besser oder schlechter nutzen.

Z. B.: [Untitled AI bot PM] - AI Conversation - Discourse Meta

Das Suchwerkzeug fügt bereits Auszüge von Themen ein, es macht keinen Sinn, es und ein RAG für denselben Inhalt zu haben.

Was Sie sagen, ist vermutlich, dass „die Suche Kontext liefert, aber nicht genug Kontext“.

Eine Problemumgehung besteht also darin, alle wichtigen Themen in eine Datei zu exportieren und sie dann als RAG zu verwenden. Verwenden Sie nicht das Suchwerkzeug.


Das Einfachste für den Moment ist:

categories:cat1,cat2,cat3 in:first

Dies beschränkt das Suchwerkzeug auf nur die ersten Beiträge.

Es ist sehr effizient, siehe:

Dies funktioniert, da das Suchwerkzeug Folgendes in den Kontext einfügt:


Ich möchte auch einen bedingungslosen „Rag“-Modus, bei dem Sie mehr Daten einfügen können (z. B. die Top 5 Dokumente finden und bis zu 5000 Token pro Dokument einfügen, wobei versucht wird, die relevantesten Abschnitte zu finden).

Es ist eine komplizierte Änderung, wir werden dorthin gelangen, aber vorerst … Suche + Lesen bringt Sie ziemlich weit.

2 „Gefällt mir“

Ich sage nur… ihr seid sehr nah an dem Punkt, an dem ihr eine Einführung in die Grundregeln für die Nutzung von KI geben müsst. Ich meine, ihr habt bereits eine ähnliche für CSS und ein paar andere Dinge.

2 „Gefällt mir“

Ich verstehe. Das ergibt Sinn. Aus OpenAIs Dokumentation zum Funktionsaufruf:

Die grundlegenden Schritte für den Funktionsaufruf sind wie folgt:

  1. Rufen Sie das Modell mit der Benutzerabfrage und einer Reihe von Funktionen auf, die im functions-Parameter definiert sind.
  2. Das Modell kann wählen, eine oder mehrere Funktionen aufzurufen. In diesem Fall ist der Inhalt ein stringifizierter JSON-Objekt, der Ihrem benutzerdefinierten Schema entspricht (Hinweis: Das Modell kann Parameter halluzinieren).
  3. Parsen Sie den String in Ihrem Code in JSON und rufen Sie Ihre Funktion mit den bereitgestellten Argumenten auf, falls vorhanden.
  4. Rufen Sie das Modell erneut auf, indem Sie die Funktionsantwort als neue Nachricht anhängen, und lassen Sie das Modell die Ergebnisse für den Benutzer zusammenfassen.

Entscheidend ist, dass ich #4 nicht kannte. Ich wusste nicht, dass die Ergebnisse des Aufrufs des Tools als Nachrichten angehängt werden. Ich dachte, es liege ganz beim Client, ob die Ergebnisse in nachfolgenden Aufrufen verwendet werden! Daher war ich verwirrt, als ich die Tool-Aufrufergebnisse nicht im Prompt selbst sah. :facepalm: Das ergibt jetzt alles viel mehr Sinn. Danke!

:+1: :pray: Klingt, als wäre der einzige Nachteil hier, dass Bot-Antworten diese schönen Suchergebnisse nicht enthalten werden. Würden Sie aus irgendeinem Grund dringend die Verwendung von Dokumenten-Uploads und des Suchtools empfehlen, auch wenn es etwas redundant sein wird? Ich frage mich, ob die Vorteile, die Suchergebnisse im Gespräch zu erhalten, es wert sein werden.

Sie müssen es testen, es könnte funktionieren, es könnte überraschende Ergebnisse liefern und vieles hängt von der LLM ab, die Sie verwenden.

1 „Gefällt mir“