Großsprachenmodelle sind teuer und langsame Giganten, und die Bewertung von gigantischen modernen Datensätzen macht es nur noch schlimmer.
Wenn es nur eine Möglichkeit gibt, nur eine aussagekräftige ( und kleine ) Teilmenge des Korpus auszuwählen und eine hoch genaue Bewertung zu erhalten .....
Warten Sie, klingt nach Bayes'sche Optimierung!
Bocoel funktioniert in den folgenden Schritten:
Die generierten Bewertungen lassen sich einfach vom Dienstprogramm zur Verfügung gestellt.
Nach unserem Kenntnisstand ist dies die erste Arbeit, die darauf abzielt, die Berechnungskosten während der Bewertung (Benchmarking) mit einem (möglicherweise dynamischen) Budget zu senken.
GPT2 , Pythia , LLAMA und mehr durch Integration mit Huggingface -Transformatoren und DatensätzenWie was du siehst? Bitte überlegen Sie, dies einen Stern zu geben (★)!
Einfach ausgedrückt, zielt die Bayes'sche Optimierung darauf ab, das Erkundungsziel (den lila Bereich im Bild) oder das Ausbeutungsobjekt (die Höhe der schwarzen Punkte) zu optimieren. Es verwendet Gaußsche Prozesse als Rückgrat für Inferenz und eine Erfassungsfunktion, um zu entscheiden, wo als nächstes ein Probieren ist. Hier finden Sie eine ausführlichere Einführung.
Da die Bayesian-Optimierung gut zu einem teuren Black-Box-Modell (Paraphrase: LLM) funktioniert , ist es perfekt für diesen bestimmten Anwendungsfall. Bocoel verwendet die Bayes'sche Optimierung als Rückgrat zum Erforschen des von unserem Korpus angegebenen Einbettungsraums, mit dem eine gute Untergruppe als Mini -Schnappschuss des Korpus ausgewählt werden kann.
LLMs sind schmerzhaft langsam, insbesondere generative (was normalerweise als LLM bezeichnet wird), da die Sequenzerzeugung von Natur aus sequentiell ist.
Trotz bocoel Anforderung, einen Einbettder zu verwenden, um den gesamten Korpus zu codieren, sind die Einbetten schneller als LLMs durch Größenordnungen, und die Zeit wird durch praktisch jegliche Einsparungen bei der Bewertung von LLMs zurückgezogen.
Ich möchte keine optionalen Abhängigkeiten:
pip install bocoel
Geben Sie mir die volle Erfahrung (alle optionalen Abhängigkeiten):
pip install "bocoel[all]"
Sehen Sie sich die Ordner Beispiele/Get_Started an, um eine vereinfachte Verwendung der Bibliothek zu verwenden, um mit nur wenigen Codezeilen zu beginnen.
Verwendungsbeispiele werden unter den Ordner examples liegen. API -Referenz finden Sie hier.
Mitwirkende gesucht! Sei nicht schüchtern. Fühlen Sie sich frei, Probleme und PRs einzureichen. Für PRS folgen Sie bitte dem Leitfaden zum Mitarbeit und dem Verhaltenskodex. Offenheit und Inklusivität werden sehr ernst genommen.
Der Code ist unter BSD-3-Lizenz verfügbar.
Wenn Sie dieses Projekt in Ihrer Forschung hilfreich finden, zitieren Sie diese Arbeit bei
@misc{bocoel2024,
title = {BoCoEL: Bayesian Optimization as a Coverage Tool for Evaluating Large Language Models},
url = {https://bocoel.rentruewang.com/research/},
author = {Wang, RenChu},
month = {January},
year = {2024}
}