Facts4Chat: Fakten(-treue) für Chatbots
Veranstalter: Erich Schubert (TU Dortmund) und Lukas Pfahler (Lamarr Institut)
Motivation: Im letzten Jahr haben sich generative Sprachmodelle und Chatbots mit ChatGPT enorm weiterentwickelt. Allerdings haben alle aktuellen Chatbots ein großes Problem mit der Faktentreue, und sie neigen dazu zu „halluzinieren“. Dabei generieren diese Modelle Texte, die oberflächlich plausibel sind, aber falsche Aussagen enthalten. Besonders deutlich wird dies, wenn man nach Themen fragt, die in den Trainingsdaten nicht detailliert vorhanden sind, beispielsweise „Restaurantempfehlungen in der Nähe der TU Dortmund“. Hier neigen die Modelle dazu, Restraurantnamen zu erfinden. Ebenso basieren sie weitgehend auf einem eingefrorenem Wissensstand, durch den enormen Trainingsaufwand und die dazu nötigen Datenmengen – die Modelle sind auf großen Teilen des Internets trainiert, nicht nur auf aktuellen Informationen. Fragt man nach aktuellen Ereignissen, so können sie nichts dazu sagen. Daher eignen sich diese Assistenten derzeit vor allem dazu, kreative Schreibarbeiten zu übernehmen, und lassen sich weder für die wissenschaftliche Arbeit noch für eine Recherche zu aktuellen Themen gut verwenden. Es gibt jedoch bereits Ansätze dies zu verbessern. So kann ChatGPT inzwischen mit Plugins auf eine Internetsuche zurückgreifen, und auch in Microsoft Bing und Google Bard ist dies integriert. Bereits zuvor sind Google RETRO und Meta’s Blenderbot mit vergleichbaren Fähigkeiten vorgestellt worden. Für Spezialanwendungen ist dies jedoch aktuell noch nicht nutzbar, da kein Source-Code verfügbar ist.
Zielsetzung: Die Projektgruppe soll sich mit aktuellen Open-Source Sprachmodellen wie OpenAssistant, OpenLLaMA, RedPajama, RWKV-Raven, und BloomChat beschäftigen. Das Ziel dabei ist es, mit einem Information-Retrieval-Backend die Faktentreue des Modells zu verbessern. Dazu muss ein lokaler Datenbestand (bspw. aktuelle Zeitungsartikel, Vorlesungsskripte, oder die Universitätswebseiten) mit geeigneten Techniken (d.h., Embeddings) zur Ähnlichkeitssuche indiziert werden, und bei Fragen des Nutzers relevante Dokumentabschnitte identifiziert werden. Diese können dann vom Sprachmodell zur kontextabhängigen Beantwortung der Frage herangezogen werden.
Dabei soll kein eigenes Sprachmodell trainiert werden, sondern über den Kontext das spezifische Faktenwissen mit einem bestehenden Modell genutzt werden. Es ist lediglich möglich, mittels Finetuning die Modelle etwas anzupassen. Denn für viele Anwendungsfälle ist es nicht möglich, ein „eigenes“ ChatGPT zu trainieren – dazu reicht oft weder der Datenbestand, noch die verfügbare Rechenleistung. Zudem müssten die Modelle auch noch regelmäßig neu trainiert werden, um aktuelle Informationen zu integrieren, daher ist ein Retrieval-Backend sinnvoll.
Anwendungsmöglichkeiten: Wenn das System auf der Basis von Open-Source-Modellen arbeitet, und on-premise mit eher niedrigen Hardwareanforderungen umgesetzt werden kann, so würde das viele datenschutzrechtliche Probleme vermeiden, und zahlreiche Anwendungen ermöglichen:
- Tutorsystem für Vorlesungen: werden Vorlesungsskripte und wissenschaftliche Lehrbücher zum Beantworten der Fragen genutzt, kann so ein System –hoffentlich– qualitativ akzeptable Antworten für die Fragen von Studierenden zu Vorlesungsinhalten generieren, und relevante Passagen aus den Unterlagen markieren.
- Recherche in aktuellen Nachrichtenmeldungen: können aktuelle Informationen wie Zeitungsmeldungen zeitnah in den Datenbestand integriert werden, so erlaubt das System auch Fragen zu den neuesten Ereignissen. Für weiterführende Informationen und zur Kontrolle der Antworten können die Nutzer:innen dann auf die entsprechenden Zeitungsmeldungen verwiesen werden.
- Recherche in Forschungsergebnissen: auch hier spielt Aktualität und Faktentreue eine große Rolle. Sowohl für Mitarbeiter als auch Studierende wäre ein System toll, das Forschungsfragen beantworten und geeignete Quellen identifizieren kann. Eine mögliche Datenquelle dafür sind arXiv-Preprints, auf die relativ einfach zugegriffen werden kann. Da im Bereich der Künstlichen Intelligenz ein wesentlicher Teil der aktuellen Forschung zuerst auf arXiv erscheint, bestehende Chatsysteme wie ChatGPT aber nur eher generische Antworten geben können.
- Wissensmanagement für Unternehmen: viele Unternehmen haben zwar einen großen internen Datenbestand mit spezifischem Wissen, aber Schwierigkeiten dieses Wissen einfach innerhalb der Firma zugänglich zu machen. Da hier Geschäftsgeheimnisse betroffen sind, gibt es oft auch große Bedenken diese Daten einem Dienstleister außerhalb der Firma zugänglich zu machen, so dass eine on-premise-Lösung wünschenswert wäre. Aufgrund von negativen Erfahrungen bspw. mit ChatGPT ist der Zugriff auf solche Systeme inzwischen sogar zum Teil blockiert, um den Abfluss solcher Informationen durch unbedachte Nutzung zu verhindern.5 Mit so einem System könnte ein Unternehmen ihr internes Wissen indizieren und in Form eines firmeninternen Chatsystems nutzbar machen.
Daten: Als Grundlage sollen hier open-source Sprachmodelle dienen, die frei heruntergeladen werden können. Die kleineren dieser Modelle können bereits auf Desktop-Grafikkarten ausgeführt werden, lediglich für ein Finetuning ist eine erhöhte Rechenleistung notwendig. Zudem bekommen die Studierenden Zugriff auf einen aktuellen Datenbestand aus Zeitungsartikeln (in deutscher und englischer Sprache), Wikipedia und Wikidata, sowie auf bestehende Datenbestände zu wissenschaftlichen Publikationen aus arXiv.
Im Laufe der Projektgruppe sollen weitere Daten erhoben werden, insbesondere Nutzerfeedback um die Qualität zu evaluieren und zu verbessern. So kann beispielsweise der Chatbot darauf trainiert werden, Fragen die nicht durch die verwendete Wissensbasis beantwortet werden können, oder die ethischen Zielsetzungen widersprechen, möglichst abzulehnen.
Aufgabenstellung:
Die Projektgruppe soll
- einen eigenen Chatbot basierend auf Open-Source Modellen aufsetzen
- einen umfangreichen lokalen Datenbestand in einem geeigneten Suchindex indizieren
- den Suchindex im Chatbot zur besseren Beantwortung von Fragen einsetzen
- die Qualität der Antworten mit und ohne Index geeignet evaluieren
- mit gesammeltem Nutzerfeedback ein Finetuning vornehmen
- einen Zwischenbericht zur Dokumentation der Arbeiten im ersten PG-Semester sowie einen Endbericht zur Dokumentation der PG-Ergebnisse erstellen
Literatur
- A. Vaswani, N. Shazeer, N. Parmar u. a. “Attention is All you Need”. In: NeurIPS. 2017, S. 5998–6008. https://proceedings.neurips.cc/paper/2017/hash/3f5ee243547dee91fbd053c1c4a845aa-Abstract.html.
- A. Radford, K. Narasimhan, T. Salimans u. a. Improving language understanding by generative pre-training. 2018. https://cdn.openai.com/research-covers/language-unsupervised/language_understanding_paper.pdf.
- J. Devlin, M. Chang, K. Lee u. a. “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding”. In: NAACL-HLT. 2019, S. 4171–4186. https://doi.org/10.18653/v1/n19-1423.
- N. Reimers und I. Gurevych. “Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks”. In: EMNLP-IJCNLP. 2019, S. 3980–3990. https://doi.org/10.18653/v1/D19-1410.
- D. M. Ziegler, N. Stiennon, J. Wu u. a. Fine-Tuning Language Models from Human Preferences. 2019. https://doi.org/10.48550/arXiv.1909.08593.
- T. B. Brown, B. Mann, N. Ryder u. a. “Language Models are Few-Shot Learners”. In: NeurIPS. 2020. https://proceedings.neurips.cc/paper/2020/hash/1457c0d6bfcb4967418bfb8ac142f64a-Abstract.html.
- N. Stiennon, L. Ouyang, J. Wu u. a. Learning to summarize from human feedback. 2020. https://doi.org/10.48550/arXiv.2009.01325.
- Y. Bai, S. Kadavath, S. Kundu u. a. Constitutional AI: Harmlessness from AI Feedback. 2022. https://doi.org/10.48550/arXiv.2212.08073.
- S. Borgeaud, A. Mensch, J. Hoffmann u. a. “Improving Language Models by Retrieving from Trillions of Tokens”. In: International Conference on Machine Learning, ICML. Bd. 162. Proceedings of Machine Learning Research. 2022, S. 2206–2240. url: https://proceedings.mlr.press/v162/borgeaud22a.html.
- T. Dao, D. Y. Fu, S. Ermon u. a. “FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness”. In: NeurIPS. 2022. url: http://papers.nips.cc/paper/2022/hash/67d57c32e20fd0a7a302cb81d36e40d5-Abstract-Conference.html.
- J. Geiping und T. Goldstein. Cramming: Training a Language Model on a Single GPU in One Day. 2022. https://doi.org/10.48550/arXiv.2212.14034.
- J. Hoffmann, S. Borgeaud, A. Mensch u. a. Training Compute-Optimal Large Language Models. 2022. https://doi.org/10.48550/arXiv.2203.15556.
- L. Ouyang, J. Wu, X. Jiang u. a. “Training language models to follow instructions with human feedback”. In: NeurIPS. 2022. http://papers.nips.cc/paper/2022/hash/b1efde53be364a73914f58805a001731-Abstract-Conference.html.
- K. Shuster, J. Xu, M. Komeili u. a. BlenderBot 3: a deployed conversational agent that continually learns to responsibly engage. 2022. https://doi.org/10.48550/arXiv.2208.03188.
- R. Thoppilan, D. D. Freitas, J. Hall u. a. LaMDA: Language Models for Dialog Applications. 2022. https://doi.org/10.48550/arXiv.2201.08239.
- V. Lialin, V. Deshpande und A. Rumshisky. Scaling Down to Scale Up: A Guide to Parameter-Efficient Fine-Tuning. 2023. https://doi.org/10.48550/arXiv.2303.15647.
- R. Taori, I. Gulrajani, T. Zhang u. a. Stanford Alpaca: An Instruction-following LLaMA model. GitHub repository. 2023. https://github.com/tatsu-lab/stanford_alpaca.
- H. Touvron, T. Lavril, G. Izacard u. a. LLaMA: Open and Efficient Foundation Language Models. 2023. https://doi.org/10.48550/arXiv.2302.13971.