-
Notifications
You must be signed in to change notification settings - Fork 0
/
helpers.py
51 lines (43 loc) · 1.45 KB
/
helpers.py
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
import os
from dotenv import load_dotenv
from flask import Response
load_dotenv()
from openai import OpenAI
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
def generate(prompt):
promptText = """
Buatkan sebuah materi untuk konten Instagram yang singkat tentang {}
dalam format Markdown
Berikan juga caption di akhir dengan 20 hashtags
""".format(prompt)
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": promptText}
]
)
return response.choices[0].message.content
def sendMessage(prompt):
promptText = """
Buatkan sebuah materi untuk konten Instagram yang singkat tentang {}
dalam format Markdown
Berikan juga caption di akhir dengan 20 hashtags
""".format(prompt)
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": promptText}
],
stream=True
)
return response
def generatedChunk(messages):
def event_stream():
for line in sendMessage(messages[0]["content"]):
print(line)
text = line.choices[0].delta.content
if(text != None):
yield text
return Response(event_stream(), mimetype='text/event-stream')