Initial commit - Church Music Database
This commit is contained in:
106
legacy-site/documentation/md-files/SETUP_CHATGPT.md
Normal file
106
legacy-site/documentation/md-files/SETUP_CHATGPT.md
Normal file
@@ -0,0 +1,106 @@
|
||||
# ChatGPT Integration Setup
|
||||
|
||||
## Overview
|
||||
|
||||
The search feature now uses OpenAI's ChatGPT API to find worship songs based on your search query and filter selection.
|
||||
|
||||
## Setup Instructions
|
||||
|
||||
### 1. Get an OpenAI API Key
|
||||
|
||||
1. Go to [https://platform.openai.com/api-keys](https://platform.openai.com/api-keys)
|
||||
2. Sign in or create an account
|
||||
3. Click "Create new secret key"
|
||||
4. Copy the API key (it starts with `sk-...`)
|
||||
|
||||
### 2. Option A: Use a `.env` File (Recommended)
|
||||
|
||||
Create a file named `.env` inside the `backend` folder (or copy `.env.example`):
|
||||
|
||||
```envenv
|
||||
OPENAI_API_KEY=sk-your_openai_key_here
|
||||
GENIUS_TOKEN=your_genius_token_here
|
||||
```
|
||||
|
||||
The application now auto-loads `.env` because `load_dotenv()` is called at the top of `backend/app.py`.
|
||||
|
||||
Restart the backend after changes:
|
||||
|
||||
```powershell
|
||||
python app.py
|
||||
```
|
||||
|
||||
### 2. Option B: Set Environment Variable
|
||||
|
||||
#### Windows (PowerShell)
|
||||
|
||||
```powershell
|
||||
# Set for current session only
|
||||
$env:OPENAI_API_KEY="your-api-key-here"
|
||||
|
||||
# Or set permanently (requires admin)
|
||||
[System.Environment]::SetEnvironmentVariable('OPENAI_API_KEY', 'your-api-key-here', 'User')
|
||||
```
|
||||
|
||||
#### Windows (Command Prompt)
|
||||
|
||||
```cmd
|
||||
set OPENAI_API_KEY=your-api-key-here
|
||||
```
|
||||
|
||||
#### Alternative: Create .env file
|
||||
|
||||
Create a file named `.env` in the `backend` folder:
|
||||
|
||||
```env
|
||||
OPENAI_API_KEY=your-api-key-here
|
||||
```
|
||||
|
||||
Then update `backend/app.py` to load it:
|
||||
|
||||
```python
|
||||
from dotenv import load_dotenv
|
||||
load_dotenv()
|
||||
```
|
||||
|
||||
And add `python-dotenv` to `backend/requirements.txt`.
|
||||
|
||||
### 3. Install Dependencies
|
||||
|
||||
```powershell
|
||||
cd "E:\Documents\Website Projects\Church_SongLyric\backend"
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### 4. Restart Backend Server
|
||||
|
||||
After setting the API key, restart the Flask server:
|
||||
|
||||
```powershell
|
||||
python app.py
|
||||
```
|
||||
|
||||
## Features
|
||||
|
||||
### Search Filters
|
||||
|
||||
- **All**: Searches for songs related to any field
|
||||
- **Song Title**: Focuses search on song titles
|
||||
- **Artist**: Searches by artist/singer name
|
||||
- **Band**: Searches by band/group name
|
||||
|
||||
### Fallback Mode
|
||||
|
||||
If the OpenAI API key is not set or ChatGPT is unavailable, the system will return mock data with a note explaining the situation.
|
||||
|
||||
## Cost Considerations
|
||||
|
||||
- The ChatGPT integration uses the GPT-4 model
|
||||
- Each search costs approximately $0.01-0.03 depending on response length
|
||||
- Consider using GPT-3.5-turbo for lower costs by changing `model="gpt-4"` to `model="gpt-3.5-turbo"` in `backend/app.py`
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
- **Error: "No API key"**: Make sure you've set the `OPENAI_API_KEY` environment variable
|
||||
- **Mock data returned**: This means the API key isn't set or ChatGPT encountered an error
|
||||
- **Slow responses**: ChatGPT API calls take 2-5 seconds; this is normal
|
||||
Reference in New Issue
Block a user