GithubHelp home page GithubHelp logo

savyez / neogpt Goto Github PK

View Code? Open in Web Editor NEW

This project forked from neokd/neogpt

0.0 0.0 0.0 130.53 MB

NeoGPT is an open-source, locally-run Language Model (LLM) ๐Ÿ“š which allows you to chat with documents, YouTube videos,etc.

License: MIT License

Python 97.58% Dockerfile 1.03% Shell 1.39%

neogpt's Introduction

NeoGPT ๐Ÿš€

GitHub license GitHub issues GitHub stars GitHub forks Google Collab

Documentation | Discord

Currently We are in the development phase and are in progress of removing langchain as a dependency from the existing codebase. We are also working on adding more features to the CLI . Check out the development branch for the latest updates.


Intro Image

pip install neogpt

Not working? Read our setup guide here

$ neogpt

Introduction

NeoGPT is an AI assistant that transforms your local workspace into a powerhouse of productivity from your CLI. With features like code interpretation, multi-RAG support, vision models, and LLM integration, NeoGPT redefines how you work and create. Join the revolution and experience a new era of efficiency with NeoGPT.

NeoGPT is continuously evolving, and your feedback shapes its future. Join our Discord community to stay up to date with the latest developments.

Table of Contents

Getting Started

  1. Installation: Clone this repository and install the necessary dependencies.

      git clone https://github.com/neokd/NeoGPT.git
      cd NeoGPT
      pip install -r requirements.txt
    
  2. Building Database Currently NeoGPT supports local files and Youtube videos. To build the database add your local files to the documents directory and URL in the builder.url file. Then run the builder script.

       python main.py --build

    This will create a database file in the neogpt/db folder. You can also specify the database to use by using --db flag. Supported databases are:

    • Chroma (default)
    • FAISS

    Currently the database is built using 2 papers as reference:

  3. Run NeoGPT: Run the CLI to start using NeoGPT. Requires Python v3.10. You can use the --help flag to view the available commands and options.

    python main.py

    You can also use --ui flag to run the Streamlit UI.

    python main.py --ui
  4. Project Documentation: To view the project documentation, run the following command in your terminal or command prompt (Development โš ๏ธ)

    cd docs
    npm i mintlify
    mintlify dev

Features

  • Code Interpreter: Execute code seamlessly in your local environment with our Code Interpreter. Enjoy the convenience of real-time code execution, all within your personal workspace.

  • Multi RAG Support: NeoGPT supports multiple RAG techniques, enabling you to choose the most suitable model for your needs. It includes local RAG, ensemble RAG, web RAG, and more. ๐Ÿง ๐Ÿ“š

  • Vision: Explore a new dimension as NeoGPT supports vision models like bakllava and llava, enabling you to chat with images using Ollama. ๐Ÿ–ผ๏ธ๐Ÿ‘๏ธ๐Ÿง 

  • LLM ๐Ÿค–: NeoGPT supports multiple LLM models, allowing users to interact with a variety of language models. We support LlamaCpp, Ollama, LM Studio, OpenAI, and Togerther Ai. ๐Ÿค–๐Ÿง ๐Ÿ“š

Quick Start

pip install https://github.com/neokd/NeoGPT/releases/download/v0.1.0/neogpt-0.1.0-py3-none-any.whl

Terminal

After installing the package, you can run the CLI by typing the following command in your terminal.

$ neogpt

Python

from neogpt import db_retriever

chain = db_retriever()

chain.invoke("What operating system are we on?")

Commands

Code Interpreter

To use the Interpreter, type the following command in your terminal.

$ neogpt --interpreter

Build Vector Database

To build the vector database, type the following command in your terminal.

$ neogpt --build

Run Streamlit UI

To run the Streamlit UI, type the following command in your terminal.

$ neogpt --ui

Change Your LLM

Offline LLM

To change your LLM, type the following command in your terminal.

$ neogpt --model ollama/bakllava

Online LLM

To change your LLM, type the following command in your terminal.

Warning: Add your API key to the .env file before running the command.

$ neogpt --model together/mistralai/Mistral-7B-Instruct-v0.2

Magic Commands

  • ๐Ÿ”„ /reset - Reset the chat session
  • ๐Ÿšช /exit - Exit the chat session
  • ๐Ÿ“œ /history - Print the chat history
  • ๐Ÿ’พ /save - Save the chat history to a neogpt/conversations
  • ๐Ÿ“‹ /copy - Copy the last response from NeoGPT to the clipboard
  • โช /undo - Remove the last response from the chat history
  • ๐Ÿ” /redo - Resend the last human input to the model
  • ๐Ÿ“‚ /load [path] - Load the saved chat history from the specified file
  • ๐Ÿ”– /tokens [prompt] - Calculate the number of tokens for a given prompt
  • ๐Ÿ“„ /export - Export the current settings to the settings/settings.yaml file
  • ๐Ÿ“œ /conversations - List available previously saved conversations.
  • ๐Ÿ“š /source - Prints the source directory
  • ๐Ÿ” /search [keyword] - Search the chat history for the keyword
  • ๐Ÿ“‹ /copycode or /cc - Copy the last code block to the clipboard

Contributing

We welcome contributions to NeoGPT! If you have ideas for new features or improvements, please open an issue or submit a pull request. For more information, see our contributing guide.

License

This project is licensed under the MIT License - see the LICENSE file for details. Let's innovate together! ๐Ÿค–โœจ

neogpt's People

Contributors

neokd avatar ayushmorbar avatar yashasvini121 avatar savyez avatar bryce-seefieldt avatar kuldeepl avatar ayaan-qadri avatar vpraharsha03 avatar n0n3br avatar bermr avatar anamnaaz-7 avatar dikshant182004 avatar rahim-khan-iitg avatar ymir-badam avatar abhishekgupta204 avatar ha36d avatar chandak-keshav avatar qasim0014 avatar y9rabbito avatar fvaysh avatar andreaswinthermoen avatar bchass avatar gladwin001 avatar takuphilchan avatar priyamakeshwari avatar saloni0512 avatar ashikshafi08 avatar c0de-slayer 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.