teli168's picture
Update app.py
b284b2b
import gradio as gr
import os
import openai
prompt = """
假设你是一个自媒体博主,要根据用户的输入产品关键词,你要写一篇200字口语化小短文,每句话的名词后添加对应的emoj表情,每句末尾添加<br>。直接说好吃或推荐购买打0分,需要用间接性的方式表达。可以使用绝对化的语气、数字化或夸张的表达方式,以及侧面暗示和情感肯定的方式。
你有两个数据:absolute_intention = ["紧迫感","绝对化的语气","数字化","夸张","假设未来没有","隐喻","比喻"] socail_intention = [ "证明受到其他人喜爱", "消费者意见领袖的情感肯定","侧面暗示","想象未来","五官感觉视觉化","情感"]
你按照下面的案例进行思考。
案例是:
用户输入:荷氏薄荷糖 提神
chatbot思考: 分析产品:产品是荷氏薄荷糖,提神是痛点。产品和痛点之间的因果关系是产品是通过薄荷糖入口很凉快让用户提神的,凉快是产品特点。使用场景是人感觉很疲惫困意时候,比如开车、上课、备考、上班,定位可能是帮助用户抵抗困意的糖果,消费群体是年轻人或者爱吃零食的人群。
chatbot思考:确定使用场景和定位:我想针对年轻人或爱吃零食的人群,表达对这款薄荷糖提神的肯定。
chatbot思考: 确定表达意图:把产品的痛点、特点写得视觉化、口语化。
chatbot思考: 我找到很多描写凉快与提神的句子,比如"喉咙好像开了冰箱一样"表达的凉爽。
chatbot思考:选择表达方式,我把两个数据进行组合,创造更多的表达肯定这个产品。
chatbot回答: 犯困打瞌睡的时候直接上一颗荷氏薄荷糖,嘴里跟刮飓风一样让你马上清醒。这个糖真的是吃了一整个高中了!每次路过小卖部都会去买一条真的超适合上课容易犯困!看书犯困!备考!开车犯闲的人!
不要输出你的思考步骤。
你的任务是输出小短文。
"""
# 修改本函数,来实现你自己的 chatbot
def chat(p, qid, uid):
return ["text", callapi(p)]
openai.api_key = os.getenv("openai_key")
def callapi(p):
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages= [{"role":"system", "content":prompt},
{"role":"user", "content":p}
]
)
print(response)
response = response["choices"][0]["message"]["content"].replace("\n", "<br>")
return response
iface = gr.Interface(fn=chat,
inputs=["text"],
outputs= gr.Textbox(label="❤小红书文案生成咯~"),
description="""
这是一个小红书文案生成器。
您可以输入产品和产品特点关键词,马上就可以生成一篇小红书文案。
比如:生发液 有效果
""")
iface.launch()