|
import os |
|
|
|
import gradio as gr |
|
from generate_text import GenerateStyleText |
|
|
|
|
|
def process(model, key, repo, example, prompt): |
|
set_key(key) |
|
generate_text = GenerateStyleText(example=example, prompt=prompt) |
|
if model == "HugginFaceHub": |
|
model = repo |
|
generate_text.set_imp_llm(model) |
|
return generate_text.run() |
|
|
|
|
|
|
|
def set_key(key): |
|
os.environ['OPENAI_API_KEY'] = key |
|
os.environ['HUGGINGFACEHUB_API_TOKEN'] = key |
|
os.environ['ANTHROPIC_API_KEY'] = key |
|
|
|
|
|
title = "StyleScribble Demo" |
|
description = "This is a demo of StyleScribble the AI powered app that generates text in your writing style, " \ |
|
"you can learn more and sign-up for full launch here: https://stylescribble.fly.dev" |
|
|
|
model_c = gr.Dropdown(choices=["GPT3", "GPT4", "Claude", "HugginFaceHub"], label="Model", value="GPT3") |
|
key_c = gr.Textbox(label="API Key") |
|
repo_c = gr.Textbox(label="HF Repo(if selected HugginFaceHub as model)") |
|
example_c = gr.Textbox(label="Example Writing:", lines=15) |
|
prompt_c = gr.Textbox(label="Prompt:", lines=5) |
|
output = gr.Textbox(label="Generated Text:", lines=39) |
|
demo = gr.Interface(process, [model_c, key_c, repo_c, example_c, prompt_c], output, title=title, description=description) |
|
|
|
demo.launch() |
|
|