import streamlit as st from langchain_openai import ChatOpenAI from langchain_core.prompts import ChatPromptTemplate import os st.title("Translation Using OpenAI") # Language options for the dropdown menus languages = ["English", "Hindi", "Telugu", "Malayalam", "Tamil", "Punjabi"] # Dropdown menu for selecting input language input_language = st.selectbox("Select your input language", languages) # Text area for input text input_text = st.text_area(f"Write your text in {input_language}") # Dropdown menu for selecting output language output_language = st.selectbox("Select your output language", languages) # Set the environment variable for the API key os.environ['GOOGLE_API_KEY'] = os.getenv("geminiapi_key") # Initialize the OpenAI language model llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0, max_tokens=80) # Create the prompt template prompt = ChatPromptTemplate.from_messages([ ("system", "You are a good assistant for translating from {il} to {ol}."), ("human", "{i}") ]) # Define the translation chain chain = prompt | llm # Function to perform the translation def translate(input_text, input_language, output_language): response = chain.invoke({"il": input_language, "ol": output_language, "i": input_text}) return response.content # Submit button if st.button("Submit"): if input_text: translation = translate(input_text, input_language, output_language) st.write("Translated Text:", translation) else: st.write("Please enter text to translate.")