https://github.com/ametnes/nesis
Your AI Powered Enterprise Knowledge Partner. Discover knowledge from your private documents in your enterprise. Designed to be used at scale from ingesting large amounts of documents formats such as pdfs, docx, xlsx, png, jpgs, tiff, mp3, mp4, jpeg. Integrates with s3, Windows Shares, Google Drive and more.
https://github.com/ametnes/nesis
aig embeddings enterprise-software genai-chatbot genai-usecase rag
Last synced: 5 months ago
JSON representation
Your AI Powered Enterprise Knowledge Partner. Discover knowledge from your private documents in your enterprise. Designed to be used at scale from ingesting large amounts of documents formats such as pdfs, docx, xlsx, png, jpgs, tiff, mp3, mp4, jpeg. Integrates with s3, Windows Shares, Google Drive and more.
- Host: GitHub
- URL: https://github.com/ametnes/nesis
- Owner: ametnes
- License: apache-2.0
- Created: 2024-04-04T18:22:32.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-22T06:03:37.000Z (about 2 years ago)
- Last Synced: 2024-05-22T15:11:25.265Z (about 2 years ago)
- Topics: aig, embeddings, enterprise-software, genai-chatbot, genai-usecase, rag
- Language: Python
- Homepage: https://ametnes.github.io/nesis
- Size: 36.6 MB
- Stars: 22
- Watchers: 3
- Forks: 15
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
---
# π What is Nesisβ
Nesis is an open-source enterprise knowledge discovery solution that connects to multitudes of datasources, collecting
information and making it available in a conversation manner. Nesis leverages generative AI to aggregate document chunks
collected from different documents in multiple formats such as pdf, docx, xlsx and turn them into meaning human-readable compositions. Allowing you to;
1. Converse with your document via a simple chat interface.
2. Conveniently view comparisons between documents.
3. Summarise large documents.
# Demo
https://github.com/ametnes/nesis/assets/86433807/64ea0ad8-5615-4111-8f6e-61ce7d3ad2fc
## π Documentation
Read the Nesis documentation [here](https://ametnes.github.io/nesis)
## π° Main features
Nesis is built to handle large amounts of data at scale. Enabling connectivity to multitudes of datasources,
Nesis is able to transform data from various formats into vector embeddings to be used by your LLM of choice.
Enterprise ready knowledge discovery solution that empowers users to
1. π£ Interact with vast document repositories in a conversational AI style.
2. π Role based access control access to the document repositories, ensuring that the enterprise user only views information they are allowed to.
3. π Connect to vast number of repositories. Currently, S3, WindowsNT Shares (for your on-prem Windows environment), MinIO, Sharepoint
4. β π’ Can be deployed in your cloud or on-premises.
5. π User session management.
## Getting started
To get started with Nesis,
### Deploy with Docker Compose
1. Obtain your **OPENAI_API_KEY** from https://platform.openai.com/api-keys:
- and update the `compose.yml` file entry.
- If you do not have an OPEN_API_KEY, add environment variable **NESIS_RAG_LLM_MODE=mock** in the `nesis_rag` service in the docker compose
2. Obtain your **YOUR-HUGGINGFACE-TOKEN** from https://huggingface.co:
- and update the `compose.yml` file entry.
4. Start all services locally with the provided docker compose file.
```commandline
docker-compose -f compose.yml up
```
5. Then connect to your instance via http://localhost:58000 with the following login credentials:
- *email* = `some.email@domain.com`
- *password* = `password`
6. Connect to your minio instance via http://localhost:59001/ with the following login credentials:
- *username* = `your_username`
- *password* = `your_password`
4. Upload some documents into your minio `documents` bucket.
5. Back on your Nesis page, register the minio datasource with
1. Navigate to **Settings** -> **Datasource** -> **New**
2. Enter the details;
1. Type: **MinIO**
2. Name: **documents**
3. Host: **http://minio:9000/**
4. Access Key: `your_username`
5. Access Secret: `your_password`
6. Buckets: **documents**
7. Click **Create**
8. Then, run an adhoc ingestion by clicking the **Ingest** button of the datasource.
### Deploy with Kubernetes
To deploy Nesis into your kubernetes cluster, see [Helm Instructions](https://ametnes.github.io/nesis/installing/helm/).
## What does Nesis mean?
Nesis is derived from the greek noun gnosis which means knowledge.
## Feedback and Feature Request
π‘If you'd like to see a specific feature implemented, feel free to open up a feature request ticket.
If enough users support to have the feature, we will be sure to include it in our roadmap.
πIf you find any functionality not working as expected, please feel free to open a bug report.
## β Stars let us know you visited β
Please give us a β to let us know you visited this page. You are already awesome.
## Origins
This project has been inspired by other open-source projects. Here is a list of some of them;
- [privateGPT](https://github.com/imartinez/privateGPT)
- [localGPT](https://github.com/PromtEngineer/localGPT)
- [llama-cpp](https://github.com/abetlen/llama-cpp-python)
- [Unstructured](https://github.com/Unstructured-IO/unstructured)
- [llama-index](https://github.com/run-llama/llama_index)