wenkai26 commited on
Commit
0ea91eb
1 Parent(s): 800da64

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -11
app.py CHANGED
@@ -2,7 +2,6 @@ import gradio as gr
2
  import os
3
  from openai import OpenAI
4
 
5
-
6
  def rewrite_novel(input_text):
7
  key = os.getenv('key')
8
  client = OpenAI(
@@ -16,19 +15,24 @@ def rewrite_novel(input_text):
16
  {"role": "system",
17
  "content": """###
18
  假如你是一名编剧,你将根据一部中国小说文本,来进行二次创作和改写。根据以下规则一步步执行:
19
- 1.要深度阅读和理解原始小说的剧情、人物设定、主题和故事结构,寻找吸引人眼球的精彩剧情点,并了解它们在故事中的作用。
20
- 2.找出小说中精彩剧情点作为二次创作的切入点,此点需足够吸引人且符合原小说的主题和故事线。
21
- 3.编写吸引人的开头,前五句话尤其重要,要用精彩绝伦的话语作为故事开头吸引读者兴趣。
22
- 4.使整体内容更紧凑且步步充满惊喜,可通过更高效的情节安排、适当增加矛盾冲突以及减少不必要描写来实现。
23
- 5.尽量使用生动形象的语言和描述,令人能形象地想象出场景和人物,以提高读者阅读完成度。
24
- 6.增加剧情冲突,让剧情发展更快速,保留精髓去除废话,使故事更具吸引力。
25
- 7.压缩剧情,精简文字,把握故事主线,保留重要剧情和情节,同时精简或删去不必要部分。
26
- 8.不可输出原文没有的故事情节。"""},
27
  {"role": "user", "content": input_text},
28
  ],
 
29
  )
30
- return completion.choices[0].message.content
31
-
 
 
 
 
32
 
33
  demo = gr.Interface(
34
  fn=rewrite_novel,
@@ -36,6 +40,7 @@ demo = gr.Interface(
36
  outputs="text",
37
  title="小说原文改写工具",
38
  description="输入你的小说原文,我们将会为你改写,保留核心情节的同时优化文笔。",
 
39
  )
40
 
41
  if __name__ == "__main__":
 
2
  import os
3
  from openai import OpenAI
4
 
 
5
  def rewrite_novel(input_text):
6
  key = os.getenv('key')
7
  client = OpenAI(
 
15
  {"role": "system",
16
  "content": """###
17
  假如你是一名编剧,你将根据一部中国小说文本,来进行二次创作和改写。根据以下规则一步步执行:
18
+ 1. 要深度阅读和理解原始小说的剧情、人物设定、主题和故事结构,寻找吸引人眼球的精彩剧情点,并了解它们在故事中的作用。
19
+ 2. 找出小说中精彩剧情点作为二次创作的切入点,此点需足够吸引人且符合原小说的主题和故事线。
20
+ 3. 编写吸引人的开头,前五句话尤其重要,要用精彩绝伦的话语作为故事开头吸引读者兴趣。
21
+ 4. 使整体内容更紧凑且步步充满惊喜,可通过更高效的情节安排、适当增加矛盾冲突以及减少不必要描写来实现。
22
+ 5. 尽量使用生动形象的语言和描述,令人能形象地想象出场景和人物,以提高读者阅读完成度。
23
+ 6. 增加剧情冲突,让剧情发展更快速,保留精髓去除废话,使故事更具吸引力。
24
+ 7. 压缩剧情,精简文字,把握故事主线,保留重要剧情和情节,同时精简或删去不必要部分。
25
+ 8. 不可输出原文没有的故事情节。"""},
26
  {"role": "user", "content": input_text},
27
  ],
28
+ stream=True, # 添加这一行启用流式输出
29
  )
30
+
31
+ # 逐字符输出结果
32
+ for chunk in completion:
33
+ if 'choices' in chunk and len(chunk['choices']) > 0 and 'delta' in chunk['choices'][0]:
34
+ if 'content' in chunk['choices'][0]['delta']:
35
+ yield chunk['choices'][0]['delta']['content']
36
 
37
  demo = gr.Interface(
38
  fn=rewrite_novel,
 
40
  outputs="text",
41
  title="小说原文改写工具",
42
  description="输入你的小说原文,我们将会为你改写,保留核心情节的同时优化文笔。",
43
+ live=True, # 启用实时更新输出
44
  )
45
 
46
  if __name__ == "__main__":