Spaces:
Build error
Build error
| import streamlit as st | |
| import json | |
| from pathlib import Path | |
| import requests | |
| from gpt4free import you, theb | |
| from streamlit_star_rating import st_star_rating | |
| import requests | |
| import time | |
| from io import StringIO | |
| st.text('') | |
| st.title("Code Explainer") | |
| st.text('') | |
| source = st.radio("How would you like to start? Choose an option below", | |
| ("I want to input some text", "I want to upload a file")) | |
| st.text('') | |
| s_example = """ | |
| class Solution(object): | |
| def isValid(self, s): | |
| stack = [] | |
| mapping = {")": "(", "}": "{", "]": "["} | |
| for char in s: | |
| if char in mapping: | |
| top_element = stack.pop() if stack else '#' | |
| if mapping[char] != top_element: | |
| return False | |
| else: | |
| stack.append(char) | |
| return not stack | |
| """ | |
| if source == 'I want to input some text': | |
| input_su = st.text_area("Use the example below or input your own code with appropriate indentations)", value=s_example, max_chars=10000, height=330) | |
| if st.button('Explain Code'): | |
| with st.spinner('Processing...'): | |
| time.sleep(2) | |
| st.markdown('___') | |
| prompt=f"Explain this code. Lets think Step by step. : {input_su}" | |
| response = [] | |
| for token in theb.Completion.create(prompt): | |
| response.append(print(token, end='', flush=True)) | |
| st.write('Results!') | |
| st.write("".join(response)) | |
| stars = st_star_rating("How satisfied are you with the response?", 5, 0, 40) | |
| st.balloons() | |
| if source == 'I want to upload a file': | |
| file = st.file_uploader('Upload your file here',type=['txt']) | |
| if file is not None: | |
| with st.spinner('Converting your code to explanations...'): | |
| time.sleep(2) | |
| stringio = StringIO(file.getvalue().decode("utf-8")) | |
| string_data = stringio.read() | |
| time.sleep(2) | |
| st.markdown('___') | |
| response = you.Completion.create( | |
| prompt=f"Explain this code. Lets think Step by step : {string_data}" | |
| ) | |
| st.write(response.text) | |
| stars = st_star_rating("How satisfied are you with the response?", 5, 0, 40) | |
| st.caption("") | |
| st.balloons() |