File size: 1,682 Bytes
d985074 e43bdda 7a623cb e43bdda 7a623cb e43bdda 41e088c e43bdda 69395bf 6a31a1c e523e8e 6a31a1c e523e8e 6a31a1c e523e8e 6a31a1c 69395bf 6a31a1c d985074 e523e8e 1bf0303 a8597aa 6a31a1c 7a623cb a8597aa ae07b8b 6a31a1c 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 |
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=14, placeholder="Enter your prompt", label="Input Prompt", min_width=100),
gr.Radio(["gpt-4o-mini", "gpt-4o"], value="gpt-4o-mini", label="Select Model"),
gr.Slider(minimum=0.0, maximum=1.0, value=0.0, step=0.1, label="Temperature")
],
outputs=[
gr.Textbox(lines=25, label="Advanced Prompt", show_copy_button=True, autoscroll=False, min_width=220),
]
)
if __name__ == "__main__":
demo.launch() |