Peaufiner le modèle
Peaufine un modèle à l’aide de l’ensemble de données d’entraînement spécifié.
Voir aussi
Options
-
Nom du compte est une expression de texte associée au nom du compte d'IA à utiliser. Dans le fichier actuel, utilisez l'action de script Configurer le compte IA pour configurer le compte et lui attribuer ce nom avant l'exécution de cette action de script.
-
Modèle de base est une expression de texte pour le modèle de génération de texte à peaufiner. Pour connaître les modèles pris en charge, consultez les caractéristiques techniques de FileMaker.
-
Données d’entraînement spécifie la source des données d'entraînement pour le peaufinage :
-
Tableau : utilise les données de l'occurrence de la table spécifiée en fonction du jeu actuel d'enregistrements trouvés. Pour l'entraînement, les données de Rubrique de progression sont utilisées comme réponse d'assistant ; les données de toutes les autres rubriques sont utilisées comme prompt utilisateur correspondant.
-
Fichier : utilise un fichier JSONL contenant des données d'entraînement. Chaque ligne doit être un objet JSON valide contenant un prompt utilisateur et sa réponse d'assistant correspondante.
-
-
Cible de la réponse spécifie la rubrique ou la variable vers laquelle le fournisseur de modèles renvoie un objet JSON avec des informations sur le peaufinage commencé par cette action de script.
-
Paramètres de peaufinage correspond à une expression de texte relative à un objet JSON qui se compose de paires clé-valeur pour des paramètres de peaufinage pris en charge par le fournisseur de modèles.
Options disponibles uniquement lorsque Données d'entraînement est défini sur Tableau :
-
La valeur de Tableau spécifie une occurrence de table à utiliser pour les données d'entraînement.
-
Rubrique de progression spécifie la rubrique de la Table contenant les réponses d'assistant attendues pour l'entraînement.
Options disponibles uniquement lorsque Données d'entraînement est défini sur Fichier :
-
La valeur de Fichier spécifie une liste d'un ou plusieurs chemins pour le fichier JSONL contenant des données d'entraînement. Les chemins doivent utiliser l'un des préfixes de chemin
file
. L'action de script examine la liste et ajoute le premier fichier JSONL qu'elle localise avec succès. Consultez la section Création de chemins d'accès.
Compatibilité
Produit | Prise en charge |
FileMaker Pro | Oui |
FileMaker Go | Oui |
FileMaker WebDirect | Oui |
FileMaker Server | Oui |
FileMaker Cloud | Oui |
FileMaker Data API | Oui |
Publication Web personnalisée | Oui |
Provient de la version
22.0
Description
Cette action de script envoie des données d'entraînement à un fournisseur de modèles pris en charge pour créer une version peaufinée d'un modèle d'IA de base à l'aide de techniques d'adaptation de bas rang (LoRA). Le peaufinage permet de personnaliser le comportement d'un modèle pour des tâches, des domaines ou des styles de réponse spécifiques en l'entraînant sur vos propres données tout en préservant les capacités générales du modèle de base. Par exemple, vous pouvez peaufiner un modèle pour mieux répondre en utilisant la terminologie, le style d'écriture ou l'expertise de votre entreprise. LoRA est une méthode efficace qui ajoute de petits paramètres entraînables au modèle sans modifier les pondérations d'origine. Cette approche nécessite beaucoup moins de ressources de calcul et de mémoire qu'un peaufinage complet du modèle tout en proposant des améliorations de performance comparables.
Le compte d'IA spécifié par Nom de compte doit être configuré pour l'un des fournisseurs de modèles suivants :
-
OpenAI
-
Le serveur de modèle d'IA fourni avec FileMaker Server sur un Mac à puce Apple
Les autres fournisseurs de modèles et systèmes d'exploitation ne sont pas pris en charge pour le peaufinage. Consultez les Caractéristiques techniques de FileMaker.
Données d'entraînement
Les données d'entraînement peuvent être fournies soit à partir d'une table FileMaker, soit à partir d'un fichier JSON Lines (JSONL). Chaque exemple d'entraînement se compose d'un prompt utilisateur et de la réponse d'assistant souhaitée. Le modèle est alors capable de générer des réponses similaires à vos exemples d'entraînement lorsqu'on lui donne des prompts similaires.
Données d'entraînement de | Résultat |
---|---|
Tableau |
Pour l'occurrence de la table spécifiée, envoie les données de Rubrique de progression en tant que réponse d'assistant et les données de toutes les autres rubriques en tant que prompt utilisateur correspondant. Pour chaque enregistrement de l'ensemble trouvé actuel (ou pour chaque enregistrement lié si vous spécifiez une table liée), l'action de script crée un objet JSON dans le format suivant, puis les envoie tous sous forme de fichier JSONL au fournisseur de modèles. Copier
Remarque Cette option ne vous permet pas de spécifier quelles rubriques sont envoyées dans le prompt utilisateur. Pour spécifier les rubriques à inclure dans le prompt utilisateur, utilisez l'action de script Sauvegarder les enregistrements au format JSONL pour créer un fichier JSONL, puis utilisez l'option Fichier dans cette action de script pour envoyer ce fichier en tant que données d'entraînement. |
Fichier |
Envoie le premier fichier JSONL localisé avec succès dans la liste de chemins spécifiée par Fichier. Chaque ligne du fichier JSONL doit contenir un objet JSON qui contient au moins le prompt utilisateur et la réponse d'assistant correspondante dans ce format : Copier
Remarque Bien qu'il soit montré ici sur plusieurs lignes pour plus de clarté, chaque objet JSON doit être sur une seule ligne dans le fichier JSONL. Vous pouvez utiliser l'action de script Sauvegarder les enregistrements au format JSONL avec l'option Format de peaufinage activée pour créer ce fichier à partir de données d'enregistrement. |
Cible de la réponse
Pour obtenir des informations sur le peaufinage lancé par cette action de script, spécifiez une variable ou une rubrique pour l'option Cible de la réponse. Le peaufinage peut prendre énormément de temps. Vous devez donc vérifier auprès du fournisseur de modèles quand le processus est terminé et quand le modèle peaufiné est prêt.
Par exemple, le serveur de modèle d'IA envoie une réponse comme celle illustrée ci-dessous lorsque :
-
Le fichier JSONL spécifié par Fichier est mes-données-entraînement.jsonl.
-
Modèle de base est google/codegemma-7b-it.
-
La valeur de la clé
fine_tuned_model_name
spécifiée dans Paramètres de peaufinage est my-fine-tuned-model-name. La valeur de la cléfine_tuned_model
dans Cible de la réponse est le nom complet attribué par le serveur de modèle d'IA.
{
"result": {
"object": "fine_tuning.job",
"id": "fm-ftjob-1753297022103",
"file_id": "fm-ft-train-1753297022070",
"model": "google/codegemma-7b-it",
"created_at": 1753297022103,
"fine_tuned_model": "fm-mlx-my-fine-tuned-model-name",
"status": "en file d'attente",
"training_file": "mes-données-entraînement.jsonl",
"tags": [
"fine-tune"
]
}
}
Pour déterminer quand le serveur de modèle d'IA a terminé le peaufinage, connectez-vous à l'Admin Console de FileMaker Server. Consultez les remarques.
Paramètres de peaufinage
L'option Paramètres de peaufinage peut être utilisée pour spécifier les paramètres de peaufinage pris en charge par le fournisseur de modèles. Consultez la documentation du fournisseur de modèles pour connaître les noms de clés des paramètres pris en charge et leurs plages de données valides.
Pour le serveur de modèle d'IA fourni avec FileMaker Server, vous pouvez utiliser les clés et valeurs suivantes pour ajuster le peaufinage, si nécessaire. Si une clé n'est pas spécifiée ou si l'option Paramètres de peaufinage n'est pas utilisée, l'action de script utilise les valeurs par défaut.
Paramètre | Description | Valeur par défaut |
|
Nombre total d'étapes (ou d'itérations) d'entraînement. Plus d'itérations nécessitent plus de mémoire et de temps, mais peuvent entraîner un surapprentissage. |
1 000 |
|
Nombre qui contrôle la mesure dans laquelle le modèle s'ajuste pendant chaque étape d'entraînement. Des valeurs plus élevées sont synonymes d'entraînement plus rapide, mais peuvent entraîner un surréglage des performances optimales. Des valeurs plus faibles sont synonymes d'entraînement plus stable mais de convergence plus lente. |
2e-4 (0.0002) |
|
Nombre de couches du modèle auxquelles des adaptateurs LoRA sont appliqués pendant le peaufinage. Des valeurs plus faibles signifient un entraînement plus rapide avec une utilisation plus faible de la mémoire, ce qui est parfait pour de simples changements de modèle. Des valeurs plus élevées sont synonymes d'entraînement plus lent avec une utilisation plus élevée de la mémoire, ce qui est préférable pour les changements de modèle plus complexes. |
4 |
|
Nombre d'exemples d'entraînement traités ensemble avant la mise à jour des pondérations du modèle pendant le peaufinage. Des valeurs plus faibles sont synonymes d'utilisation plus faible de la mémoire et d'entraînement plus lent. Des valeurs plus élevées sont synonymes d'utilisation de la mémoire et d'entraînement plus rapide. |
1 |
|
Contrôle le nom personnalisé de votre modèle peaufiné après entraînement. Pour le nom racine que vous spécifiez dans ce paramètre, le serveur de modèle d'IA convertit les espaces en tirets et ajoute le préfixe Le nom complet du modèle peaufiné est renvoyé dans la Cible de la réponse. Avertissement Si le nom complet correspond à celui d'un modèle peaufiné existant, ce modèle est supprimé avant le début de l'entraînement pour le nouveau modèle peaufiné. |
|
Par exemple, cet objet JSON définit des clés dans l'option Paramètres de peaufinage :
{
"max_steps": 2000,
"learning_rate": 1e-4,
"batch_size": 2,
"lora_layers": 6,
"fine_tuned_model_name": "customer-support-v1"
}
Remarques
-
Le peaufinage nécessite des ressources informatiques importantes. L'exécution de plus d'une tâche de peaufinage à la fois sur le serveur de modèle d'IA peut avoir un impact négatif sur les performances du système.
-
Pour surveiller l'état des modèles peaufinés sur le serveur de modèle d'IA (par exemple, pour savoir quand l'entraînement est terminé), ouvrez l'Admin Console de FileMaker Server. Vous pouvez également créer des modèles peaufinés directement en uploadant un fichier JSONL. Consultez la section Création de modèles peaufinés d'IA dans l'aide FileMaker Server.
Exemple 1- Peaufinage de base à l'aide des données de table
Peaufiner un modèle OpenAI avec les données d'une table. Le script configure un compte d'IA pour OpenAI et passe au modèle Support_QA. La table Support_QA contient, entre autres, les rubriques Question et Réponse. Le script effectue une recherche pour obtenir le jeu d'enregistrements trouvés souhaité, puis envoie des données à partir de ces enregistrements pour peaufiner un modèle GPT-4.1, en spécifiant la rubrique Réponse pour Rubrique de progression (les données de toutes les autres rubriques sont envoyées en tant que prompt utilisateur).
Configurer le compte IA [ Nom de compte: "mon-compte" ; Fournisseur de modèles: OpenAI ; Clé API : Global::Clé_API_OpenAI ]
Activer modèle [ "Support_QA" (Support_QA) ]
Exécuter la recherche [ Rétablir ]
Peaufiner le modèle [ Nom de compte: "mon-compte" ; Modèle de base: "gpt-4.1-2025-04-14" ; Données d'entraînement: Tableau ; "Support_QA" ; Rubrique de progression: Support_QA::Réponse ; Cible de la réponse: $$cibleRéponse ]
Lorsque OpenAI vous informe que l'entraînement est terminé et fournit le nom du modèle peaufiné, vous pouvez utiliser ce modèle dans des actions de script telles que Générer une réponse à partir du modèle :
Générer une réponse à partir du modèle [ Nom de compte: "mon-compte" ; Modèle: "ft:gpt-4o-mini-2024-07-18:my-org::LBNO71Qq" ; Prompt utilisateur: $question ; Mode agentique ; Réponse: $$réponse ]
Exemple 2- Peaufinage à l'aide d'un fichier JSONL
Peaufine un modèle sur le serveur de modèle d'IA en envoyant le fichier JSONL créé dans l'Exemple 2 pour l'action de script Sauvegarder les enregistrements au format JSONL. Le script configure un compte d'IA et définit la variable $fichierEntraînement sur le chemin du fichier JSONL dans le dossier Documents.
Le script définit ensuite la variable $paramètres sur un objet JSON contenant les paires clé-valeur à utiliser pour les paramètres de peaufinage, y compris la définition du nom racine à donner au modèle peaufiné.
Enfin, le script envoie le fichier JSONL spécifié par $fichierEntraînement au serveur de modèles d'IA, indiquant le modèle de base à peaufiner, les paramètres à utiliser et la variable $réponse. Pour disposer du nom complet du modèle peaufiné à des fins d'utilisation ultérieure, le script obtient le nom de $réponse et le stocke dans une rubrique globale.
Configurer le compte IA [ Nom du compte: "AI_Model_Server" ; Fournisseur de modèles: Autre ; Point de terminaison : "https://monserveur.exemple.com/llm/v1/" ; Clé API : Global::Clé_API_Peaufinage ; Vérifier les certificats SSL ]
Définir variable [ $fichierEntraînement ; Valeur: Obtenir ( CheminDocuments ) & "données_entraînement.jsonl" ]
Définir variable [ $paramètres ; Valeur:
Definir ( [
json = "{}" ;
json = JSONSetElement ( json; "max_steps"; 1500; JSONString ) ;
json = JSONSetElement ( json; "learning_rate"; 1e-4; JSONString ) ;
json = JSONSetElement ( json; "batch_size"; 2; JSONString ) ;
json = JSONSetElement ( json; "fine_tuned_model_name"; "product-expert-v2"; JSONString )
] ;
json
)
]
Peaufiner le modèle [ Nom du compte: "AI_Model_Server" ; Modèle de base: "google/codegemma-7b-it" ; Données d'entraînement: Fichier ; "$fichierEntraînement" ; Cible de la réponse: $cibleRéponse ; Paramètres de peaufinage: $paramètres ]
Définir rubrique [ Global::Modèle_Peaufinage ; JSONGetElement ( $cibleRéponse ; "result.fine_tuned_model" ) ]