feat(docs): Update Quivr README.md (#3408)

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
This commit is contained in:
Stan Girard 2024-10-21 16:55:19 +02:00 committed by GitHub
parent 29c279aba2
commit f816f970f8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

128
README.md
View File

@ -8,117 +8,82 @@
[![GitHub Repo stars](https://img.shields.io/github/stars/quivrhq/quivr?style=social)](https://github.com/quivrhq/quivr)
[![Twitter Follow](https://img.shields.io/twitter/follow/StanGirard?style=social)](https://twitter.com/_StanGirard)
Quivr, your second brain, utilizes the power of GenerativeAI to be your personal assistant ! Think of it as Obsidian, but turbocharged with AI capabilities.
[Roadmap here](https://docs.quivr.app/docs/roadmap)
Quivr, helps you build your second brain, utilizes the power of GenerativeAI to be your personal assistant !
## Key Features 🎯
- **Fast and Efficient**: Designed with speed and efficiency at its core. Quivr ensures rapid access to your data.
- **Secure**: Your data, your control. Always.
- **OS Compatible**: Ubuntu 20 or newer.
- **File Compatibility**: Text, Markdown, PDF, Powerpoint, Excel, CSV, Word, Audio, Video
- **Open Source**: Freedom is beautiful, and so is Quivr. Open source and free to use.
- **Public/Private**: Share your brains with your users via a public link, or keep them private.
- **Offline Mode**: Quivr works offline, so you can access your data anytime, anywhere.
- **Opiniated RAG**: We created a RAG that is opinionated, fast and efficient so you can focus on your product
- **LLMs**: Quivr works with any LLM, you can use it with OpenAI, Anthropic, Mistral, Gemma, etc.
- **Any File**: Quivr works with any file, you can use it with PDF, TXT, Markdown, etc and even add your own parsers.
- **Customize your RAG**: Quivr allows you to customize your RAG, add internet search, add tools, etc.
- **Integrations with Megaparse**: Quivr works with [Megaparse](https://github.com/quivrhq/megaparse), so you can ingest your files with Megaparse and use the RAG with Quivr.
## Demo Highlight 🎥
>We take care of the RAG so you can focus on your product. Simply install quivr-core and add it to your project. You can now ingest your files and ask questions.*
https://github.com/quivrhq/quivr/assets/19614572/a6463b73-76c7-4bc0-978d-70562dca71f5
**We will be improving the RAG and adding more features everything, stay tuned!**
This is the core of Quivr, the brain of Quivr.com.
<!-- ## Demo Highlight 🎥
https://github.com/quivrhq/quivr/assets/19614572/a6463b73-76c7-4bc0-978d-70562dca71f5 -->
## Getting Started 🚀
You can deploy Quivr to Porter Cloud with one-click:
<a href="https://cloud.porter.run/addons/new?addon_name=quivr" target="_blank">
<img src="https://mintlify.s3-us-west-1.amazonaws.com/porter/images/deploying-applications/deploy-to-porter.svg" alt="Deploy to Porter" style="width: 150px;">
</a>
If you would like to deploy locally, follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
You can find everything on the [documentation](https://docs.quivr.app/).
You can find everything on the [documentation](https://core.quivr.app/).
### Prerequisites 📋
Ensure you have the following installed:
- Docker
- Docker Compose
- Python 3.10 or newer
### 60 seconds Installation 💽
### 30 seconds Installation 💽
You can find the installation video [here](https://www.youtube.com/watch?v=cXBa6dZJN48).
- **Step 0**: Supabase CLI
- **Step 1**: Install the package
Follow the instructions [here](https://supabase.com/docs/guides/cli/getting-started) to install the Supabase CLI that is required.
```bash
supabase -v # Check that the installation worked
pip install quivr-core # Check that the installation worked
```
- **Step 1**: Clone the repository:
- **Step 2**: Create a RAG with 5 lines of code
```bash
git clone https://github.com/quivrhq/quivr.git && cd quivr
```
```python
import tempfile
- **Step 2**: Copy the `.env.example` files
from quivr_core import Brain
```bash
cp .env.example .env
```
if __name__ == "__main__":
with tempfile.NamedTemporaryFile(mode="w", suffix=".txt") as temp_file:
temp_file.write("Gold is a liquid of blue-like colour.")
temp_file.flush()
- **Step 3**: Update the `.env` files
brain = Brain.from_files(
name="test_brain",
file_paths=[temp_file.name],
)
```bash
vim .env # or emacs or vscode or nano
```
answer = brain.ask(
"what is gold? asnwer in french"
)
print("answer:", answer)
```
Update **OPENAI_API_KEY** in the `.env` file.
## Examples
You just need to update the `OPENAI_API_KEY` variable in the `.env` file. You can get your API key [here](https://platform.openai.com/api-keys). You need to create an account first. And put your credit card information. Don't worry, you won't be charged unless you use the API. You can find more information about the pricing [here](https://openai.com/pricing/).
| Name | Description |
| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| [Simple Question](./examples/simple_question) | Ask a simple question to the RAG by ingesting a single file |
| [ChatBot](./examples/chatbot) | Build a chatbot by ingesting a folder of files with a nice UI powered by [Chainlit](https://github.com/Chainlit/chainlit) |
## Go further
- **Step 4**: Launch the project
```bash
cd backend && supabase start
```
and then
```bash
cd ../
docker compose pull
docker compose up
```
If you have a Mac, go to Docker Desktop > Settings > General and check that the "file sharing implementation" is set to `VirtioFS`.
If you are a developer, you can run the project in development mode with the following command: `docker compose -f docker-compose.dev.yml up --build`
- **Step 5**: Login to the app
You can now sign in to the app with `admin@quivr.app` & `admin`. You can access the app at [http://localhost:3000/login](http://localhost:3000/login).
You can access Quivr backend API at [http://localhost:5050/docs](http://localhost:5050/docs)
You can access supabase at [http://localhost:54323](http://localhost:54323)
## Updating Quivr 🚀
- **Step 1**: Pull the latest changes
```bash
git pull
```
- **Step 2**: Update the migration
```bash
supabase migration up
```
You can go further with Quivr by adding internet search, adding tools, etc. Check the [documentation](https://core.quivr.com/) for more information.
## Contributors ✨
@ -135,9 +100,6 @@ Did you get a pull request? Open it, and we'll review it as soon as possible. Ch
- [Open Issues](https://github.com/quivrhq/quivr/issues)
- [Open Pull Requests](https://github.com/quivrhq/quivr/pulls)
- [Good First Issues](https://github.com/quivrhq/quivr/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)
- [Frontend Issues](https://github.com/quivrhq/quivr/issues?q=is%3Aopen+is%3Aissue+label%3Afrontend)
- [Backend Issues](https://github.com/quivrhq/quivr/issues?q=is%3Aopen+is%3Aissue+label%3Abackend)
- [Translate](https://docs.quivr.app/docs/Developers/contribution/guidelines#translations)
## Partners ❤️