Gradio-Blocks/ML-Aided-Code-Analysis
4
1import gradio as gr2from src.utils import return_parse_tree, GenCode, Config3import logging4 5logging.basicConfig(level=logging.INFO)6logger = logging.getLogger(__name__)7 8 9 10logger.info("Loading classes into the memory....")11code_gen_class = GenCode(Config.code_gen_idt, gen_kwargs=Config.code_gen_config)12logger.info("Sucessfully loaded classes into the memory")13 14def code_gen(code_snippet:str) -> str:15 logger.info("Starting to generate code...")16 generated_code = code_gen_class(code_snippet)17 logger.info("Sucessfully generated code")18 19 return generated_code20 21def code_edit(code_snippet:str = "def dataset_name():\n return 'test'"):22 return code_snippet + "\n" + return_parse_tree(code_snippet)23 24demo = gr.Blocks(analytics_enabled=True)25with demo:26 gr.Markdown("""# Code Analysis \n ## Code Editor""")27 with gr.Row():28 input_editor = gr.Textbox(label="Code Editor",lines=10,interactive=True,placeholder="Use this as the main code editor ")29 button_gen = gr.Button(value="Complete Code")30 31 button_gen.click(code_gen,input_editor,input_editor)32 # iface = gr.Interface(title="Code Editor",fn=code_edit, inputs="text", outputs="text",examples=["def dataset_name():\n return 'test'"])33 # iface.launch()34 35demo.launch(debug=True)