https://github.com/XCollab/NoteMaster-AI
NoteMaster AI's FastAPI component provides a robust backend service for transforming photos into structured notes using AI. It handles image processing, text extraction, and note generation, offering a RESTful API for seamless integration into various applications.
https://github.com/XCollab/NoteMaster-AI
ai ai-notes app g4f imagetotext llm notes notes-app orc python3 streamlit streamlit-webapp
Last synced: about 1 year ago
JSON representation
NoteMaster AI's FastAPI component provides a robust backend service for transforming photos into structured notes using AI. It handles image processing, text extraction, and note generation, offering a RESTful API for seamless integration into various applications.
- Host: GitHub
- URL: https://github.com/XCollab/NoteMaster-AI
- Owner: XCollab
- License: mit
- Created: 2024-07-01T15:46:06.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-28T03:24:36.000Z (over 1 year ago)
- Last Synced: 2025-03-20T02:12:21.086Z (about 1 year ago)
- Topics: ai, ai-notes, app, g4f, imagetotext, llm, notes, notes-app, orc, python3, streamlit, streamlit-webapp
- Language: Python
- Homepage:
- Size: 110 MB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# NoteMaster AI - FastAPI Component
## Overview
NoteMaster AI's FastAPI component provides a robust backend service for transforming photos into structured notes using AI. It handles image processing, text extraction, and note generation, offering a RESTful API for seamless integration into various applications.
## Features
- **Image Upload**: Accepts multiple image formats for processing.
- **Text Extraction**: Utilizes Tesseract OCR for extracting text from images.
- **AI-Driven Note Generation**: Uses AI models to convert extracted text into organized notes.
- **API Endpoints**: Provides endpoints for image processing, note management, and more.
## Available Models
The FastAPI component supports the following AI models:
- **GPT-3.5 Turbo**
- **GPT-4o**
- **Llama 3**
- **Mixtral 70b**
- **BlackBox**
- **Meta AI**
## Installation Options
### Option 1: Streamlit Only Version (First Release)
If you want to use the app without FastAPI, you can use the first release of NoteMaster AI which is Streamlit-only:
1. Go to the [Releases](https://github.com/codewithdark-git/NoteMaster-AI/releases) page.
2. Download the first release.
3. Follow the installation steps as mentioned on the release page.
### Option 2: Full Version with FastAPI
The current version includes FastAPI for enhanced functionality. Follow the standard installation steps mentioned below to use this version.
## Installation
1. Clone the repository:
```bash
git clone https://github.com/codewithdark-git/NoteMaster-AI.git
cd NoteMaster-AI
```
2. Install the required packages:
```bash
pip install -r requirements.txt
```
3. Run the API generation script:
```bash
python backend/generate_api.py
```
After running the script, copy the API from `.env` and add it to your frontend configuration.
4. Start the FastAPI server:
```bash
uvicorn fastapi_app:app --reload
```
## Usage
1. **Access the API**:
- The API runs on `http://localhost:8000`
- Access the interactive API documentation at `http://localhost:8000/docs`
2. **Endpoints**:
- `POST /generate_from_images`: Generate notes from uploaded images
- `POST /generate_from_link`: Generate notes from a link
- `GET /notes/`: Retrieve all notes
- `DELETE /notes/{note_id}`: Remove notes
- `POST /follow-up-question/`: Generate a follow-up response based on a saved note
3. **Example Usage**:
- `curl -X POST -F "files=@image1.jpg" http://localhost:8000/generate_from_images`
- `curl -X POST -F http://localhost:8000/generate_from_link`
- `curl -X GET http://localhost:8000/notes/`
- `curl -X DELETE http://localhost:8000/notes/{note_id}`
- `curl -X POST -F "note_id=1" -F "user_prompt=What more can I learn?" http://localhost:8000/follow-up-question/`
## Customization
- **Model Configuration**: Adjust model settings in `fastapi_app.py`.
- **API Behavior**: Modify processing parameters and response formats.
## Contributing
Contributions are welcome! Please submit a pull request or open an issue to discuss your ideas.
## License
This project is licensed under the MIT License.