Skip to main content

Python library to help with scientific literature research

Project description

Naimai logo

NaimAI is a Python package that (1) searches effeciently in papers and (2) generates an automatic review. It does do by structures each scientific paper using their abstract into 3 categories : objectives methods and results. Hence, when searching, the results will be showed by category. The results can then be reviewed and a review text will be automatically generated along with the references.
All the features are deployed on the NaimAI's website, where millions of paper are processed.
A Medium article goes more in depth with naimai's features of the web app.

Search in your own papers

You can either give a directory of the folder with articles in PDF format or a csv file with abstracts and other meta data as showed here.
The processing, the results and searching for relevent papers are explained in this colab.

Search in millions of papers

To search in the millions of papers already processed, you can use the naimai website. I might open source this part too if needed.

Structure your abstract

If you already have an abstract and want to test the segmentor (naimai's algorithm that structures abstract into Background, Objectives, Methods and Results), this colab walks you through the necessary steps.

Example of structured abstract :

classified abstract

Features to improve

Review Generation 

The review generation needs more enhancement. The actual method consists of only rephrasing the objective phrase of each paper. I've some idea to go further and improve the review generation part. Let me know if you're interested and we'll do it together!

 Besides the generated text, the references generation still can be brushed up to meet with many references style, and also to export it to other formats (BibTeX..).

Semantic search 

The search is mainly based on a v0 semantic algorithm (using TfIdf model mainly). In a previous version, I've finetuned bert model for each field and the results were pretty interesting. The problem is that, with 10 fields on the web app, I ended up having 10 fine-tuned model. So the usage was pretty slow and the models were heavy. If you have any idea and/or want to contribute in this part, I'll be happy to talk to you! 

Data papers 

I've used about 10 millions open access abstracts I found here and there on the internet. If you've any source that could be useful, or even better, if we can process much more papers together to get more informations for the users, that'd be cool!

References

  • For abbreviations purposes, I used this code.
  • For PDF processing, I used Grobid.

CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

naimai-1.0.0.6.tar.gz (99.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

naimai-1.0.0.6-py3-none-any.whl (255.5 kB view details)

Uploaded Python 3

File details

Details for the file naimai-1.0.0.6.tar.gz.

File metadata

  • Download URL: naimai-1.0.0.6.tar.gz
  • Upload date:
  • Size: 99.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for naimai-1.0.0.6.tar.gz
Algorithm Hash digest
SHA256 78c4d556adf7f66586adf5158a17ba350398659d030d31df5002ecd11b375f31
MD5 00917fe58ddd25f2b09f9379e9303e01
BLAKE2b-256 e12324ff79d0276b37ef90ca928ecd095b20ca4052b8b70faae1077afb12a1de

See more details on using hashes here.

File details

Details for the file naimai-1.0.0.6-py3-none-any.whl.

File metadata

  • Download URL: naimai-1.0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 255.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for naimai-1.0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a3af0b5a37df0424d05f0f22bfae342aa4ba74d462e545193cd38d8950193307
MD5 fd6822ee61b5941f5f0ca02a1337a2f4
BLAKE2b-256 4528e5de78f394966940bee5c49362e1c0c03751c09db8c4ff3921ff2d959927

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page