"""Hugging Face Spaces entrypoint; deploy alongside model.py/generate.py/checkpoint/.""" import gradio as gr from pathlib import Path from generate import load,complete model,tokenizer=load(Path(__file__).resolve().parent,'cpu') def predict(language,prompt): if len(prompt)>6000:return 'Please shorten the prompt to 6,000 characters or less.' return complete(model,tokenizer,prompt,language,tokens=120) with gr.Blocks(title='CodeSprout 30M') as demo: gr.Markdown('# CodeSprout 30M\nExperimental code completion for HTML, JavaScript, Python and TypeScript. Small research checkpoint: outputs may be invalid. This is not a chat assistant.') language=gr.Dropdown(['html','javascript','python','typescript'],value='python',label='Language') prompt=gr.Textbox(value='def add(a, b):\n',lines=9,label='Code prefix') result=gr.Textbox(lines=12,label='Generated continuation') gr.Button('Complete code').click(predict,[language,prompt],result) demo.queue(max_size=16).launch()