modify: change batch message

This commit is contained in:
mkXultra 2024-08-16 14:18:26 +09:00
parent 0e2ed334f2
commit e6dc7f8824

View File

@ -98,7 +98,7 @@ class ChatGPTAPI(Base):
def rotate_model(self): def rotate_model(self):
self.model = next(self.model_list) self.model = next(self.model_list)
def create_messages(self, text): def create_messages(self, text, intermediate_messages=None):
content = self.prompt_template.format( content = self.prompt_template.format(
text=text, language=self.language, crlf="\n" text=text, language=self.language, crlf="\n"
) )
@ -107,6 +107,15 @@ class ChatGPTAPI(Base):
messages = [ messages = [
{"role": "system", "content": sys_content}, {"role": "system", "content": sys_content},
] ]
if intermediate_messages:
messages.extend(intermediate_messages)
messages.append({"role": "user", "content": content})
return messages
def create_context_messages(self):
messages = []
if self.context_flag: if self.context_flag:
messages.append({"role": "user", "content": "\n".join(self.context_list)}) messages.append({"role": "user", "content": "\n".join(self.context_list)})
messages.append( messages.append(
@ -115,11 +124,10 @@ class ChatGPTAPI(Base):
"content": "\n".join(self.context_translated_list), "content": "\n".join(self.context_translated_list),
} }
) )
messages.append({"role": "user", "content": content})
return messages return messages
def create_chat_completion(self, text): def create_chat_completion(self, text):
messages = self.create_messages(text) messages = self.create_messages(text, self.create_context_messages())
completion = self.openai_client.chat.completions.create( completion = self.openai_client.chat.completions.create(
model=self.model, model=self.model,
messages=messages, messages=messages,
@ -514,11 +522,6 @@ class ChatGPTAPI(Base):
return file_paths return file_paths
def upload_batch_file(self, file_path):
batch_input_file = self.openai_client.files.create(
file=open(file_path, "rb"), purpose="batch"
)
return batch_input_file.id
def batch(self): def batch(self):
self.rotate_model() self.rotate_model()
@ -560,6 +563,12 @@ class ChatGPTAPI(Base):
"prefix": self.book_name, "prefix": self.book_name,
} }
def upload_batch_file(self, file_path):
batch_input_file = self.openai_client.files.create(
file=open(file_path, "rb"), purpose="batch"
)
return batch_input_file.id
def batch_execute(self, file_id): def batch_execute(self, file_id):
current_time = time.strftime("%Y-%m-%d %H:%M:%S") current_time = time.strftime("%Y-%m-%d %H:%M:%S")
res = self.openai_client.batches.create( res = self.openai_client.batches.create(