Spaces:
Running
Running
File size: 1,133 Bytes
14cd2f6 5f777da 14cd2f6 5f777da 14cd2f6 5f777da 14cd2f6 5f777da 14cd2f6 5f777da 08606b0 5f777da 5bf1b3e 5f777da 5bf1b3e 5f777da 14cd2f6 5f777da 14cd2f6 5f777da 14cd2f6 5f777da 14cd2f6 5f777da 14cd2f6 5f777da 745d3f1 5f777da 109eac8 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
import os
from g4f.client import Client
from flask import Flask, jsonify, request
from dotenv import load_dotenv
from flask_cors import CORS
load_dotenv()
app = Flask(__name__)
client = Client()
port = 7860
CORS(app)
@app.route('/', methods=['GET'])
def getMain():
return 'g4f-proxy is running'
@app.route('/', methods=['POST'])
def postG4F():
if not request.is_json:
return jsonify({"error": "Request must be JSON"}), 400
data = request.get_json()
# Required attributes
required_fields = ["system", "user"]
# Check for missing fields
missing_fields = [field for field in required_fields if field not in data]
if missing_fields:
return jsonify({"error": f"Missing fields: {', '.join(missing_fields)}"}), 400
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "system", "content": data['system']},
{"role": "user", "content": data['user']}
],
web_search=False
)
return response.choices[0].message.content
if __name__ == '__main__':
app.run(host='0.0.0.0', port=7860) |