fastapi-chat / main.py
deepak191z's picture
Update main.py
109eac8 verified
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)