forked from Minami-Yuduru/-ChatGPT_VITS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchatgpt_main.py
87 lines (74 loc) · 2.19 KB
/
chatgpt_main.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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
import os
import openai
openai.api_key = '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'
def QA():
'''使用环境变量加API
openai.api_key = os.getenv("OPENAI_API_KEY")'''
#直接加api
start_sequence = "\nA:"
restart_sequence = "\n\nQ: "
prompt = input(restart_sequence)
if prompt == 'quit':
return prompt
response = openai.Completion.create(
model="text-davinci-003",
prompt= prompt,
temperature=0,
max_tokens=150,
top_p=1,
frequency_penalty=0,
presence_penalty=0,
#stop=["\n"] 已它为截止输入的标记
)
print(start_sequence + response['choices'][0]['text'].strip())
return prompt
def chat():
start_sequence = "\nAI:"
restart_sequence = "\nHuman: "
prompt = input(restart_sequence)
if prompt == 'quit':
return prompt
response = openai.Completion.create(
model="text-davinci-003",
prompt=prompt,
temperature=0.1,
max_tokens=1500,
top_p=1,
frequency_penalty=0,
presence_penalty=0.6,
stop=[" Human:", " AI:"]
)
print(start_sequence + response['choices'][0]['text'].strip())
return prompt
#用这个
def friend_chat(all_text,prompt0,call_name = '南ことり'):
start_sequence = '\n'+str(call_name)+':'
restart_sequence = "\nYou: "
all_text = all_text + restart_sequence
if prompt0 == '':
prompt0 = input(restart_sequence) #当期prompt
if prompt0 == 'quit':
return prompt0
prompt = all_text + prompt0 + start_sequence
response = openai.Completion.create(
model="text-davinci-003",
prompt=prompt,
temperature=0.5,
max_tokens=1000,
top_p=1.0,
frequency_penalty=0.5,
presence_penalty=0.0,
stop=["\nYou:"]
)
audio_text = response['choices'][0]['text'].strip()
print(start_sequence + response['choices'][0]['text'].strip())
all_text = prompt + response['choices'][0]['text'].strip()
return prompt0,all_text,audio_text
if __name__ == '__main__':
#设置API不执行
all_text = input('输入初始设定文本:')
while 1 == 1:
resualt,all_text,audio_text = friend_chat(all_text,'')
# print(all_text)
if resualt == 'quit':
break