-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathapp.py
More file actions
43 lines (32 loc) · 1.09 KB
/
app.py
File metadata and controls
43 lines (32 loc) · 1.09 KB
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
import os
import openai
import requests
from dotenv import load_dotenv
from flask import Flask, request, jsonify, render_template
app = Flask(__name__)
load_dotenv()
# OPENAI_API_URL = "https://api.openai.com/v1/engines/davinci/completions"
OPENAI_API_URL="https://api.openai.com/v1/chat/completions"
openai.api_key = os.getenv("OPENAI_KEY")
@app.route("/chat", methods=["POST"])
def chat():
data = request.get_json()
#
print("messages received are: ", data)
messages = data.get('messages',[])
print("messages received are: ", messages[0]["content"][-1])
if not messages:
return jsonify({'error': 'No messages provided'}), 400
messages = messages[0]["content"][-1]
formatted_messages = [
{"role": messages["role"], "content": messages["content"]}
]
completion = openai.ChatCompletion.create(
model = "gpt-3.5-turbo",
messages = formatted_messages
)
response_text = completion.choices[0].message['content']
print(response_text)
return jsonify({"response": response_text})
if __name__ == "__main__":
app.run()