File size: 1,939 Bytes
d985074 e43bdda 7a623cb e43bdda 7a623cb e43bdda 41e088c e43bdda 69395bf 6a31a1c e523e8e 6a31a1c e523e8e 6a31a1c e523e8e 6a31a1c 69395bf 6a31a1c d985074 e523e8e 1bf0303 a8597aa dbe6553 725bed9 a8597aa ae07b8b dbe6553 725bed9 dbe6553 ae07b8b d985074 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
import gradio as gr
import os
import time
import asyncio
from pipeline import PromptEnhancer
async def advancedPromptPipeline(InputPrompt, model="gpt-4o-mini", temperature=0.0):
if model == "gpt-4o":
i_cost=5/10**6
o_cost=15/10**6
elif model == "gpt-4o-mini":
i_cost=0.15/10**6
o_cost=0.6/10**6
enhancer = PromptEnhancer(model, temperature)
start_time = time.time()
advanced_prompt = await enhancer.enhance_prompt(InputPrompt, perform_eval=False)
elapsed_time = time.time() - start_time
return {
#"model": model,
"elapsed_time": elapsed_time,
#"prompt_tokens": enhancer.prompt_tokens,
#"completion_tokens": enhancer.completion_tokens,
"approximate_cost": (enhancer.prompt_tokens*i_cost)+(enhancer.completion_tokens*o_cost),
#"inout_prompt": input_prompt,
"advanced_prompt": advanced_prompt["advanced_prompt"],
}
#return advanced_prompt["advanced_prompt"]
demo = gr.Interface(fn=advancedPromptPipeline,
inputs=[
gr.Textbox(lines=12, placeholder="Enter your prompt", label="Input Prompt", min_width=100),
gr.Radio(["gpt-4o-mini", "gpt-4o"], value="gpt-4o-mini", label="Select Model", info="Recommended: gpt-4o-mini"),
gr.Slider(minimum=0.0, maximum=1.0, value=0.0, step=0.1, label="Temperature", info="Recommended: Temperature=0.0")
],
outputs=[
gr.Textbox(lines=23, label="Advanced Prompt", show_copy_button=True, autoscroll=False, min_width=220),
],
title="Advanced Prompt Generator",
description="This tool will enhance any given input for the optimal output!",
theme="base"
)
if __name__ == "__main__":
demo.launch() |