TestPY0 / app.py
Niansuh's picture
Update app.py
372d7a8 verified
raw
history blame
990 Bytes
from flask import Flask, request, jsonify
import os
import requests
app = Flask(__name__)
# Load environment variables
API_KEY = os.getenv("OPENAI_API_KEY")
FAKE_KEY = os.getenv("FAKE_KEY", "fake-key") # Default to "fake-key" if not set
BASE_URL = "https://api.openai.com/v1"
# Proxy endpoint to OpenAI's API
@app.route("/<path:endpoint>", methods=["POST"])
def proxy(endpoint):
# Verify the client's fake API key
client_key = request.headers.get("Authorization")
if client_key != f"Bearer {FAKE_KEY}":
return jsonify({"error": "Unauthorized"}), 401
# Forward request to OpenAI
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
data = request.get_json()
response = requests.post(f"{BASE_URL}/{endpoint}", headers=headers, json=data)
# Return the OpenAI response
return jsonify(response.json()), response.status_code
if __name__ == "__main__":
app.run(host="0.0.0.0", port=5000)