Sauvegarde vers Ollama

Consultez notre guide ci-dessous pour le processus complet sur la façon d'enregistrer sur Ollamaarrow-up-right:

🦙Tutorial: Finetune Llama-3 and Use In Ollamachevron-right

Enregistrement sur Google Colab

Vous pouvez enregistrer le modèle affiné en tant que petit fichier de 100 Mo appelé adaptateur LoRA comme ci-dessous. Vous pouvez aussi le pousser sur le hub Hugging Face si vous souhaitez téléverser votre modèle ! N'oubliez pas d'obtenir un token Hugging Face via : https://huggingface.co/settings/tokensarrow-up-right et ajoutez votre token !

Après avoir enregistré le modèle, nous pouvons à nouveau utiliser Unsloth pour exécuter le modèle lui-même ! Utilisez FastLanguageModel à nouveau pour l'appeler pour l'inférence !

Exportation vers Ollama

Enfin nous pouvons exporter notre modèle affiné vers Ollama lui-même ! D'abord nous devons installer Ollama dans le notebook Colab :

Ensuite nous exportons le modèle affiné vers les formats GGUF de llama.cpp comme ci-dessous :

Rappel de convertir False en True pour 1 ligne, et ne pas changer chaque ligne en True, sinon vous attendrez très longtemps ! Nous suggérons normalement que la première ligne soit définie sur True, afin que nous puissions exporter rapidement le modèle affiné vers Q8_0 format (quantification 8 bits). Nous vous permettons également d'exporter vers toute une liste de méthodes de quantification, l'une des plus populaires étant q4_k_m.

Rendez-vous sur https://github.com/ggerganov/llama.cpparrow-up-right pour en savoir plus sur GGUF. Nous avons aussi des instructions manuelles sur la façon d'exporter vers GGUF si vous le souhaitez ici : https://github.com/unslothai/unsloth/wiki#manually-saving-to-ggufarrow-up-right

Vous verrez une longue liste de textes comme ci-dessous - veuillez patienter 5 à 10 minutes !!

Et enfin, tout à la fin, cela ressemblera à ceci :

Ensuite, nous devons exécuter Ollama lui-même en arrière-plan. Nous utilisons subprocess parce que Colab n'aime pas les appels asynchrones, mais normalement on exécute simplement ollama serve dans le terminal / invite de commande.

Automatique Fichier de modèle création

L'astuce fournie par Unsloth est que nous créons automatiquement un Fichier de modèle que Ollama nécessite ! Il s'agit simplement d'une liste de paramètres et inclut le modèle de chat que nous avons utilisé pour le processus d'affinage ! Vous pouvez aussi afficher le Fichier de modèle généré comme ci-dessous :

Nous demandons ensuite à Ollama de créer un modèle compatible avec Ollama, en utilisant le Fichier de modèle

Inference Ollama

Et nous pouvons maintenant appeler le modèle pour l'inférence si vous voulez appeler le serveur Ollama lui-même qui s'exécute sur votre machine locale / dans le notebook Colab gratuit en arrière-plan. N'oubliez pas que vous pouvez modifier la partie soulignée en jaune.

Fonctionne bien dans Unsloth, mais après exportation et exécution sur Ollama, les résultats sont médiocres

Vous pouvez parfois rencontrer un problème où votre modèle s'exécute et produit de bons résultats sur Unsloth, mais lorsque vous l'utilisez sur une autre plateforme comme Ollama, les résultats sont médiocres ou vous pouvez obtenir des charabias, des générations sans fin/infinies ou sorties répétées.

  • La cause la plus courante de cette erreur est l'utilisation d'un modèle de chat incorrect. Il est essentiel d'utiliser le MÊME modèle de chat qui a été utilisé lors de l'entraînement du modèle dans Unsloth et plus tard lorsque vous l'exécutez dans un autre framework, tel que llama.cpp ou Ollama. Lors de l'inférence à partir d'un modèle enregistré, il est crucial d'appliquer le bon modèle.

  • Vous devez utiliser le bon jeton eos. Si ce n'est pas le cas, vous pourriez obtenir du charabia sur des générations plus longues.

  • Cela peut aussi être dû au fait que votre moteur d'inférence ajoute un jeton « début de séquence » inutile (ou au contraire l'absence de celui-ci) ; assurez-vous donc de vérifier les deux hypothèses !

  • Utilisez nos notebooks conversationnels pour forcer le modèle de chat - cela résoudra la plupart des problèmes.

Mis à jour

Ce contenu vous a-t-il été utile ?