import gradio as gr import subprocess import openai import time import re def translate(text_input, openapi_key): openai.api_key = openapi_key text_list = text_input.split('\n')[8:] print(text_list) reply = [] for i in range(0,len(text_list)+9,10): content = """What do these sentences about Hugging Face Transformers (a machine learning library) mean in Korean? Please do not translate the word after a πŸ€— emoji as it is a product name. Please ignore the video and image and translate only the sentences I provided. Ignore the contents of the iframe tag. ```md %s"""%'\n'.join(text_list[i:i+10]) chat = openai.ChatCompletion.create( model = "gpt-3.5-turbo-0301", messages=[ {"role": "system", "content": content},]) print("질문") print(content) print("응닡") print(chat.choices[0].message.content) reply.append(chat.choices[0].message.content) time.sleep(20) return reply inputs = [ gr.inputs.Textbox(lines=2, label="Input Open API Key"), gr.inputs.File(label="Upload MDX File") ] outputs = gr.outputs.Textbox(label="Translation") def translate_with_upload(text, file): openapi_key = text if file is not None: text_input = file.read().decode('utf-8') # ν…μŠ€νŠΈμ—μ„œ μ½”λ“œ 블둝을 μ œκ±°ν•©λ‹ˆλ‹€. text_input = re.sub(r'```.*?```', '', text_input, flags=re.DOTALL) text_input = re.sub(r'^\|.*\|$\n?', '', text_input, flags=re.MULTILINE) # ν…μŠ€νŠΈμ—μ„œ 빈 쀄을 μ œκ±°ν•©λ‹ˆλ‹€. text_input = re.sub(r'^\n', '', text_input, flags=re.MULTILINE) text_input = re.sub(r'\n\n+', '\n\n', text_input) else: text_input = "" return translate(text_input, openapi_key) prompt_translate = gr.Interface( fn=translate_with_upload, inputs=inputs, outputs=outputs, title="ChatGPT Korean Prompt Translation", description="Translate your text into Korean using the GPT-3 model." ) prompt_translate.launch()