OpenAI - Audio Processing & transcription Web Application -- 2
$750-1500 USD
In Progress
Posted 3 months ago
$750-1500 USD
Paid on delivery
Build web app designed to process audio files, transcribe them, summarize the transcripts using openai, This role requires both backend and frontend development.
*********write audio on top of your bid*********
Backend Development
1. Endpoint for File Upload:
- Create a RESTful API endpoint to receive audio file uploads.
- Ensure the endpoint supports the specified audio formats.
- Validate the uploaded files for type and size constraints.
2. File Name Processing:
- Extract the phone number from the uploaded file's name using a regex or string processing, based on the provided naming convention.
3. File Splitting:
- If the audio file exceeds 25 MB, split it into 25 MB segments for processing.
- Maintain the order of the segments for accurate transcription concatenation later.
4. Transcription with OpenAI API:
- Send each audio segment to OpenAI's Speech-to-Text API for transcription.
- Ensure that API requests are handled asynchronously and efficiently.
5. Transcript Concatenation:
- Concatenate the transcribed text from each segment in the correct order to create a complete transcript.
6. Transcript Summarization:
- Generate a detailed summary of the complete transcript using OpenAI's summarization feature.
- Implement functionality to allow customization of the OpenAI prompt from the frontend.
7. Google Sheets Integration:
- Use the Google Sheets API to send the data to a specified spreadsheet.
- Record the timestamp of the file submission and the extracted phone number.
- Store the combined transcript and its summary in the spreadsheet.
Frontend Development
1. File Upload Interface:
- Design a file upload component that allows users to select and submit audio files.
2. Data Display:
- Retrieve and display a list of processed transcriptions and summaries from the backend.
- Implement pagination or infinite scroll if the list is expected to be long.
3. Editing OpenAI Prompt:
- Provide a text input field for users to edit the OpenAI prompt used for summarization.
- This input should be sent to the backend and used when generating the summary.
Security and Performance
- Ensure secure file transfers using HTTPS.
- Authenticate users before allowing file uploads or edits.
- Sanitize file names and user input to prevent injection attacks.
- Implement rate limiting and handle API quota limits for OpenAI and Google Sheets.
Testing
- Write unit and integration tests for each API endpoint.
- Test the file upload and splitting functionality with various file sizes.
- Validate the transcription and summarization accuracy.
Documentation
- Document all API endpoints with their expected inputs and outputs.
- Provide clear instructions for the frontend team on how to use the backend services.
This backend system will require working with file I/O, external API integration (OpenAI and Google Sheets), and possibly a database to track the status of processing jobs. The frontend will need to interact seamlessly with the backend and provide a user-friendly interface for non-technical users.