自動ログの追加。不要な関数の削除

main
NON906 2024-01-14 21:50:48 +09:00
parent 60592ff571
commit f075fc7829
3 changed files with 8 additions and 65 deletions

View File

@ -48,36 +48,10 @@ class ChatGptApi:
def set_log(self, log_string):
self.chatgpt_messages = json.loads(log_string)
def load_log(self, log):
if log is None:
return False
try:
self.log_file_name = log
if os.path.isfile(log):
with open(log, 'r', encoding='UTF-8') as f:
self.chatgpt_messages = json.loads(f.read())
return True
except:
pass
return False
def get_log(self):
return json.dumps(self.chatgpt_messages)
def write_log(self, file_name=None):
if file_name is None:
file_name = self.log_file_name
if file_name is None:
return
with open(file_name + '.tmp', 'w', encoding='UTF-8') as f:
f.write(self.get_log())
if os.path.isfile(file_name):
os.rename(file_name, file_name + '.prev')
os.rename(file_name + '.tmp', file_name)
if os.path.isfile(file_name + '.prev'):
os.remove(file_name + '.prev')
def send(self, content, write_log=False):
def send(self, content):
if self.chatgpt_response is not None:
return None
self.chatgpt_messages.append({"role": "user", "content": content})
@ -112,17 +86,13 @@ class ChatGptApi:
else:
self.chatgpt_messages.append({"role": "assistant", "content": result + "\n(Generated image by the following prompt: " + prompt + ")"})
#print(result, file=sys.stderr)
if write_log:
self.write_log()
if ignore_result:
result = None
return result, prompt
def remove_last_conversation(self, result=None, write_log=False):
def remove_last_conversation(self, result=None):
if result is None or self.chatgpt_messages[-1]["content"] == result:
self.chatgpt_messages = self.chatgpt_messages[:-2]
if write_log:
self.write_log()
def clear(self):
self.chatgpt_messages = []

View File

@ -180,18 +180,6 @@ If you understand, please reply to the following:<|end_of_turn|>
elif chatgpt_messages['log_version'] == 2:
self.memory.chat_memory = messages_from_dict(chatgpt_messages['messages'])
def load_log(self, log):
if log is None:
return False
try:
self.log_file_name = log
if os.path.isfile(log):
with open(log, 'r', encoding='UTF-8') as f:
self.set_log(f.read())
return True
except:
pass
return False
def get_log(self):
if self.memory is None:
@ -214,20 +202,7 @@ If you understand, please reply to the following:<|end_of_turn|>
# dicts['messages'] = messages_to_dict(self.memory.chat_memory)
#return json.dumps(dicts)
def write_log(self, file_name=None):
if file_name is None:
file_name = self.log_file_name
if file_name is None:
return
with open(file_name + '.tmp', 'w', encoding='UTF-8') as f:
f.write(self.get_log())
if os.path.isfile(file_name):
os.rename(file_name, file_name + '.prev')
os.rename(file_name + '.tmp', file_name)
if os.path.isfile(file_name + '.prev'):
os.remove(file_name + '.prev')
def send(self, content, write_log=False):
def send(self, content):
if not self.is_inited:
self.init_model()
@ -244,21 +219,16 @@ If you understand, please reply to the following:<|end_of_turn|>
return_message = result
return_prompt = None
if write_log:
self.write_log()
self.is_sending = False
return return_message, return_prompt
def remove_last_conversation(self, result=None, write_log=False):
def remove_last_conversation(self, result=None):
if result is None or self.memory.chat_memory.messages[-1].content == result:
if len(self.memory.chat_memory.messages) > 2:
self.memory.chat_memory.messages = self.memory.chat_memory.messages[:-2]
else:
self.memory.chat_memory.messages.clear()
if write_log:
self.write_log()
def clear(self):
self.memory.chat_memory.clear()

View File

@ -311,6 +311,8 @@ def on_ui_tabs():
chat_history = chat_history[:-1]
chat_history = append_chat_history(chat_history, text_input_str, chatgpt_generate_result, chatgpt_generate_prompt)
chatgpt_save('_backup', chat_history)
yield chat_history
def chatgpt_generate_finished():
@ -380,7 +382,8 @@ def on_ui_tabs():
with open(file_name, 'w', encoding='UTF-8') as f:
json.dump(json_dict, f)
print(file_name + ' is saved.')
if file_name != '_backup':
print(file_name + ' is saved.')
save_files = [os.path.basename(full_path) for full_path in glob.glob(save_dir + '/*')]
save_file_path = gr.update(choices=save_files)