demo_1 / app.py
Sibanjan's picture
Update app.py
ee7e1c2
import openai
import gradio as gr
import os
open_ai_key = os.environ["open_ai_key"]
openai.api_key = open_ai_key
def openai_chat(prompt):
completion = openai.completions.create(
model="text-davinci-003",
prompt=prompt,
max_tokens=2048,
temperature=0.5,
top_p=1,
frequency_penalty=0,
presence_penalty=0
)
message = completion.choices[0].text
return message.strip()
def build_type_1(content_url, Email_Type, industry,job_role,prospect_context):
return f"Write a {Email_Type} email to sell Bluemetra solutions to a prospect in {industry} based on their information extracted from {prospect_context} by analyzing and summarizing this content {content_url} and is relevant for job {job_role}"
def build_type_2(content_url, Email_Type, industry,job_role,prospect_context):
return f"Write a {Email_Type} email to sell Bluemetra solutions to a prospect in {industry} based on their information extracted from {prospect_context} by analyzing and summarizing this content {content_url} and is relevant for job {job_role}.Start with congratulating {job_role} for the new role"
def call_email(Email_Type,industry,content_url,job_role_change, job_role,prospect_context, history=[]):
if job_role_change=="Yes":
input_agg = build_type_2(content_url,Email_Type, industry,job_role,prospect_context)
elif job_role_change=="No":
input_agg = build_type_1(content_url,Email_Type, industry,job_role,prospect_context)
print(input_agg)
output = openai_chat(input_agg)
history=[]
history.append((Email_Type, output))
return history, history
gr.Interface(fn = call_email,
inputs = [gr.Radio(["First Touch", "Persuasive", "Followup","Event Invitation","New Launch Communication"],value="First Touch"),"text","text",gr.Dropdown(["Yes", "No"],value="No"),"text",'text','state'],
outputs = ["chatbot",'state']).launch(debug = True)
gr.launch(share=True)