Ce référentiel fournit un cadre pour la classification basée sur l'invite à l'aide de modèles de langue pré-formés, en mettant l'accent sur les tâches de classification de texte persan. Il comprend des scripts et des cahiers pour générer des invites, des invites à affinage pour la classification, l'évaluation des résultats et l'analyse des mesures de performance du modèle telles que le score F1, la précision et le rappel. Le référentiel prend également en charge l'apprentissage par shot pour améliorer l'adaptabilité du modèle en incorporant des exemples pertinents.
Codes : contient le code de base et les cahiers pour la formation des modèles, la génération rapide et l'évaluation.
AYA-Colab.ipynb : cahier principal pour la formation et les invites à réglage fin avec les modèles AYA sur Colab.Classification_report.ipynb : génère des mesures de classification, y compris le score F1, la précision et le rappel pour différentes configurations d'invites.Creating_dataset.ipynb : préparation des données et création de données pour l'apprentissage basé sur une invite.f1-calculation.py : script python pour calculer et visualiser les scores F1.news-aya-symbol-tuning.ipynb : cahier pour un réglage basé sur les symboles avec des modèles AYA pour la classification du texte.news-aya-system-user-prompt.ipynb : Script pour la génération du système et des invites utilisateur à l'aide d'un modèle de langue pré-formé.Symbol_tuning_aya.ipynb : cahier de tuning symbole pour optimiser l'efficacité de l'invite.Ensembles de données : contient des ensembles de données utilisés pour la formation et l'évaluation.
Invites : contient des modèles d'invites utilisés pour diverses tâches de classification.
Diapositives : Documentation et fichiers de présentation expliquant l'apprentissage en contexte, la conception rapide, l'apprentissage K-shot et le réglage des symboles.
In-Context Learning.pptx & In-Context Learning.pdf : Détails sur l'utilisation de l'apprentissage dans le contexte pour le réglage du modèle.System-User Prompt Design.pptx & System-User Prompt Design.pdf : Guide pour la conception d'invites système et utilisateur.Symbol Tuning.pptx & Symbol Tuning.pdf : Instructions sur l'utilisation du réglage du symbole pour améliorer les performances de l'invite. Clone le référentiel:
git clone https://github.com/ShayanSalehi81/BachelorProject
cd BachelorProjectInstallez les packages requis:
pip install -r requirements.txtAuthentifiez avec la face étreinte (si nécessaire) et installez des bibliothèques supplémentaires:
huggingface-cli login --token YOUR_HUGGINGFACE_TOKEN Exécutez l'un des ordinateurs portables ou des scripts Python dans le répertoire Codes pour effectuer des tâches telles que la création de l'ensemble de données, le réglage rapide ou l'évaluation.
Generator charge un modèle de langue pré-formé, formate des invites et génère des prédictions. Le script prend en charge la quantification 4 bits pour une utilisation efficace de la mémoire et exploite les invites fournies par l'utilisateur pour classer les données d'information persanes comme "importantes" ou "non importantes".news-aya-symbol-tuning.ipynb et Symbol_tuning_aya.ipynb sont conçus pour affiner les symboles invites, ce qui peut améliorer l'interprétabilité du modèle et la cohérence de la réponse. Le réglage du symbole introduit des ajustements mineurs aux invites, améliorant la compréhension du modèle des requêtes nuancées. Creating_dataset.ipynb pour prétraiter et formater votre ensemble de données.news-aya-system-user-prompt.ipynb pour définir les invites système et utilisateur et exécuter la classification sur l'ensemble de données.Classification_report.ipynb pour calculer des mesures comme la précision et le score F1 et f1-calculation.py pour visualiser les performances.news-aya-symbol-tuning.ipynb pour affiner la conception rapide avec un réglage du symbole. Ce projet est autorisé sous la licence du MIT.
Les contributions sont les bienvenues! N'hésitez pas à soumettre des problèmes, des demandes de fonctionnalités ou des demandes de traction pour améliorer ce projet.