import openai import os import time openai.api_key = "sk-34567876543456787654567876556787654567876567898765456789" model_gpt = "gpt-3.5-turbo" # Лучшее решение для перевода. def get_mes_translate_hypno_v1(text, dct = {}): if dct == {}: dct = { 'Bambi': 'Бэмби', 'Bambi sleep': 'Бэмби спи', 'good girl': 'хорошая девочка', 'your': 'Ваш', 'you': 'Вы', 'She': 'Она', 'bubble': 'пузырик', 'bimbo doll': 'кукла-бимбо', 'bimbo': 'бимбо', 'mind': 'разум', 'uniform': 'наряд', 'your old self': 'Ваше старое "Я"', } str_dct = f'Для перевода текста используйте следующий перевод терминов:{dct}' messages = [ {"role": "system", "content": "Вы помощник гипнотерапевта, специализирующийся на бимбофикации, который переводит кадры гипнотического сценария с английского на русский язык."}, {"role": "user", "content": f"Переведите следующий текст с английского на русский:\n'{text}'\n" + str_dct} ] # print(messages) return messages # Лучшее решение для разделения на кадры. def get_mes_split_frames_v2(text): messages = [ {"role": "system", "content": "Вы помощник гипнотерапевта, специализирующийся на бимбофикации, который разделяет сплошной текст гипнотического сценария на кадры."}, {"role": "user", "content": f"Выполните разделение следующего текста гипнотического сценария на кадры:\n'{text}'\n"} ] return messages def get_mes_analisys_frames_v1(text): messages = [ {"role": "system", "content": "Вы помощник гипнотерапевта, специализирующийся на бимбофикации, который выполняет анализ каждого кадра гипнотического сценария."}, {"role": "user", "content": f"Выполните анализ кадра гипнотического сценария и опишите последствия для субъекта:\n'{text}'\n"} ] return messages def make_completion(model, messages): return openai.ChatCompletion.create(model=model, messages=messages) ######################## # Перевод одного абзаца (кадра) fileIn = 'scripts/BS EN/50 Harmony 1.txt' fileOut = 'scripts/BS RU/50 Harmony 1.txt' if not os.path.exists(fileOut): with open(fileOut, 'w', encoding='utf-8') as fo: pass with open(fileIn, 'r', encoding='utf-8') as fi: text_fi = fi.read().rstrip() with open(fileOut, 'r', encoding='utf-8') as fo: text_fo = fo.read().rstrip() text_fi = text_fi.split('\n') text_fo = text_fo.split('\n') if len(text_fo) == 1 and (text_fo[0] == ''): i = 0 else: i = len(text_fo) frame_en = text_fi[i] print() print(frame_en) print() completion = make_completion(model_gpt, get_mes_translate_hypno_v1(frame_en)) ### Тут заменить функцию print(completion.usage) print(completion.choices[0].finish_reason) frame_ru = completion.choices[0].message.content print(frame_ru) frame_ru = frame_ru.replace('\n', '\t') if i == 0: res = frame_ru else: res = '\n'.join(text_fo) + '\n' + frame_ru with open(fileOut, 'w', encoding='utf-8') as fo: fo.write(res)