/zoterollm

Primary LanguagePythonMIT LicenseMIT

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

project_title

project_description
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact

About The Project

Zotero is a popular tool among researchers and students for organizing documents, PDFs, and links. However, managing a large collection can be daunting, making it hard to find specific information. Our project introduces an AI assistant designed to tackle this issue by scanning your Zotero library to answer queries and direct you to pertinent resources, streamlining research and reviving forgotten topics efficiently.

(back to top)

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Prerequisites

This is an example of how to list things you need to use the software and how to install them.

  • virtualenv
    virtualenv venv -p python3 
    source venv/bin/activate

Installation

  1. Get a free Zotero API Key at https://www.zotero.org/settings/keys/new
  2. Clone the repo
    git clone https://github.com/vankhoa21991/zoterollm.git 
  3. Install packages
    cd zoterollm
    pip install -r requirements.txt
    pip install -e .
  4. Enter your API in .env
    HF_AUTH_TOKEN = 'ENTER YOUR HUGGINGFACE API TOKEN';
    ZOTERO_USER_ID = 'ENTER YOUR ZOTERO USER ID';
    ZOTERO_KEY = 'ENTER YOUR ZOTERO KEY'
  5. Clone the Huggingface model
    git clone https://huggingface.co/meta-llama/Llama-2-7b-chat-hf

(back to top)

Usage

Create index of your local library, and save it to a csv file

python -m zoterollm.pyzotero --zoteropath /path/to/your/zotero/library

Create vector database of your local library

python -m zoterollm.create_vector_store --csvfile path/to/your/csvfile

Run the web app

 python -m zoterollm.app

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Van Khoa - @twitter - vankhoa21991@gmail.com

Project Link: https://github.com/vankhoa21991/zoterollm

(back to top)

(back to top)