Table of content
Ragnar is an innovative open source tool that will help the user clearly understand a bunch of documentation in a couple of minutes. In an era where people need to absorb more and more information in a tight time frame, information overload is becoming a common problem. Ragnar helps reduce the time of searching and understanding information in documents by creating short and clear descriptions of each of them, separating the water from the essence and providing the opportunity to ask the user about this or that information and receive an answer based only on the information in the documents. This function allows you to use the LLM to obtain exactly the information contained in the documents without thinking through the AI.
- Document Summarization:
Ragnar's main function is to generate short and clear paraphrases of documents. This function is useful for users who work with a large amount of various information or documentation. Ragnar will help such users highlight the main meaning in each document, skipping all unnecessary information, and present it in a user-friendly format.
- Accurate Information Retrieval:
Unlike conventional LLMs, which provide answers using previously acquired knowledge, Ragnar guarantees that all answers are obtained strictly from the documents uploaded into it. This is achieved due to the restrictions introduced into the model and pre-written prompts. The user can confidently ask Ragnar questions about the documents, knowing that he will rely only on the information in the documents.
-
Open-Source Accessibility:
Since Ragnar is an open source project, we welcome collaboration and innovative ideas. Such openness of the application contributes to its greater development and continuous improvement, and it also increases confidence in the functionality of the project. Both users and developers can propose and contribute their ideas for improvement, thereby expanding the functionality of the project. -
User-Friendly Interface:
Ragnar is designed to be simple and straightforward to use. Its user-friendly interface allows the user to easily download documents and ask questions about them. The simple design makes the application accessible to all users.
Welcome to Ragnar! This guide will walk you through the process of installing Ragnar using Docker. To install the stable and the newest version of Ragnar follow one of the next installations:
Run this command in terminal:
sudo docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v ragnar:/app/backend/data --name ragnar --restart always luminitetime/ragnar:v1.0.0In terminal clone Ragnar repository:
https://gitlab.pg.innopolis.university/m.trifonov/ragnar.gitThen go to the cloned repository directory:
cd <your-path-to-repo>/ragnarBuild the app using docker:
docker build -t ragnar . --no-cacheRun the built container:
docker run -p 3000:8080 ragnarWhen everything is downloaded you can open Ragnar on http://localhost:3000. Please note, that Ragnar needs some time to start, you cna track the progress of starting Ragnar by following instructions depending on the way you use Docker:
- Without Docker Desktop:
Type docker ps -a and find Container ID of Ragnar, copy this ID and paste it in the next command docker logs <container-id>.
- With Docker Desktop:
Open ragnar container in Docker Desktop and find section with logs, it will be updated automatically as Ragnar proceeds.
If you see
______
| __ \ __ __ _ _ __ __ _ ___
| |__) / / _ '| / _ ' | '_ \ / _ '|| '_ \
| \| (_| || (_| | | | || (_| || ^ /
|__|\___|\__/\| \___/ |_| |_| \__/\||_|-\_\
/____/
in logs then Ragnar is ready to serve you!
There are 3 variants how to upload documents to the chat:
I. Drag and drop document to the chat. It will be attached to your next message in the chat. Note that documents uploaded this way will be visible only in scope of the current chat and will not be dicplayed in the Documents section.
II. Press the plus button in the left corner of input line. Then you will see 2 options:
- Upload Files — to upload files into the chat. Note that they will be visible only in scope of the current chat.
- Use Uploaded — to attach documents already uploaded in Documents section.
III. Put it in Documents section.
Important! Only by following this step (III) the uploaded documents will be saved in the app storage for all chats, not only for the current.
- At the left side pannel find button Documents and move to it.
- At the top side of the section Documents find + Add document button and press it.
- In the opened window click at the button Click here to select documents.
- Select documents in your files.
- Press Save button.
Where to find documents
Documents are store in Documents section which you can find by pressing Documents button at the left side panel. There you can upload documents, delete them and edit their titles and tags in the system.
Add new chat
To start new chat with LLM press button New Chat at the top of the side bar.
Choose already uploaded documents to ask about
You can attach files wich you want to ask Ragnar about by pressing the plus button in the left corner of input line and then choosing Use Uploaded option. This will insert # sign into the input line and show list of documents. Choose All documents if you want to attach all uploaded documents or choose documents one by one to explicitely specify them.
How to edit response
To edit LLM's response you need to:
- Find button with pencil icon at the left-bottom corner of the response and press it.
- After pressing you will be able to edit the response.
- After all changes press Save if you want just to save changes, Save as note if you want to save edited response as a note which will be then saved as a markdown file in Ragnar file storage (Documents section), and Cancel if you do not want to edit note.
Where to find and how to work with notes
Saved notes are stored as markdown files and can be found in Documents section. You can work with them as with usual documents.
Please refer to CONTRIBUTING.md when suggesting improvements and features for Ragnar.
This project is licensed under the MIT License.
Mikhail Trifonov – Team Lead, Backend Developer: GitLab
Artyom Grishin – ML-engineer: GitLab
Savva Ponomarev – DevOps-engineer: GitLab
Ilsaf Abdulkhakov – Frontend Web Developer, UX/UI Designer: GitLab
Azalia Alisheva – Backend Developer: GitLab
Ragnar on GitLab
Ragnar on DockerHub
We identified two project aspects relevant to our customer:
- The process of using the application should be simple, the number of steps to get started should be minimal. For example, the ability to select LLM is unnecessary, we can connect any of them at the code level and lock the selection.
- The LLM should give information on how to use the application if asked to do so. It should help the user orient themselves in the application.





