hra's picture
Update app.py
466bb4c
raw
history blame
2.75 kB
import json
import requests
import gradio as gr
import random
import time
import os
import datetime
from datetime import datetime
#print('for update')
HRA_TOKEN=os.getenv("HRA_TOKEN")
from langchain.agents import load_tools, Tool, initialize_agent
from langchain.llms import OpenAI
from langchain.agents import ZeroShotAgent, Tool, AgentExecutor
from langchain.agents import initialize_agent, Tool
from langchain import LLMChain
from langchain import PromptTemplate
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
url_decodemprompts='https://us-central1-createinsightsproject.cloudfunctions.net/gethrahfprompts'
data={"prompt_type":'chatgpt_blog',"hra_token":HRA_TOKEN}
try:
r = requests.post(url_decodemprompts, data=json.dumps(data), headers=headers)
except requests.exceptions.ReadTimeout as e:
print(e)
#print(r.content)
prompt=str(r.content, 'UTF-8')
print(prompt)
template=prompt.split('SEPERATOR')[0]
querieslist=prompt.split('SEPERATOR')[1].split(',')
def getblog(text_inp1,text_inp2):
print(text_inp1,text_inp2)
print(datetime.today().strftime("%d-%m-%Y"))
if text_inp2!='':
OPEN_API_TOKEN = text_inp2
llm = OpenAI(temperature=0)
prompt_template = PromptTemplate(
input_variables=["query"],
template=template
)
bloglist=[]
for each in querieslist:
query = each
llm_chain = LLMChain(prompt=prompt_template, llm=llm,verbose=True)
result=llm_chain.run(query)
#print(result)
bloglist.append(result)
blog="Title:"+bloglist[len(bloglist)-1]+"\n\n"
for i in range(len(bloglist)-1):
temp=querieslist[i]+'\n'+bloglist[i]+'\n\n'
blog+=temp
print(blog)
return(blog)
else:
return "Enter OpenAPI key"
with gr.Blocks() as demo:
with gr.Row():
gr.Markdown("<h1><center>Everybody Can Blog</center></h1>")
gr.Markdown(
"""Everybody can blog. Just enter a topic/ keyword & get a full blog from ChatGPT model. See examples for guidance. Experience the power of Prompt Engineering."""
)
with gr.Row():
with gr.Column():
textbox1 = gr.Textbox(placeholder="Enter topic/ keyword to generate blog...", lines=1,label='Topic')
textbox2 = gr.Textbox(placeholder="Enter OpenAPI Key...", lines=1,label='OpenAPI Key')
with gr.Column():
btn = gr.Button("Generate")
output1 = gr.Textbox(lines=20,label='Blog')
btn.click(getblog,inputs=[textbox1,textbox2], outputs=[output1])
examples = gr.Examples(examples=['5G','Minimalism','Rock music'],
inputs=[textbox1])
demo.launch()