Spaces:
Sleeping
Sleeping
Update main.py
Browse files
main.py
CHANGED
@@ -70,5 +70,27 @@ def chat_completions():
|
|
70 |
|
71 |
return app.response_class(stream(), mimetype='text/event-stream')
|
72 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
if __name__ == '__main__':
|
74 |
app.run(**settings['web'])
|
|
|
70 |
|
71 |
return app.response_class(stream(), mimetype='text/event-stream')
|
72 |
|
73 |
+
|
74 |
+
@app.route("/v1/chat/completions", methods=['POST'])
|
75 |
+
def v_chat_completions():
|
76 |
+
streaming = request.json.get('stream', False)
|
77 |
+
model = request.json.get('model', 'gpt-3.5-turbo')
|
78 |
+
messages = request.json.get('messages')
|
79 |
+
response = ''
|
80 |
+
|
81 |
+
try:
|
82 |
+
response = closeai.ChatCompletion.create(model=model, stream=streaming, messages=messages)
|
83 |
+
except Exception as er:
|
84 |
+
return er
|
85 |
+
if not streaming:
|
86 |
+
return jsonify(response)
|
87 |
+
|
88 |
+
def stream():
|
89 |
+
for token in response:
|
90 |
+
completion_data = token
|
91 |
+
yield 'data: %s\n\n' % json.dumps(completion_data, separators=(',' ':'))
|
92 |
+
return app.response_class(stream(), mimetype='text/event-stream')
|
93 |
+
|
94 |
+
|
95 |
if __name__ == '__main__':
|
96 |
app.run(**settings['web'])
|