Arara is a cost-effective, web-based, AI powered self studying solution for students. We first envisioned how we could apply LLMs to make learning engaging and bring the student to an active perspective, increasing final retention. To make this feasible, we implemented a modded GPT3.5 programmed to receive a set of slides and provide a personalized study experience based on it, stimulating the student with questions and flashcard proposals rather than giving them pre-made solutions or short-cuts, fostering their critical reasoning as the final goal.
It is the solution of the TropiCoders team composed by Carol Iplinsky, Felipe Azank, Felipe Bagni and Marcos Petrucci for the Google Developer Student Club @Politecnico di Milano AI Hackathon 2024.
Below is a summary of the contents you can find in this README:
-
Getting Started 🚀: Step-by-step instructions to get you up and running with the project.
- Step 1: Obtain Your API Key 🔑: Guidance on acquiring your API key to use the project.
- Step 2: Set Your API Key 🛠️: Instructions for setting your API key.
- Step 3: Install Dependencies 📦: Details on installing required dependencies.
- Step 4: Launch the Application 🌟: Guidance on starting the application.
-
Features ✨: A list of the key features and capabilities of the project.
-
How to Contribute 🤝: Guidelines for contributing to the project, including how to fork the repository and submit a pull request.
-
License 📝: Information about the project's licensing under the MIT License.
Click on the links above to jump to specific sections for more detailed information. Thank you for using and supporting this project! Let us know if you have any questions or feedback.
To interact with the OpenAI model, you will need an API key. Follow these steps to obtain one:
- Visit the OpenAI website.
- Sign up for an account if you don't already have one.
- Navigate to the API section and follow the instructions to generate your API key.
Once you have your API key, you'll need to configure the application to use it. Create a new file with the name key.txt
, add your OpenAI API key there. For example:
sk-r7QTNcbEeRBAub8quuJAT3BlbkFJQNnPTgSaUVvGhxxxx
Replace the placeholder key with your actual API key. Make sure this file is in the root folder of your project and it contains only your key.
ChatPDF requires several dependencies to run. Install them using the provided requirements.txt
file with the following command:
pip install -r requirements.txt
With your API key set and dependencies installed, you're ready to start the application. Navigate to the root folder of the directory and run:
streamlit run app.py
The application should now be up and running on your local server. Open your web browser and go to the address indicated by Streamlit (usually http://localhost:8501
) to start using Arara.
Currently, the pdf file to be uploaded must be on the root directory of the project.
ChatPDF comes with a plethora of features designed to make your interaction with PDF documents as smooth as possible:
- Information Extraction: Pull out key details or data from your PDF files.
- Content Summarization: Get concise summaries of lengthy documents.
- Q&A with your PDF: Ask questions and get answers based on the content of your PDFs.
We welcome contributions from the community to help improve this project. If you're interested in contributing, please follow the guidelines below:
-
Fork the repository: Create a fork of this repository to your GitHub account.
-
Clone your fork: Clone your fork to your local machine using
git clone
:git clone https://github.com/your-username/your-repository.git
-
Create a branch: Create a new branch for your contribution:
git checkout -b your-branch-name
-
Make your changes: Implement your desired changes on your branch.
-
Commit your changes: Commit your changes with a descriptive commit message:
git commit -m "Describe your changes"
-
Push your changes: Push your branch to your forked repository:
git push origin your-branch-name
-
Submit a pull request: Once your changes are ready for review, open a pull request (PR) on GitHub. Include a clear description of your changes and any relevant information for the maintainers to review.
-
Follow the coding standards and guidelines: Ensure your code follows any coding standards and guidelines specified in the project.
-
Participate in the review process: Be open to feedback from maintainers and other contributors. Respond to comments and make adjustments to your code as needed.
-
Stay respectful: We aim to foster a welcoming and inclusive environment. Please be respectful in all interactions with other contributors and maintainers.
Thank you for your interest in contributing! We appreciate your time and effort in helping to improve this project. If you have any questions, feel free to reach out to the repository maintainers.
This project is licensed under the MIT License. This means you are free to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software, subject to the following conditions:
The software is provided "as is," without any express or implied warranty of any kind.
You must include the original copyright notice and the permission notice from the MIT License in all copies or substantial portions of the software.
You can find the full text of the MIT License in the LICENSE file in this repository. Please read the file for the complete terms and conditions. If you have any questions or concerns about the license, feel free to contact the repository maintainer.