Spaces:
Sleeping
Sleeping
| import os | |
| import openai | |
| import streamlit as st | |
| # Set up OpenAI API key | |
| openai.api_key = os.getenv("OPENAI_KEY") | |
| # Supported languages | |
| languages = ['English', 'French', 'Spanish', 'Hindi', 'Punjabi'] | |
| # Streamlit app | |
| def main(): | |
| st.title("Language Translator") | |
| # User input for input language | |
| input_language = st.selectbox("Select Input Language", languages) | |
| # User input for output language | |
| output_language = st.selectbox("Select Output Language", languages) | |
| # Text input box for user to input text | |
| input_text = st.text_area("Enter the text to translate") | |
| if st.button("Translate"): | |
| if input_text.strip() == "": | |
| st.error("Please enter some text to translate.") | |
| elif input_language == output_language: | |
| st.warning("Input and output languages are the same. Please select different languages.") | |
| else: | |
| # Perform translation | |
| translation = translate_text(input_text, input_language, output_language) | |
| st.success("Translation:") | |
| st.write(translation) | |
| # Function to translate text using GPT-3.5 | |
| def translate_text(text, input_language, output_language): | |
| response = openai.ChatCompletion.create( | |
| model="gpt-3.5-turbo", | |
| messages=[ | |
| {"role": "system", "content": f"You translate user input from {input_language} to {output_language}"}, | |
| {"role": "user", "content": text} | |
| ], | |
| max_tokens=2000, | |
| temperature=0 | |
| ) | |
| translation = response.choices[0].message['content'].strip() | |
| return translation | |
| if __name__ == "__main__": | |
| main() | |