from flask import Flask, render_template, request, jsonify, send_file import openai from dotenv import load_dotenv import os import io from flask_cors import CORS load_dotenv() app = Flask(__name__) CORS(app, resources={r'/*': {'origins': 'https://127.0.0.1:5000'}}) # Fixed CORS config # Initialize OpenAI client properly client = openai.OpenAI(api_key=os.getenv('OPENAI_API_KEY')) @app.route('/process', methods=['POST']) def process_query(): data = request.get_json() completion = client.chat.completions.create( model="gpt-4-turbo", messages=[{"role": "user", "content": data['query']}] ) return jsonify({'response': completion.choices[0].message.content}) # Fixed array index @app.route('/synthesize', methods=['POST']) def synthesize(): data = request.get_json() speech = client.audio.speech.create( model="tts-1-hd", voice="nova", input=data['text'] ) return send_file( io.BytesIO(speech.content), mimetype='audio/mpeg', as_attachment=False ) @app.route('/') def index(): return render_template('index.html') if __name__ == '__main__': app.run(ssl_context='adhoc', port=5000, debug=True)