CodeTranslator / app.py
brackozi's picture
Create app.py
ccfb540
raw
history blame
1.22 kB
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()