# Multi GPT Application

## Overview

Multi GPT is a user-friendly desktop application that allows you to interact with OpenAI's GPT models seamlessly. Designed with accessibility in mind, the application integrates NVDA screen reader support to assist visually impaired users.

## Features

- **Interactive Chat:** Engage in conversations with GPT-3.5-turbo or other available GPT models.
- **API Key Management:** Securely enter and save your OpenAI API key and Organization ID within the application.
- **Settings Menu:** Customize application preferences, including NVDA focus behavior and menu navigation options.
- **Model Selection:** Choose from a list of available GPT models to tailor your chat experience.
- **Developer Information:** Access information about the developer and visit the developer's official website.
- **External Links:** Easily navigate to NBM Studios and the developer's personal website directly from the application.
- **Exit Application:** Conveniently exit the application using the Exit button or the ESC key.

## Getting Started

### Launching the Application

1. **Run the Executable:**
   - Locate the `Multi GPT.exe` file in the distribution folder.
   - Double-click the executable to launch the application.

### Main Menu

Upon launching, you'll be greeted with the main menu containing the following options:

1. **Start Chat:**
   - Initiates a chat session with the selected GPT model.
   - Type your messages in the input field and receive responses from the AI.

2. **Enter OpenAI API Key:**
   - Input your OpenAI API key required for accessing GPT models.
   - Click "OK" to save the key or "Cancel" to return to the main menu.

3. **Enter Organization ID:**
   - Input your OpenAI Organization ID if applicable.
   - Click "OK" to save the ID or "Cancel" to return to the main menu.

4. **Settings:**
   - Access and modify application settings.
   - Options include toggling NVDA focus on the first menu item and enabling/disabling menu wrapping.
   - Select your preferred GPT model from the available list.

5. **NBM Studios:**
   - Opens the [NBM Studios](https://nbmstudios.com/) website in your default web browser.

6. **Developer Info:**
   - View information about the developer, **oguzhanproductions**.
   - Click "My Website" to visit [https://oguzhanproductions.online/](https://oguzhanproductions.online/).

7. **Exit:**
   - Closes the application gracefully.
   - Alternatively, press the **ESC** key while in the main menu to exit.

### Navigating the Application

- **Keyboard Shortcuts:**
  - **Up/Down Arrow Keys:** Navigate between menu options.
  - **Enter Key:** Select the highlighted menu option.
  - **ESC Key:** Exit the application from the main menu or return to the main menu from other screens.

- **Screen Reader Support:**
  - NVDA announces menu options and actions to assist visually impaired users.
  - Ensure NVDA is running on your system to utilize screen reader functionalities.

## Usage Instructions

### Starting a Chat Session

1. **Select "Start Chat"** from the main menu.
2. **Enter Your Message:**
   - Type your message in the input field at the bottom of the chat window.
   - Press **Enter** or click the **Send** button to submit your message.
3. **Receive AI Responses:**
   - The AI will respond to your messages in real-time.
   - Conversations are logged within the chat history for your reference.

### Managing API Credentials

1. **Enter OpenAI API Key:**
   - Select "Enter OpenAI API Key" from the main menu.
   - Input your API key and click **OK** to save.
   - The API key is necessary for authenticating requests to OpenAI's services.

2. **Enter Organization ID:**
   - Select "Enter Organization ID" from the main menu.
   - Input your Organization ID and click **OK** to save (if applicable).

### Configuring Settings

1. **Access Settings:**
   - Select "Settings" from the main menu.
2. **Customize Preferences:**
   - **NVDA Focus:** Toggle whether NVDA focuses on the first menu item upon navigation.
   - **Menu Wrapping:** Enable or disable menu wrapping for seamless navigation.
   - **Model Selection:** Choose your preferred GPT model from the available list.
3. **Save and Return:**
   - Changes are saved automatically.
   - Click **Back** to return to the main menu.

### Developer Information

1. **Access Developer Info:**
   - Select "Developer Info" from the main menu.
2. **View Details:**
   - See information about the developer, **oguzhanproductions**.
3. **Visit Developer's Website:**
   - Click **My Website** to navigate to [https://oguzhanproductions.online/](https://oguzhanproductions.online/).

## Support

If you encounter any issues or have questions about the application, please visit the developer's website or contact support through the provided channels.

## License

This project is licensed under the MIT License. See the (LICENSE.txt) file for details.