paperai est une application de recherche sémantique et de flux de travail pour les articles médicaux/scientifiques.
Les applications vont des index de recherche sémantique qui trouvent des correspondances pour les requêtes médicales/scientifiques aux applications de reporting à part entière basées sur l'apprentissage automatique.
paperai et/ou NeuML a été reconnu dans les articles suivants :
Le moyen le plus simple d'installer est via pip et PyPI
pip install paperai
Python 3.8+ est pris en charge. L'utilisation d'un environnement virtuel Python est recommandée.
paperai peut également être installé directement depuis GitHub pour accéder aux dernières fonctionnalités inédites.
pip install git+https://github.com/neuml/paperai
Consultez ce lien pour vous aider à résoudre les problèmes d'installation spécifiques à l'environnement.
Exécutez les étapes ci-dessous pour créer une image Docker avec paperai et toutes les dépendances.
wget https://raw.githubusercontent.com/neuml/paperai/master/docker/Dockerfile
docker build -t paperai .
docker run --name paperai --rm -it paperai
paperetl peut être ajouté pour avoir une seule image pour indexer et interroger le contenu. Suivez les instructions pour créer une image docker paperetl, puis exécutez ce qui suit.
docker build -t paperai --build-arg BASE_IMAGE=paperetl --build-arg START=/scripts/start.sh .
docker run --name paperai --rm -it paperai
Les blocs-notes et applications suivants démontrent les capacités fournies par paperai.
Carnet de notes | Description | |
---|---|---|
Présentation de paperai | Aperçu des fonctionnalités fournies par paperai |
Application | Description |
---|---|
Recherche | Recherchez dans un index paperai. Définissez les paramètres de requête, exécutez des recherches et affichez les résultats. |
paperai indexe les bases de données précédemment construites avec paperetl. Ce qui suit montre comment créer un nouvel index paperai.
(Facultatif) Créez un fichier index.yml
paperai utilise la configuration d'intégration txtai par défaut lorsqu'elle n'est pas spécifiée. Alternativement, un fichier index.yml peut être spécifié qui prend toutes les mêmes options qu'une instance d'intégration txtai. Consultez la documentation txtai pour en savoir plus sur les options possibles. Un exemple simple est présenté ci-dessous.
path: sentence-transformers/all-MiniLM-L6-v2
content: True
Construire l'index des intégrations
python -m paperai.index <path to input data> <optional index configuration>
Le processus paperai.index nécessite un chemin de données d'entrée et prend éventuellement la configuration de l'index. Cette configuration peut être soit un chemin de modèle vectoriel, soit un fichier de configuration index.yml.
Le moyen le plus rapide d'exécuter des requêtes est de démarrer un shell paperai
paperai <path to model directory>
Une invite apparaîtra. Les requêtes peuvent être saisies directement dans la console.
Les rapports prennent en charge la génération de sorties dans plusieurs formats. Un exemple d'appel de rapport :
python -m paperai.report report.yml 50 md <path to model directory>
Les formats de rapport suivants sont pris en charge :
Dans l'exemple ci-dessus, un fichier nommé report.md sera créé. Des exemples de fichiers de configuration de rapport peuvent être trouvés ici.
paperai est une combinaison d'un index d'intégration txtai et d'une base de données SQLite avec les articles. Chaque article est analysé en phrases et stocké dans SQLite avec les métadonnées de l'article. Les intégrations sont construites sur l’ensemble du corpus.
Plusieurs points d'entrée existent pour interagir avec le modèle.