Introduction to PAutoBot
Overview
PAutoBot is an innovative assistant that harnesses the power of GPT-based technologies. It's designed to be your private task assistant that operates offline, ensuring that no data leaves your secure environment. Whether you're looking to chat with language models or query your documents without an internet connection, PAutoBot has you covered.
Key Features
-
Private Interactions: Engage in conversation with offline language models using only your CPU. This feature ensures 100% data privacy by guaranteeing that no information is transmitted outside your execution environment.
-
Document Querying: Obtain answers from your documents privately without needing an internet connection. This capability is powered by the PrivateGPT engine.
-
User-Friendly Application: Built using Next.js and Python, PAutoBot boasts a simple coding structure that is easy for developers to understand and modify.
-
Robust Foundation: The development of PAutoBot incorporates various advanced tools and frameworks, including LangChain, GPT4All, Chroma, SentenceTransformers, and PrivateGPT.
Supported Document Formats
PAutoBot supports a wide range of document formats, making it versatile and adaptable for different user needs. These formats include:
- CSV, Word Documents (.docx, .doc),
- EverNote (.enex), Email (.eml), EPub (.epub),
- HTML, Markdown (.md), Outlook Message (.msg),
- Open Document Text (.odt), PDF,
- PowerPoint (.pptx, .ppt), and standard Text files (.txt).
Installation and Usage
Installation
Begin by ensuring that you have Python 3.8 or higher. Then, install PAutoBot via pip:
pip install pautobot
Usage
To launch PAutoBot, you can execute:
python -m pautobot.app
or simply:
pautobot
Access the user interface by navigating to http://localhost:5678/. Two operational modes are available:
- Chat Only
- Documents Q&A
You can upload documents of supported formats into the app to interact and query. For instance, you can use a sample from the Python 3.11.3 documentation to get started. A simple button press is all it takes to ingest this data into the application.
If needed, PAutoBot can be made accessible to your entire network or through a specific port:
pautobot --host 0.0.0.0 --port 8080
Development Guide
Interested in contributing to the project? Here’s how you can set up a development environment:
Backend Development
-
Clone the repository:
git clone https://github.com/nrl-ai/pautobot cd pautobot
-
Install PAutoBot from source and run the application:
pip install -e . python -m pautobot.app
-
Access the user interface at http://localhost:5678/.
Frontend Development
-
Navigate to the
frontend
directory and install dependencies:cd frontend npm install
-
Launch the development server:
npm run dev
-
View the frontend interface at http://localhost:3000/.
PAutoBot is the epitome of a private, powerful, and user-friendly GPT-based assistant tailored for both individuals and developers who prioritize data privacy and ease of use.