|
@@ -29,9 +29,12 @@ def mock_story(query: str):
|
|
|
所以,克隆羊就是通过克隆技术创造出来的一只羊,它没有父亲,只有母亲,是科学家们用神奇的“生命复印机”复制出来的哦!"""
|
|
|
|
|
|
|
|
|
-def generate_image(text):
|
|
|
- """ """
|
|
|
- res = mock_img(text)
|
|
|
+from kg import story_to_imgs
|
|
|
+
|
|
|
+
|
|
|
+def generate_image(story):
|
|
|
+
|
|
|
+ res = story_to_imgs(story)
|
|
|
md = ""
|
|
|
|
|
|
for i in range(len(res)):
|
|
@@ -39,31 +42,43 @@ def generate_image(text):
|
|
|
return md
|
|
|
|
|
|
|
|
|
+from answerQuestions import generateStory
|
|
|
+
|
|
|
+
|
|
|
def generate_story(query):
|
|
|
- """ """
|
|
|
- return mock_story(query)
|
|
|
-
|
|
|
-
|
|
|
-def generate_story_and_image(query):
|
|
|
- """ """
|
|
|
- story = generate_story(query)
|
|
|
- image = generate_image(query)
|
|
|
- return story, image
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-demo = gr.Interface(
|
|
|
- fn=generate_story_and_image,
|
|
|
- inputs=gr.Textbox(lines=5, label="问题"),
|
|
|
- outputs=[
|
|
|
- gr.Textbox(lines=15, label="故事"),
|
|
|
- gr.Markdown(label="绘本"),
|
|
|
- ],
|
|
|
- title="绘本生成器",
|
|
|
- description="输入一个问题,生成一个故事和绘本图片",
|
|
|
- theme="compact",
|
|
|
-)
|
|
|
|
|
|
+ return generateStory(query)
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+with gr.Blocks() as demo:
|
|
|
+ gr.Markdown("# 绘本生成器")
|
|
|
+
|
|
|
+ with gr.Row():
|
|
|
+ with gr.Column():
|
|
|
+ input_text = gr.Textbox(label="输入")
|
|
|
+ with gr.Row():
|
|
|
+ clear_btn = gr.Button("清空")
|
|
|
+ story_btn = gr.Button("生成故事", variant="primary")
|
|
|
+ with gr.Row():
|
|
|
+ img_btn = gr.Button("生成绘本", variant="primary")
|
|
|
+ with gr.Column():
|
|
|
+ story_output = gr.Textbox(label="生成的故事", interactive=False, lines=10)
|
|
|
+ story_btn.click(generate_story, inputs=input_text, outputs=story_output)
|
|
|
+ with gr.Column():
|
|
|
+ gr.Markdown("## 生成的绘本")
|
|
|
+ img_output = gr.Markdown(label="生成的绘本")
|
|
|
+ img_btn.click(generate_image, inputs=story_output, outputs=img_output)
|
|
|
+
|
|
|
+ clear_btn.click(
|
|
|
+ lambda x: [
|
|
|
+ gr.update(value=""),
|
|
|
+ gr.update(value=""),
|
|
|
+ gr.update(value=""),
|
|
|
+ ],
|
|
|
+ None,
|
|
|
+ [input_text, story_output, img_output],
|
|
|
+ )
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
demo.launch()
|