L’avènement du traitement du langage naturel et des grands modèles linguistiques (LLM) a révolutionné l’extraction de données à partir d’articles scientifiques non structurés. Cependant, garantir la fiabilité des données reste un défi de taille. PropertyExtractor est un outil open source qui exploite des LLM conversationnels avancés tels que Google Gemini Pro et OpenAI GPT-4 , combine un apprentissage en contexte sans tir et en quelques tirs et utilise des invites conçues pour le raffinement dynamique des hiérarchies d'informations structurées afin de permettre une autonomie autonome. , identification, extraction et vérification efficaces, évolutives et précises des données sur les propriétés matérielles pour générer une base de données sur les propriétés matérielles.
PropertyExtractor propose des options d'installation simples adaptées à diverses préférences d'utilisateur, comme expliqué ci-dessous. Nous notons que toutes les bibliothèques et dépendances sont automatiquement déterminées et installées aux côtés de l'exécutable PropertyExtractor "propertyextract" dans toutes les options d'installation.
Utilisation de pip : Notre méthode recommandée pour installer le package PropertyExtractor consiste à utiliser pip.
pip install -U propertyextract
À partir du code source :
git clone [[email protected]:gmp007/PropertyExtractor.git]
pip install .
Installation via setup.py :
setup.py
: python setup.py install [--prefix=/path/to/install/]
--prefix
est utile pour les installations dans des environnements tels que les systèmes de calcul haute performance (HPC) partagés, où les privilèges administratifs peuvent être restreints.pip
ne sont pas applicables. Veuillez ne pas exposer vos clés API. Avant d'exécuter PropertyExtractor , configurez les clés API pour Google Gemini Pro et OpenAI GPT-4 en tant que variables d'environnement.
export GPT4_API_KEY= ' your_gpt4_api_key_here '
export GEMINI_PRO_API_KEY= ' your_gemini_pro_api_key_here '
set GPT4_API_KEY= ' your_gpt4_api_key_here '
set GEMINI_PRO_API_KEY= ' your_gemini_pro_api_key_here '
PropertyExtractor est facile à exécuter. Les étapes clés pour initialiser PropertyExtractor sont les suivantes :
Génération de données non structurées * : Utilisez l'API pour obtenir la propriété matérielle dont vous souhaitez générer la base de données auprès des éditeurs de votre choix. Nous avons écrit des fonctions API pour l'API ScienceDirect d'Elsevier, l'API REST CrossRef et l'API PubMed. Nous pouvons en partager certains si nécessaire.
Créer un répertoire de calcul :
propextract -0
pour générer le modèle d'entrée principal de PropertyExtractor , qui est extract.in
. Modifiez en suivant les instructions détaillées incluses.additionalprompt.txt' for augmenting additional custom prompts and
"keywords.json" pour les mots-clés supplémentaires personnalisés afin de prendre en charge le mot-clé principal sont également générés. Modifiez-le en fonction de la propriété matérielle en cours d'extraction. Le modèle d'entrée principal « extract.in » ressemble à ci-dessous : ###############################################################################
### The input file to control the calculation details of PropertyExtract ###
###############################################################################
# Type of LLM model: gemini/chatgpt
model_type = gemini
# LLM model name: gemini-pro/gpt-4
model_name = gemini-pro
# Property to extract from texts
property = thickness
# Harmonized unit for the property to be extracted
property_unit = Angstrom
# temperature to max_output_tokens are LLM model parameters
temperature = 0.0
top_p = 0.95
max_output_tokens = 80
# You can supply additional keywords to be used in conjunction with the property: modify the file keywords.json
use_keywords = True
# You can add additional custom prompts: modify the file additionalprompt.txt
additional_prompts = additionalprompt.txt
# Name of input file to be processed: csv/excel format
inputfile_name = 2Dthickness_Elsevier.csv
# Column name in the input file to be processed
column_name = Text
# Name of output file
outputfile_name = ppt_test
Initialisez le travail :
propextract
pour commencer le processus de calcul.Comprendre les options de PropertyExtractor :
extract.in
comprend un texte descriptif pour chaque indicateur, ce qui le rend convivial. Si vous avez utilisé le package PropertyExtractor dans votre recherche, veuillez citer :
@article{Ekuma2024,
title = {Dynamic In-context Learning with Conversational Models for Data Extraction and Materials Property Prediction},
journal = {XXX},
volume = {xx},
pages = {xx},
year = {xx},
doi = {xx},
url = {xx},
author = {Chinedu Ekuma}
}
@misc{PropertyExtractor,
author = {Chinedu Ekuma},
title = {PropertyExtractor -- LLM-based model to extract material property from unstructured dataset},
year = {2024},
howpublished = { url {https://github.com/gmp007/PropertyExtractor}},
note = {Open-source tool leveraging LLMs like Google Gemini Pro and OpenAI GPT-4 for material property extraction},
}
Si vous avez des questions ou si vous trouvez un bug, veuillez nous contacter.
N'hésitez pas à nous contacter par email :
Vos commentaires et questions nous sont inestimables et nous sommes impatients de vous entendre.
Ce projet est sous licence GNU GPL version 3 - voir le fichier LICENSE pour plus de détails.