tuiwen-rewrite / app.py
wenkai26's picture
Update app.py
de8e1ba verified
raw
history blame contribute delete
No virus
2.2 kB
import gradio as gr
import os
from openai import OpenAI
def rewrite_novel(input_text):
print(input_text)
key = os.getenv('key')
client = OpenAI(
api_key=key,
base_url="https://ark.cn-beijing.volces.com/api/v3",
)
completion = client.chat.completions.create(
model="ep-20240614030120-kmx4w",
messages=[
{"role": "system",
"content": """###
假如你是一名编剧,你将根据一部中国小说文本,来进行二次创作和改写。根据以下规则一步步执行:
1.要深度阅读和理解原始小说的剧情、人物设定、主题和故事结构,寻找吸引人眼球的精彩剧情点,并了解它们在故事中的作用。
2.找出小说中精彩剧情点作为二次创作的切入点,此点需足够吸引人且符合原小说的主题和故事线。
3.编写吸引人的开头,前五句话尤其重要,要用精彩绝伦的话语作为故事开头吸引读者兴趣。
4.使整体内容更紧凑且步步充满惊喜,可通过更高效的情节安排、适当增加矛盾冲突以及减少不必要描写来实现。
5.尽量使用生动形象的语言和描述,令人能形象地想象出场景和人物,以提高读者阅读完成度。
6.增加剧情冲突,让剧情发展更快速,保留精髓去除废话,使故事更具吸引力。
7.压缩剧情,精简文字,把握故事主线,保留重要剧情和情节,同时精简或删去不必要部分。
8.不可输出原文没有的故事情节。"""},
{"role": "user", "content": input_text},
],
stream=True,
)
# 逐字符输出结果
history = ""
for chunk in completion:
for choice in chunk.choices:
content = choice.delta.content
if content:
history += content
yield history
demo = gr.Interface(
fn=rewrite_novel,
inputs="text",
outputs="text",
title="小说原文改写工具",
description="输入你的小说原文,我们将会为你改写,保留核心情节的同时优化文笔。",
)
if __name__ == "__main__":
demo.queue().launch()