Spaces:
Running
Running
File size: 2,006 Bytes
59b8168 1dccd50 59b8168 1dccd50 59b8168 1dccd50 59b8168 |
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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
from flask import Flask, request, jsonify
import bingChat
import api_info
import json
app = Flask(__name__)
@app.route('/')
def initial():
return '<pre>' + api_info.default_info + '</pre>'
@app.route("/available_models", methods=['GET'])
def available_models():
return jsonify(api_info.available_models)
@app.route("/endpoints", methods=['GET'])
def endpoints():
return jsonify(api_info.endpoint)
@app.route("/developer_info", methods=['GET'])
def developer_info():
return jsonify(api_info.developer_info)
@app.route('/generate', methods=['GET', 'POST'])
def generate():
try:
if request.method == 'POST':
data = request.get_json(force=True)
conversation_history = data.get('conversation_history')
realtime = data.get('realtime', False)
md_format = data.get('md_format', True)
else: # GET request
conversation_history = request.args.get('conversation_history')
realtime = request.args.get('realtime', 'false').lower() == 'true'
md_format = request.args.get('md_format', 'true').lower() == 'true'
if conversation_history:
# Parse the conversation_history as JSON if it's a string
if isinstance(conversation_history, str):
try:
conversation_history = json.loads(conversation_history)
except json.JSONDecodeError:
conversation_history = [{"role": "user", "content": conversation_history}]
response = bingChat.ddc_bing_converse(
conv_history=conversation_history,
realtime=realtime,
md_format=md_format
)
return jsonify(response), 200
else:
return jsonify(api_info.error_message), 400
except Exception as e:
return jsonify({"error": str(e)}), 400
if __name__ == '__main__':
app.run(debug=True)
|