Plateforme Openai vs Google AI Studio pour Finetuning LLM
Les modèles de grande langue (LLMS) affinés sont une technique essentielle pour personnaliser les LLM pour des besoins spécifiques, tels que l'adoption d'un style d'écriture particulier ou se concentrant sur un domaine spécifique. OpenAI et Google AI Studio sont deux principales plateformes offrant des outils à cet effet, chacune avec des fonctionnalités et des flux de travail distincts. Dans cet article, nous examinerons comment ces plateformes fonctionnent dans des tâches de réglage fin, en utilisant mes articles précédemment écrits comme données de formation. Nous évaluerons la capacité d'Openai Platform et Google AI Studio à affiner les LLM pour générer du contenu qui reflète mon style d'écriture.
Table des matières
- Plate-forme Openai
- Préparation des données
- Implémentation de code
- Affineur dans la plate-forme Openai
- Google AI Studio
- Téléchargement de données
- Réglage fin en studio AI
- Questions fréquemment posées
Plate-forme Openai
La plate-forme OpenAI offre une solution complète pour les modèles de réglage fin, permettant aux utilisateurs de les personnaliser et de les optimiser pour des tâches spécifiques. Cette plate-forme prend en charge une variété de modèles, notamment GPT-4O et GPT-4O-MINI. OpenAI fournit également des conseils pour la préparation des données, la formation des modèles et l'évaluation. En tirant parti de la plate-forme OpenAI, les utilisateurs peuvent améliorer les performances des modèles dans des domaines spécifiques. Cela les rend plus efficaces et plus efficaces pour les applications ciblées.
Le coût du réglage fin est le suivant:
Modèle | Prix |
---|---|
GPT-4O-2024-08-06 | Tokens d'entrée de 3,750 $ / 1 m Jetons de sortie de 15 000 $ / 1 m Jetons de formation de 25 000 $ / 1M |
GPT-4O-MINI-2024-07-18 | Tokens d'entrée de 0,300 $ / 1 M Tokens de sortie de 1,200 $ / 1 M 3 000 $ / 1 million de jetons de formation |
Le coût de l'inférence pour les modèles affinés est le double de celui des modèles préexistants.
Préparation des données
Les LLM ont besoin que les données soient dans un format spécifique pour le réglage fin. Voici un exemple de format pour les modèles GPT-4O et GPT-4O-MINI.
{"Messages": [{"Role": "System", "Content": "Marv est un chatbot factuel qui est également sarcastique."}, {"Role": "User", "Content": "Quelle est la capitale de la France?"}, {"Role": "Assistant", "Content": "Paris, comme si tout le monde ne le savait pas déjà.
Lorsque nous affinons le modèle, il apprendra à produire des réponses similaires au contenu de rôle assistant pour un contenu de rôle utilisateur donné.
Étant donné que nous voulons que le modèle produise du contenu similaire au nôtre, nous devons utiliser notre contenu à la place du contenu assistant.
Considérons ce contenu de l'un de mes articles:
«Ainsi, plutôt que de traverser tous les nœuds à l'aide d'un graphique utilisant HNSW, nous localisons l'espace de recherche à l'aide de l'arborescence dynamique du point de vue dans cet algorithme.
Cette combinaison d'utilisation d'arbre et de graphique en fait l'un des algorithmes les plus rapides et les plus précis. »
Puisque nous voulons que le LLM génère du contenu comme celui ci-dessus, il devrait être ajouté en tant que contenu assistant comme ceci:
{"Role": "Assistant", "Content": "Ainsi, plutôt que de traverser tous les nœuds à l'aide d'un graphique utilisant HNSW, nous localisons l'espace de recherche à l'aide de l'arborescence du point de vue dynamique dans cet algorithme.
Cette combinaison d'utilisation d'arbre et de graphique en fait l'un des algorithmes les plus rapides et les plus précis. "}
Pour que le LLM génère du contenu comme celui-ci, il a besoin de contenu utilisateur (c'est-à-dire invite). Comme nous ne l'avons pas, nous pouvons générer le contenu utilisateur à l'aide d'un LLM. Le contenu utilisateur peut être le suivant:
{"Rôle": "utilisateur", "Contenu": "Pouvez-vous expliquer comment la combinaison des arbres de points de vue dynamique et des graphiques hiérarchiques de petit monde navigable (HNSW) améliore l'efficacité et la précision de la recherche dans les algorithmes?"}
Nous incluons également une invite système appropriée, l'exemple de notre réglage fin sera le suivant
{"messages": [{"rôle": "système", "contenu": "Vous êtes un assistant qui écrit dans un style clair, informatif et engageant."}, {"Role": "User", "Content": "Pouvez-vous expliquer comment la combinaison de la recherche dynamique des arbres de point "Assistant", "Content": "Donc, plutôt que de traverser tous les nœuds à l'aide d'un graphique utilisant HNSW, nous localisons l'espace de recherche en utilisant l'arbre de point de vue dynamique dans cet algorithme. \ n Cette combinaison d'utilisation de l'arborescence et du graphique en fait l'un des algorithmes les plus rapides et les plus précis."}]}}
Si nous utilisons une petite taille de contenu, il est possible que le modèle manque le contexte. Nous devons garder cela à l'esprit pendant la préparation des données. Je n'utilise que 38 exemples ici, mais 100 à 500 seraient bien meilleurs. J'ai créé un fichier «mon contenu.csv» où chaque ligne a le contenu écrit par moi sous le nom de colonne «Contenu».
Voyons maintenant le code pour créer les données requises au bon format.
Implémentation de code
La version Openai 1.57.0 est utilisée ici.
1. Importez les bibliothèques.
à partir de Dotenv Import Load_Dotenv load_dotenv ('/. env') Importer des pandas en tant que PD importer tiktoken à partir d'Openai Import Openai
# Initialiser le client OpenAI client = openai ()
2. Vérifiez la taille du jeton.
df = pd.read_csv ('mon contenu.csv') Encoding = tikToken.get_encoding ('o200k_base') total_token_count = 0 pour i dans df ['contenu']: token_count = len (coding.encode (i)) total_token_count = token_count
Le comptage des jetons nous aidera à estimer le coût du réglage fin.
3. Générez du contenu utilisateur pour le LLM .
Def Generate_User_Content (Assistant_Response): # System_Message = {"Rôle": "Système", "Contenu": "Vous êtes un assistant utile. Votre tâche consiste à générer une requête utilisateur en fonction de la réponse de l'assistant."} System_Message = {"Role": "System", "Content": "" "Compte tenu de la réponse de l'assistant, créez une requête utilisateur ou déclaration qui mènerait logiquement à cette réponse. Le contenu utilisateur peut prendre la forme d'une question ou d'une demande de clarification qui invite le Assistant pour donner la réponse fournie "" "} Assistant_Message = {"Role": "Assistant", "Content": Assistant_Response} messages = [System_Message, Assistant_Message] réponse = client.chat.completions.create ( messages = messages, modèle = "gpt-4o-mini", température = 1 ) user_content = réponse.choices [0] .Message.Content retourner user_content
Comme nous pouvons le voir, j'ai fourni le contenu que j'ai écrit en tant que contenu assistant et j'ai demandé au LLM de générer du contenu utilisateur.
user_contents = [] pour i dans df ['contenu']: user_content = generate_user_content (i) user_contents.append (user_content) df ['user_content'] = user_contents
Nous pouvons ajouter le contenu utilisateur généré au DataFrame en tant que colonne. Les données ressembleront à ceci:
Ici, le contenu est écrit par moi et user_content est généré par le LLM pour utiliser comme contenu de rôle utilisateur (invite) lors du réglage fin.
Nous pouvons enregistrer le fichier maintenant.
df.to_csv ('user_content.csv', index = false)
4. Créer un fichier JSONL.
Nous pouvons maintenant utiliser le fichier CSV ci-dessus pour créer un fichier JSONL selon les besoins pour le réglage fin.
messages = pd.read_csv ('user_content.csv') messages.rename (colonnes = {'contenu': 'assistant_content'}, inplace = true) avec open ('messages_dataset.jsonl', 'w', encoding = 'utf-8') comme jsonl_file: pour _, ligne dans messages.ITERROWS (): user_content = row ['user_content'] Assistant_Content = Row ['Assistant_Content'] jsonl_entry = { "Messages": [ {"rôle": "système", "contenu": "Vous êtes un assistant qui écrit dans un style clair, informatif et engageant."}, {"rôle": "utilisateur", "contenu": user_content}, {"Role": "Assistant", "Content": Assistant_Content}] } jsonl_file.write (json.dumps (jsonl_entry) '\ n')
Comme indiqué ci-dessus, nous pouvons parcourir le DataFrame pour créer le fichier JSONL.
Affineur dans la plate-forme Openai
Maintenant, nous pouvons utiliser 'messages_dataset.jsonl' pour affiner Openai LLMS.
Allez sur le site Web et connectez-vous s'il n'est pas signé déjà.
S'il n'y a pas de travaux de réglage fin, l'interface sera la suivante:
Nous pouvons cliquer sur «en savoir plus» pour apprendre tous les détails nécessaires pour le réglage fin, y compris les hyper-paramètres réglés.
Apprenons maintenant à affiner un modèle sur la plate-forme Openai.
- Cliquez sur «Créer». Une petite fenêtre s'ouvrira.
- Sélectionnez la méthode comme «supervisé»
- Sélectionnez le modèle de base comme «GPT-4O» ou «GPT-4O-MINI». J'ai eu une erreur en utilisant GPT-4O-MINI, j'ai donc utilisé GPT-4O.
- Téléchargez le fichier JSONL.
- Ajouter le «suffixe» qui est pertinent pour le travail de réglage fin
- Utilisez n'importe quel nombre comme «graine» pour la reproductibilité.
- Choisissez les hyper-paramètres et laissez-les utiliser les valeurs par défaut. Reportez-vous à la documentation mentionnée ci-dessus pour les directives sur les choix.
Maintenant, nous pouvons cliquer sur «Créer» pour démarrer le réglage fin.
Une fois le réglage fin terminé, il sera affiché comme suit:
Nous pouvons comparer le modèle affiné aux réponses du modèle préexistant dans le terrain de jeu en cliquant sur le bouton dans le coin à fond droit.
Voici un exemple de réponses comparant les deux modèles:
Comme nous pouvons le voir, il existe une différence significative entre les réponses des deux modèles.
Si nous utilisons plus d'exemples, les résultats pourraient s'améliorer.
Apprenons maintenant sur Google AI Studio.
Google AI Studio
Google AI Studio est un outil Web pour créer des applications à l'aide de Gemini LLMS. Il permet également aux utilisateurs de régler les LLM en utilisant leurs propres données. Cette personnalisation améliore les performances du modèle pour des tâches ou des industries spécifiques, ce qui le rend plus pertinent et efficace. La fonction de réglage fin pour les modèles Gemini est récemment lancée et actuellement disponible pour Gemini 1.5 Flash uniquement. Le réglage est gratuit en janvier 2025 et le coût de l'inférence est le même que les modèles préexistants.
En savoir plus: Google's AI Studio: Votre passerelle vers l'univers créatif de Gemini!
Téléchargement de données
Pour les modèles Gemini, le format de données doit être le suivant:
Training_data = [<br><br> {"text_input": "1", "sortie": "2"},<br><br> {"text_input": "3", "sortie": "4"},]
Google AI Studio fournit une GUI (interface utilisateur graphique) pour télécharger les données à partir d'un fichier CSV. Pour faire ceci:
- Ouvrir https://aistudio.google.com/prompts/new_data
- Cliquez sur «Actions», puis «Importer des exemples».
- Téléchargez ensuite le fichier CSV. L'écran ressemblera à ceci:
- Attribuez un user_content en tant que colonne d'entrée et contenu en tant que colonne de sortie.
- Ensuite, importez les exemples. Nous pouvons supprimer toutes les colonnes inutiles, puis enregistrer les données à l'aide du bouton «Enregistrer» dans le coin supérieur droit.
Réglage fin en studio AI
Pour affiner un modèle, allez sur https://aistudio.google.com/tune.
L'écran ressemblera à ceci:
Maintenant, suivez les étapes ci-dessous:
- Sélectionnez les données importées dans le menu déroulant.
- Donnez un nom au modèle réglé.
- Pour en savoir plus sur les paramètres avancés, reportez-vous à https://ai.google.dev/gemini-api/docs/model-tuning.
- Une fois terminé, cliquez sur «Tune».
Vous pouvez trouver les modèles réglés dans la «bibliothèque» comme suit:
Nous pouvons également utiliser le modèle dans le chat comme indiqué dans l'image ci-dessus.
Conclusion
Les modèles de grande langue ajustés à l'aide de la plate-forme Openai et Google AI Studio permettent aux utilisateurs d'adapter les modèles à des besoins spécifiques. Cela pourrait être d'adopter la LLM d'adopter des styles d'écriture uniques ou d'améliorer ses performances spécifiques au domaine. Les deux plates-formes fournissent des flux de travail intuitifs pour la préparation et la formation des données, soutenant des formats structurés pour optimiser le comportement du modèle. Avec des outils accessibles et une documentation claire, ils permettent aux utilisateurs de déverrouiller tout le potentiel des LLM en les alignant étroitement avec les tâches et objectifs souhaités.
Questions fréquemment posées
Q1. Qu'est-ce que le réglage fin dans le contexte des modèles de grande langue (LLM)?A. Le réglage fin est le processus de formation d'un modèle de langue pré-formé sur les données personnalisées pour adapter son comportement à des tâches, des styles ou des domaines spécifiques. Il s'agit de fournir des exemples de paires d'entrée-sortie pour guider les réponses du modèle en alignement avec les besoins des utilisateurs.
Q2. Quel format de données est requis pour le réglage fin dans la plate-forme OpenAI et Google AI Studio?A. La plate-forme OpenAI nécessite des données dans un format JSONL structuré, généralement avec des rôles tels que «système», «utilisateur» et «assistant». Google AI Studio utilise un format plus simple avec les champs `Text_input` et« Output », où l'entrée et la sortie souhaitée sont clairement définies.
Q3. Combien de données sont nécessaires pour un réglage fin efficace?A. Alors que de petits ensembles de données avec 30 à 50 exemples peuvent montrer certains résultats, des ensembles de données plus importants avec 100 à 500 exemples donnent généralement de meilleures performances en fournissant au modèle des scénarios divers et riches en contexte.
Q4. Comment les coûts du réglage fin comparent-ils entre Openai Platform et Google AI Studio?A. OpenAAI charge pour un réglage fin en fonction de l'utilisation des jetons pendant la formation, avec des coûts plus élevés pour les modèles plus importants. Google AI Studio propose actuellement un réglage fin gratuit pour les modèles Flash Gemini 1.5, ce qui en fait un choix rentable pour l'expérimentation.
Q5. Quels sont les principaux avantages de l'affinement du LLM?A. Fonction d'adaptation permet aux utilisateurs de personnaliser un modèle pour s'aligner sur des exigences spécifiques, telles que la génération de contenu dans un ton ou un style particulier, en améliorant la précision des tâches spécifiques au domaine et en améliorant l'expérience utilisateur globale en rendant le modèle plus pertinent pour le cas d'utilisation prévu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds











Hé là, codant ninja! Quelles tâches liées au codage avez-vous prévues pour la journée? Avant de plonger plus loin dans ce blog, je veux que vous réfléchissiez à tous vos malheurs liés au codage - les énumérez. Fait? - Let & # 8217

Introduction Openai a publié son nouveau modèle basé sur l'architecture «aux fraises» très attendue. Ce modèle innovant, connu sous le nom d'O1, améliore les capacités de raisonnement, lui permettant de réfléchir à des problèmes Mor

Introduction Imaginez vous promener dans une galerie d'art, entourée de peintures et de sculptures vives. Maintenant, que se passe-t-il si vous pouviez poser une question à chaque pièce et obtenir une réponse significative? Vous pourriez demander: «Quelle histoire racontez-vous?

Instruction ALTER TABLE de SQL: Ajout de colonnes dynamiquement à votre base de données Dans la gestion des données, l'adaptabilité de SQL est cruciale. Besoin d'ajuster votre structure de base de données à la volée? L'énoncé de la table alter est votre solution. Ce guide détaille l'ajout de Colu

Introduction Mistral a publié son tout premier modèle multimodal, à savoir le pixtral-12b-2409. Ce modèle est construit sur les 12 milliards de paramètres de Mistral, Nemo 12b. Qu'est-ce qui distingue ce modèle? Il peut maintenant prendre les deux images et Tex

Benchmarks en difficulté: une étude de cas de lama Début avril 2025, Meta a dévoilé sa suite de modèles Llama 4, avec des métriques de performance impressionnantes qui les ont placés favorablement contre des concurrents comme GPT-4O et Claude 3.5 Sonnet. Au centre du launc

Tout en travaillant sur une IA agentique, les développeurs se retrouvent souvent à naviguer dans les compromis entre la vitesse, la flexibilité et l'efficacité des ressources. J'ai exploré le cadre de l'IA agentique et je suis tombé sur Agno (plus tôt c'était Phi-

Un jeu vidéo peut-il faciliter l'anxiété, se concentrer ou soutenir un enfant atteint de TDAH? Au fur et à mesure que les défis de la santé augmentent à l'échelle mondiale - en particulier chez les jeunes - les innovateurs se tournent vers un outil improbable: les jeux vidéo. Maintenant l'un des plus grands divertissements du monde Indus
