Git Product home page Git Product logo

researchgpt's Introduction

ResearchGPT

This is a fork of the original ResearchGPT. The current version modifies several settings from the original:

  • Use GPT-3.5-turbo instead of GPT-3.
  • Add multi-language support.
  • Improved results for journal papers (See compare results below).
  • Slight modification of the frontend.

I use this repository to study OpenAI's API, Microsoft's Azure, GitHub Pages, and CI/CD. The partial original README is below.

This is a flask app provides an interface to enable a conversation with a research paper. You can enter a link to a pdf hosted online or upload your own pdf. The app will then extract the text from the pdf, create embeddings from the text and use them with the openai api to generate a response to a question you ask. It will also return a source for the part of the text it used to generate the response and the page number.

home

Example

This web app supports query in multiple languange. Here is an example of a query in both English and Chinese:

demo

This app also supports pdf files in the language other than English. Here is an example of a Chinese pdf file:

demo2

Installation

git clone https://github.com/MrPeterJin/researchgpt
cd researchgpt
pip install -r requirements.txt

Also, you need to have an OpenAI API key and set it as the environment variable 'OPENAI_API_KEY'.

Usage

Run locally

python app.py

And then open http://127.0.0.1:8080/ in your browser.

or:

flask run

And then open http://127.0.0.1:5000/ in your browser.

Microsoft Azure Deployment

Follow the instructions here. Once you have the azure cli set up with az login, you can deploy with streamed logs:

az webapp up --runtime PYTHON:3.9 --sku B1 --logs

Limitations

Due to the PDF to text conversion and embedding construction technique, the web app is limited to handle papers with headers (see screenshots below for examples) and can respond unexpectedly (For instance, return the header information). Comparing to the original version, this version has specifically targeted at this problem and making improvements. We are continuing working on improving the app to give better respond.

With Header Without Header
header noheader

The improved results can be seen as follows (Click for full-sized image):

With Header (This fork) With Header (Original)
header noheader

researchgpt's People

Contributors

mukulpatnaik avatar mrpeterjin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.