import os import openai import gradio as gr from gradio.inputs import Dropdown, Snippet from gradio.outputs import Snippet # Read the OpenAI API key from the environment variable openai.api_key = os.environ["OPENAI_API_KEY"] def translate_code(code, from_language, to_language): prompt = f"Translate the following {from_language} code to {to_language}:\n{code}\n---\nTranslated code:\n" response = openai.Completion.create( engine="davinci-codex", prompt=prompt, max_tokens=2000, n=1, stop=None, temperature=0.5, ) translated_code = response.choices[0].text.strip() return translated_code languages = [ "Python", "Javascript", "PHP", "Java", "Ruby", "Golang", "C#", "SQL", "Perl", ] iface = gr.Interface( fn=translate_code, inputs=[ Snippet(lines=20, label="Original Code"), Dropdown(choices=languages, label="From Language"), Dropdown(choices=languages, label="To Language"), ], outputs=Snippet(lines=20, label="Translated Code"), title="Code Translator", description="Translate code between different programming languages using OpenAI.", ) iface.launch()