recherche
Maisondéveloppement back-endTutoriel PythonComprendre le format OpenAI JSONL : organiser les enregistrements

Understanding the OpenAI JSONL Format: Organising the Records

Au début du tri du courrier pour le service postal, les Six Triple Eight étaient confrontés à des difficultés avec les lettres retournées marquées comme invalides. Cela était souvent dû à des erreurs dues à leur manque d’expérience dans le traitement d’un volume de courrier aussi énorme. Au fil du temps, ils ont développé des systèmes d'indexation innovants pour faire correspondre les noms avec les régiments et les grades, améliorant ainsi considérablement l'efficacité et la précision.

De même, lorsque vous travaillez avec les grands modèles linguistiques (LLM) d'OpenAI, il est crucial de comprendre et de respecter le format d'entrée requis. Tout comme un courrier mal indexé entraîne le retour de lettres, des données mal formatées peuvent entraîner un réglage inefficace et des résultats sous-optimaux. OpenAI utilise le format JSONL (JSON Lines) comme cadre organisationnel pour un réglage fin, garantissant que les données sont structurées et prêtes à être traitées.

Pourquoi le format JSONL ?

Le format JSONL permet de stocker les données dans une structure ligne par ligne, où chaque ligne représente un seul enregistrement au format JSON. Cette structure est compacte, facile à lire et compatible avec l’API de réglage fin d’OpenAI. Un formatage approprié garantit :

  • Précision : le modèle traite les données comme prévu, évitant ainsi les erreurs.

  • Efficacité : le réglage fin devient transparent avec une structure cohérente.

  • Évolutivité : de grands ensembles de données peuvent être gérés efficacement sans configurations complexes.

Exemple de format JSONL pour un réglage précis

Voici comment les données sont généralement formatées en JSONL pour affiner les modèles OpenAI :

 openai_format = {
        "message":[
            {"role":"system","content":system},
            {"role":"user","content":""},
            {"role":"assistant","content":""}
        ]
    }

Chaque enregistrement comporte trois éléments clés :

  • Système : L'invite requise

  • utilisateur : les exemples de données.

  • assistant : Le label pour les données

Laissez convertir

import  json
df = pd.read_csv('/content/dataset/train.csv', on_bad_lines='skip')

final_df = df.head(150)
total_tokens = cal_num_tokens_from_df(final_df,'gpt-3.5-turbo')
print(f"total {total_tokens}")


system ="You are a intelligent assistant designed to classify news articles into three categories :business ,entertainment,sport,tech,politics"
with open('dataset/train.jsonl','w') as f:
  for _,row in final_df.iterrows():
    openai_format = {
        "message":[
            {"role":"system","content":system},
            {"role":"user","content":row['text']},
            {"role":"assistant","content":row['label']}
        ]
    }
    json.dump(openai_format,f)
    f.write('\n')

Exemple de réponse

{"message": [{"role": "system", "content": "You are a intelligent assistant designed to classify news articles into three categories :business ,entertainment,sport,tech,politics"}, {"role": "user", "content": "qantas considers offshore option australian airline qantas could transfer as"}, {"role": "assistant", "content": "business"}]}

Leçons du Six Triple Huit

Les premiers défis du Six Triple Eight dans le traitement du courrier soulignent l'importance de la préparation et de l'apprentissage. Leurs innovations en matière d'indexation garantissaient que les enregistrements étaient correctement mis en correspondance et livrés, tout comme le respect du format JSONL garantit qu'un réglage fin donne des résultats efficaces et précis.

Lors de la mise au point des LLM, la compréhension et la structuration des données dans le bon format sont aussi essentielles que le parcours du Six Triple Eight pour maîtriser l'art du tri du courrier. En apprenant à la fois de l’histoire et de la technologie, nous pouvons obtenir des résultats remarquables en résolvant des défis logistiques complexes.

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!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Python: une plongée profonde dans la compilation et l'interprétationPython: une plongée profonde dans la compilation et l'interprétationMay 12, 2025 am 12:14 AM

Pythonusahybridmodelofcompilation et interprétation: 1) thepythoninterpreterCompileSourCodeIntOplatform-indépendantBytecode.2) thepythonvirtualmachine (pvm) there examenesthisbytecode, équilibrage de l'usage de la performance.

Python est-il une langue interprétée ou compilée, et pourquoi est-ce important?Python est-il une langue interprétée ou compilée, et pourquoi est-ce important?May 12, 2025 am 12:09 AM

Pythonisbothinterpretedand compiled.1) il est composédToByteCodeForportabilityAcrosplatforms.2) theytecodeisthenter interprété, permettant à OrdayNamictypingAndRapidDevelopment, bien que MaybeSlowerSlowerSwower, aisance.

Pour Loop vs While Loop in Python: les principales différences expliquéesPour Loop vs While Loop in Python: les principales différences expliquéesMay 12, 2025 am 12:08 AM

Forloopsareideal quand vous savez que l'immatriculation des adressages a une avance, tandis que ce qui est de savoir si

Pour et bien que les boucles: un guide pratiquePour et bien que les boucles: un guide pratiqueMay 12, 2025 am 12:07 AM

Forloopsaseesesed whenthenUmberoFitations dissownininadvance, tandis que celle-ci a été utilisé sur les éléments de la dispense

Python: Est-ce vraiment interprété? Démystifier les mythesPython: Est-ce vraiment interprété? Démystifier les mythesMay 12, 2025 am 12:05 AM

Pythonisnotpurelyinterpreted; itusahybridapproachofbytecocecompilation andruntimeinterpretation.1) pythoncompilessourcecodeintoBytecode, whichStHenexEcutedythepythonVirtualMachine (pvm) .2)

Pouvez-vous concaténer les listes à l'aide d'une boucle dans Python?Pouvez-vous concaténer les listes à l'aide d'une boucle dans Python?May 10, 2025 am 12:14 AM

Oui, YouCanConCatéNateListsusingaloopInpyThon.1) utilise la présence de la liste de listes de listes de la cime

Le concatenate répertorie Python: Utilisation, Extend (), et plusLe concatenate répertorie Python: Utilisation, Extend (), et plusMay 10, 2025 am 12:12 AM

THESOSTOFFICITSMETHODSFORCECATENATINATIONSLISTSInPYTHONARE: 1) theextend () MethodForin-PlaceModification, 2) itertools.chain ()

Python Loops: Exemples et meilleures pratiquesPython Loops: Exemples et meilleures pratiquesMay 10, 2025 am 12:05 AM

Pythonloopsincludeforand whilelolops, avec destiné lesquentiques et de ce qui est de la condition de repette.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

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

<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
Nordhold: Système de fusion, expliqué
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Adaptateur de serveur SAP NetWeaver pour Eclipse

Adaptateur de serveur SAP NetWeaver pour Eclipse

Intégrez Eclipse au serveur d'applications SAP NetWeaver.

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

Version crackée d'EditPlus en chinois

Version crackée d'EditPlus en chinois

Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

MinGW - GNU minimaliste pour Windows

MinGW - GNU minimaliste pour Windows

Ce projet est en cours de migration vers osdn.net/projects/mingw, vous pouvez continuer à nous suivre là-bas. MinGW : un port Windows natif de GNU Compiler Collection (GCC), des bibliothèques d'importation et des fichiers d'en-tête librement distribuables pour la création d'applications Windows natives ; inclut des extensions du runtime MSVC pour prendre en charge la fonctionnalité C99. Tous les logiciels MinGW peuvent fonctionner sur les plates-formes Windows 64 bits.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Puissant environnement de développement intégré PHP