import streamlit as st def about(): st.title("About Prompt easz") col1, col2 = st.columns([2, 1]) # Adjust the ratio as needed with col1: st.write(""" **Prompt easz** is a prompt converter built based on sentence transformers. It helps in tuning prompts based on defined styles such as ELI5, chain of thoughts, role play, etc. This tool is designed to make learning new topics less overwhelming by providing tailored prompts. """) st.header("What It Does") st.write(""" Though we can use ChatGPT to get responses, sometimes the generated responses can be overwhelming, especially when learning a new topic. Prompt easz helps by: - Converting user prompts to vector embeddings using a sentence transformer. - Finding cosine similarity between the user's prompt and a set of predefined prompts. - Suggesting an updated prompt based on this similarity. - Allowing users to pick the prompt strength (low to high). - Providing predefined categories and identifying user question keywords accordingly. - Offering flexibility for users to pick their own style, making the prompt generator customizable. """) st.header("Prompt Types and Categories") st.write(""" - 10 main prompt types (e.g., ELI5, Chain-of-Thought, Role Play) - Each prompt type has 3-4 variations - 10 predefined categories (e.g., Programming Platforms, Data Science) - Approximately 32 total prompt variations - Around 320 possible combinations of prompt styles and categories """) st.header("Theory") st.write(""" Let's dig into the theory of sentence transformers in three steps: 1. **What are they?** - Sentence transformers are alternatives built to replace RNNs (Recurrent Neural Networks). 2. **Architecture:** - They use the encoder part of the transformer architecture to convert input into embeddings (context vectors). For example, BART. - The model used in Prompt easz is developed by Google: all-MiniLM-L6-v2. 3. **Use Cases:** - Used for Q&A, sentence translation, semantic search, clustering, and semantic textual similarity tasks. """) st.header("Pros and Cons") col1_1, col1_2 = st.columns(2) with col1_1: st.subheader("Pros") st.write(""" - Generates prompt styles based on predefined categories. - Customizable by the user. """) with col1_2: st.subheader("Cons") st.write(""" - Limited to a few categories. - Does not auto-correct lexicon and grammar mistakes. - Potential for more diverse prompt styles. - Can be further extended and retrained based on user feedback. """) with col2: st.image("IMG_0652.jpg", width=600) if __name__ == "__main__": about()