diff --git a/modules/csv.py b/modules/csv.py index 12c4c38..1851b7b 100644 --- a/modules/csv.py +++ b/modules/csv.py @@ -669,57 +669,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/json.py b/modules/json.py index cda94d2..4f8e624 100644 --- a/modules/json.py +++ b/modules/json.py @@ -533,57 +533,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/kirikiri.py b/modules/kirikiri.py index 5a41e5f..99e5a3a 100644 --- a/modules/kirikiri.py +++ b/modules/kirikiri.py @@ -577,57 +577,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/nscript.py b/modules/nscript.py index fb406b2..6906f45 100644 --- a/modules/nscript.py +++ b/modules/nscript.py @@ -592,57 +592,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/renpy.py b/modules/renpy.py index 2b90209..131a45c 100644 --- a/modules/renpy.py +++ b/modules/renpy.py @@ -516,57 +516,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/rpgmakerace.py b/modules/rpgmakerace.py index 85cde7f..726b4dd 100644 --- a/modules/rpgmakerace.py +++ b/modules/rpgmakerace.py @@ -2597,57 +2597,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/rpgmakermvmz.py b/modules/rpgmakermvmz.py index c9c28dd..c04abe5 100644 --- a/modules/rpgmakermvmz.py +++ b/modules/rpgmakermvmz.py @@ -80,12 +80,12 @@ POSITION = 0 LEAVE = False # Dialogue / Scroll / Choices (Main Codes) -CODE401 = False -CODE405 = False -CODE102 = False +CODE401 = True +CODE405 = True +CODE102 = True # Optional -CODE101 = False # Turn this one when names exist in 101 +CODE101 = True # Turn this one when names exist in 101 CODE408 = False # Warning, translates comments and can inflate costs. # Variables @@ -2553,57 +2553,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/rpgmakerplugin.py b/modules/rpgmakerplugin.py index 407ec9c..25c679e 100644 --- a/modules/rpgmakerplugin.py +++ b/modules/rpgmakerplugin.py @@ -805,57 +805,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/text.py b/modules/text.py index 116dc5b..8be45de 100644 --- a/modules/text.py +++ b/modules/text.py @@ -505,57 +505,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/tyrano.py b/modules/tyrano.py index fd1a3c4..a71e332 100644 --- a/modules/tyrano.py +++ b/modules/tyrano.py @@ -594,57 +594,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/wolf.py b/modules/wolf.py index f09eb01..837c0ef 100644 --- a/modules/wolf.py +++ b/modules/wolf.py @@ -299,16 +299,13 @@ def searchCodes(events, pbar, jobList, filename): while i < len(codeList): ### Event Code: 101 Message if codeList[i]["code"] == 101 and CODE101 == True: - speakerRegex = r"@\d+\n(.*):\n" - textRegex = r"@?\d*\n?\u3000*([\w\W]+)\n?" - # Grab String jaString = codeList[i]["stringArgs"][0] speaker = "" # Grab Speaker if ":\n" in jaString: - match = re.search(speakerRegex, jaString) + match = re.search(r"@\d+\n(.*):\n", jaString) if match: # TL Speaker response = getSpeaker(match.group(1)) @@ -318,10 +315,9 @@ def searchCodes(events, pbar, jobList, filename): # Set nametag and remove from string codeList[i]["stringArgs"][0] = codeList[i]["stringArgs"][0].replace(match.group(1), speaker) - jaString = jaString.replace(match.group(0), "") # Grab Only Text - match = re.search(textRegex, jaString) + match = re.search(r"\n\s+([\w\W\n]+)", codeList[i]["stringArgs"][0]) if match: jaString = match.group(1) initialJAString = jaString @@ -822,14 +818,14 @@ def searchDB(events, pbar, jobList, filename): npcList[1].pop(0) # Grab Scenario - if "UI--" in table["name"] and SCENARIOFLAG == True: + if table["name"] == "回想イベントテーブル" and SCENARIOFLAG == True: for scenario in table["data"]: dataList = scenario["data"] # Parse for j in range(len(dataList)): # Name - if "NULL" in dataList[j].get("name"): + if "回想テキスト" in dataList[j].get("name"): if dataList[j].get("value"): jaStringList = dataList[j].get("value").split("\r\nPFD\r\n") for jaString in jaStringList: @@ -846,42 +842,6 @@ def searchDB(events, pbar, jobList, filename): translatedText = textwrap.fill(translatedText, 1000) dataList[j].update({"value": dataList[j].get("value").replace(jaString, translatedText)}) - # Description 1 - if "説明文1" in dataList[j].get("name"): - if dataList[j].get("value"): - jaStringList = dataList[j].get("value").split("\r\nPFD\r\n") - for jaString in jaStringList: - # Pass 1 (Grab Data) - if setData == False: - jaString = jaString.replace("\n", " ") - jaString = jaString.replace("\r", "") - scenarioList[1].append(jaString) - - # Pass 2 (Set Data) - else: - translatedText = scenarioList[1][0] - scenarioList[1].pop(0) - translatedText = textwrap.fill(translatedText, 30) - dataList[j].update({"value": dataList[j].get("value").replace(jaString, translatedText)}) - - # Description 2 - if "説明文2" in dataList[j].get("name"): - if dataList[j].get("value"): - jaStringList = dataList[j].get("value").split("\r\nPFD\r\n") - for jaString in jaStringList: - # Pass 1 (Grab Data) - if setData == False: - jaString = jaString.replace("\n", " ") - jaString = jaString.replace("\r", "") - scenarioList[2].append(jaString) - - # Pass 2 (Set Data) - else: - translatedText = scenarioList[2][0] - scenarioList[2].pop(0) - translatedText = textwrap.fill(translatedText, 30) - dataList[j].update({"value": dataList[j].get("value").replace(jaString, translatedText)}) - # Grab Options if table["name"] == "選択肢説明" and OPTIONSFLAG == True: for option in table["data"]: @@ -1717,7 +1677,7 @@ def searchDB(events, pbar, jobList, filename): translate = True # SCENARIO - if scenarioList[0] or scenarioList[1]: + if len(scenarioList[0]) > 0: # Progress Bar total = 0 for scenarioArray in scenarioList: @@ -2283,36 +2243,33 @@ def translateText(system, user, history, penalty, format, model=MODEL): def cleanTranslatedText(translatedText): - if translatedText: - placeholders = { - f"{LANGUAGE} Translation: ": "", - "Translation: ": "", - "っ": "", - "〜": "~", - "ッ": "", - "。": ".", - "「": '\\"', - "」": '\\"', - "- ": "-", - "—": "―", - "】": "]", - "【": "[", - "é": "e", - "ō": "o", - "Placeholder Text": "", - # Add more replacements as needed - } - for target, replacement in placeholders.items(): - translatedText = translatedText.replace(target, replacement) + placeholders = { + f"{LANGUAGE} Translation: ": "", + "Translation: ": "", + "っ": "", + "〜": "~", + "ッ": "", + "。": ".", + "「": '\\"', + "」": '\\"', + "- ": "-", + "—": "―", + "】": "]", + "【": "[", + "é": "e", + "ō": "o", + "Placeholder Text": "", + # Add more replacements as needed + } + for target, replacement in placeholders.items(): + translatedText = translatedText.replace(target, replacement) - # Remove Repeating Characters - pattern = re.compile(r"(.)\s*\1(?:\s*\1){" + str(20 - 1) + r",}") - translatedText = pattern.sub(lambda match: match.group(0).replace(" ", "")[:20], translatedText) + # Remove Repeating Characters + pattern = re.compile(r"(.)\s*\1(?:\s*\1){" + str(20 - 1) + r",}") + translatedText = pattern.sub(lambda match: match.group(0).replace(" ", "")[:20], translatedText) - # Elongate Long Dashes (Since GPT Ignores them...) - translatedText = elongateCharacters(translatedText) - else: - print(translatedText) + # Elongate Long Dashes (Since GPT Ignores them...) + translatedText = elongateCharacters(translatedText) return translatedText @@ -2422,57 +2379,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/modules/wolf2.py b/modules/wolf2.py index 76279eb..dd17d1f 100644 --- a/modules/wolf2.py +++ b/modules/wolf2.py @@ -544,57 +544,54 @@ def translateGPT(text, history, fullPromptFlag): # Translating response = translateText(system, user, history, 0.05, format) + # AI Refused. Try Again + if not response: + response = translateText(system, user, history, 0.05, format, MODEL) + if not response: + continue + # Set Tokens translatedText = response.choices[0].message.content - - # AI Refused, Try Again - if not translatedText: - response = translateText(system, user, history + "You Translate ALL content", 0.1, format) - - # Report Tokens totalTokens[0] += response.usage.prompt_tokens totalTokens[1] += response.usage.completion_tokens # Check Translation - if translatedText: - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - # Mismatch. Try Again - response = translateText(system, user, history, 0.05, format, MODEL) - translatedText = response.choices[0].message.content - totalTokens[0] += response.usage.prompt_tokens - totalTokens[1] += response.usage.completion_tokens + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + # Mismatch. Try Again + response = translateText(system, user, history, 0.05, format, MODEL) + translatedText = response.choices[0].message.content + totalTokens[0] += response.usage.prompt_tokens + totalTokens[1] += response.usage.completion_tokens - # Formatting - translatedText = cleanTranslatedText(translatedText) - if isinstance(tItem, list): - extractedTranslations = extractTranslation(translatedText, True) - if extractedTranslations == None or len(tItem) != len(extractedTranslations): - mismatch = True # Just here for breakpoint - logFile.write(f"Input:\n{subbedT}\n") - logFile.write(f"Output:\n{translatedText}\n") + # Formatting + translatedText = cleanTranslatedText(translatedText) + if isinstance(tItem, list): + extractedTranslations = extractTranslation(translatedText, True) + if extractedTranslations == None or len(tItem) != len(extractedTranslations): + mismatch = True # Just here for breakpoint + logFile.write(f"Input:\n{subbedT}\n") + logFile.write(f"Output:\n{translatedText}\n") - # Set if no mismatch - if mismatch == False: - tList[index] = extractedTranslations - history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list - else: - history = text[-MAXHISTORY:] - mismatch = False - if FILENAME not in MISMATCH: - MISMATCH.append(FILENAME) - - # Update Loading Bar - with LOCK: - if PBAR is not None: - PBAR.update(len(tItem)) + # Set if no mismatch + if mismatch == False: + tList[index] = extractedTranslations + history = extractedTranslations[-MAXHISTORY:] # Update history if we have a list else: - # Ensure we're passing a single string to extractTranslation - tList[index] = translatedText.replace("Placeholder Text", "") + history = text[-MAXHISTORY:] + mismatch = False + if FILENAME not in MISMATCH: + MISMATCH.append(FILENAME) + + # Update Loading Bar + with LOCK: + if PBAR is not None: + PBAR.update(len(tItem)) else: - PBAR.write(f"AI Refused:{tItem}\n") + # Ensure we're passing a single string to extractTranslation + tList[index] = translatedText.replace("Placeholder Text", "") # Combine if multilist if isinstance(tList[0], list): diff --git a/vocab.txt b/vocab.txt index cf310a3..34db828 100644 --- a/vocab.txt +++ b/vocab.txt @@ -1,18 +1,16 @@ Here are some vocabulary and terms so that you know the proper spelling and translation. ``` # Game Characters -ジロウ (Jirou) - Male -サクラ (Sakura) - Female -ゼフ (Zeff) - Male -ヨモダ (Yomada) - Male -グダ (Guda) - Male -フジワラ (Fujiwara) - Male -ナオ (Nao) - Female -タジ (Taji) - Male -カリン (Karin) - Female -セリナ (Serina) - Female -ラグ (Ragu) - Male -ハッカイ (Hakkai) - Male +アイ (Ai) - Female +シオン (Sion) - Female +エリス (Eris) - Female +杉浦 (Sugiura) - Female +獏木 (Bakuki) - Female +千里 (Chisato) - Female +ハルカ (Haruka) - Female +間根山 (Manemaya) - Female +ミズキ (Mizuki) - Female +ツヨシ (Tsuyoshi) - Male # Lewd Terms マンコ (pussy)