Code Monkey home page Code Monkey logo

vaultchat's Introduction

VaultChat
VaultChat

VaultChat

Are you concerned about the cybersecurity and privacy risks of sharing sensitive or private documents when using AI? Public AI is a threat to your privacy and cybersecurity.

We understand how crucial your privacy is when discussing sensitive matters and sharing confidential documents. The thought of your private conversations or documents falling into the wrong hands is panic inducing on a good day.

VaultChat keeps all your chats and documents private. No query or document leaves your computer.

What happens in VaultChat, stays in VaultChat.

Description

Chat privately with your documents and a local language model.

Installation on Linux

Install Ollama from https://www.ollama.com

Configure and deploy your desired LLM, mistral is a good first choice.

ollama pull mistral

VaultChat is tested on Linux only, in Preview for MacOS and Windows.

Consult .env.example and copy the .env.example file to .env and update the configuration

Ensure you have Python 3.12 and pyenv installed on your Linux or MacOS. Then, go to the release package and run:

chmod +x install.sh && ./install.sh

Installation on Windows

pyenv.bat install 3.12
  • Install VaultChat dependencies from the release package and run:
pip.bat install -r requirements

Usage

Load Private Documents

Copy your private documents to private_documents and create the embeddings:

Linux

./docs_loader.sh

Windows

python.bat docs_loader.sh

Run docs_loader.sh every time you add or remove documents in private_documents.

Remove chroma_db directory with your embeddings every time you wish to change the embeddings model configuration or chat with a new set of private documents.

VaultChat with your Private Documents

After your embeddings have been created, start a chat:

Linux

./vaultChat.py

Windows

python.bat vaultChat.py

Type /bye or exit to finish the chat

Requirements

  • Minimum hardware requirements: Ollama baseline. If your system can run Ollama, it can run VaultChat.
  • Ollama with models installed, choice of model to be defined in .env
  • Python 3.12
  • pyenv
  • Dependencies as listed and installed from requirements.txt.

Contributions

Contributions are welcomed! Please create a PR with a single typo/issue/defect/feature.

Roadmap

VaultChat started as a week-end experimental project with the objective of learning the LLM ecosystem.

The early releases are focused on bug fixes and usability improvements. It will remain a console version until features and functionality have matured.

GUI and web interfaces will be provided at a later stage.

Support

VaultChat is an experimental project. Support is provided on a "best effort" basis.

Utensils

Use the tools in the utensils directory to assist with your use of VaultChat.

epub2md will convert an EPUB document to Markdown for a faster and more efficient embeddings creation.

pdf2md will convert a PDF document to Markdown for a faster and more efficient embeddings creation.

evaluate_llm will help you fine-tune your selection of ollama models and any other model fine-tuning.

License

This software is released under the AGPL-3.0 license.

Credit

Private LLMs made easy with Ollama https://www.ollama.com

Support for local LLMs with LangChain https://python.langchain.com

PromptEngineer48 for the ingestion and retrieval inspiration https://github.com/PromptEngineer48/Ollama

Personal Vault Project by Lucian https://github.com/dlucian/pvp

NLP journey started with Norbert Z.

vaultchat's People

Contributors

aosan 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.