À propos du projet

FastChat est une plateforme open source pour entraîner, servir et évaluer des chatbots basés sur de grands modèles de langage (LLM). C'est le dépôt de publication pour Vicuna et la technologie derrière Chatbot Arena (lmarena.ai), qui, selon le README, a servi plus de 10 millions de requêtes de chat pour plus de 70 LLM et recueilli plus de 1,5 million de votes humains pour un classement Elo en ligne des LLM. Capacités principales décrites dans le README : - Code d'entraînement et d'évaluation pour des modèles tels que Vicuna et MT-Bench. - Système de service multi-modèles distribué avec interface web et API RESTful compatibles OpenAI. - Inférence en ligne de commande prenant en charge un seul GPU, plusieurs GPU avec parallélisme de modèle, CPU uniquement, Apple Metal (MPS), Intel XPU et backend Ascend NPU. - Options d'économie de mémoire incluant la compression 8 bits et le déchargement CPU, ainsi que le support de quantification tel que ExLlama V2, GPTQ 4 bits et AWQ 4 bits. - Architecture GUI web avec un contrôleur, des workers de modèle et un serveur web Gradio ; plusieurs workers peuvent être enregistrés sur un seul contrôleur pour un débit plus élevé ou plusieurs modèles. - Interface de bataille côte à côte (Chatbot Arena) pouvant être lancée localement, avec prise en charge des modèles basés sur API, notamment OpenAI, Anthropic, Gemini et Mistral. - API compatibles OpenAI utilisables avec la bibliothèque openai-python et cURL, ainsi que les API de génération Hugging Face et l'intégration LangChain. - Évaluation via MT-bench, un ensemble de questions ouvertes multi-tours, avec des LLM puissants comme GPT-4 agissant comme juges. - Code de fine-tuning basé sur Stanford Alpaca avec prise en charge des conversations multi-tours, support LoRA et hyperparamètres documentés pour Vicuna-13B. - Poids de modèles pour Vicuna (7B, 13B, 33B, y compris les variantes à contexte 16K), LongChat et FastChat-T5, téléchargeables depuis Hugging Face. - Prise en charge d'une large gamme de modèles, notamment Llama 2, Vicuna, Alpaca, Baize, ChatGLM, Dolly, Falcon, FastChat-T5, GPT4ALL, Guanaco, OpenAssistant, OpenChat, RedPajama, StableLM, WizardLM et xDAN-AI. - Installation via pip ou à partir des sources, avec des extras optionnels pour le worker de modèle, l'interface web et l'entraînement. Le README mentionne également les ensembles de données et rapports publiés par le projet, notamment LMSYS-Chat-1M et Chatbot Arena Conversations, et cite l'article « Judging LLM-as-a-judge with MT-Bench and Chatbot Arena ».