wayne0603 commited on
Commit
16873bc
·
verified ·
1 Parent(s): 27296cc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -9
app.py CHANGED
@@ -89,6 +89,7 @@ def load_file(file_obj):
89
 
90
  return f"已加载 {len(docs)} 个文本块", None
91
 
 
92
  def rag_query(query):
93
  if index is None or not docs:
94
  return "请先上传文件并构建知识库"
@@ -102,27 +103,32 @@ def rag_query(query):
102
 
103
  问题:{query}
104
 
105
- 输出要求
106
- 1. 先用 2-3 句话总所有引用片段的关键信息,形成一个完整结
107
- 2. 再分段详细说明,并在细节中标注引用编号
108
- 3. 无法回答时直接说“我不知道”
 
 
 
 
 
 
109
  """
110
 
111
- result = generator(prompt, max_length=600, do_sample=False)
112
  answer = result[0]["generated_text"]
113
 
114
- return f"回答:\n{answer}\n\n参考片段:\n{context}"
115
-
116
 
117
  # ===== Gradio 界面 =====
118
  with gr.Blocks() as demo:
119
- gr.Markdown("## 📚 完整性增强版 RAG(PDF/TXT/EPUB 支持 + 引用显示)")
120
  with gr.Row():
121
  file_input = gr.File(label="上传 PDF / TXT / EPUB 文件")
122
  load_btn = gr.Button("构建知识库")
123
  status = gr.Textbox(label="状态")
124
  query_input = gr.Textbox(label="输入你的问题")
125
- answer_output = gr.Textbox(label="回答", lines=12)
126
  load_btn.click(load_file, inputs=file_input, outputs=status)
127
  query_input.submit(rag_query, inputs=query_input, outputs=answer_output)
128
 
 
89
 
90
  return f"已加载 {len(docs)} 个文本块", None
91
 
92
+ # ===== RAG 查询 =====
93
  def rag_query(query):
94
  if index is None or not docs:
95
  return "请先上传文件并构建知识库"
 
103
 
104
  问题:{query}
105
 
106
+ 请严格按照以下格式输出:
107
+ 结论
108
+ 2-3 句话总结所有引用片段的关键信息,形成一个完整结论。
109
+
110
+ 【详细说明】
111
+ 整合所有引用片段的细节,分段描述,并在每个关键信息后标注引用编号。
112
+ 无法回答时直接说“我不知道”。
113
+
114
+ 【引用片段】
115
+ 逐条列出引用编号及对应的原文。
116
  """
117
 
118
+ result = generator(prompt, max_length=800, do_sample=False)
119
  answer = result[0]["generated_text"]
120
 
121
+ return answer
 
122
 
123
  # ===== Gradio 界面 =====
124
  with gr.Blocks() as demo:
125
+ gr.Markdown("## 📚 完整性增强版 RAG(PDF/TXT/EPUB 支持 + 结论 + 引用)")
126
  with gr.Row():
127
  file_input = gr.File(label="上传 PDF / TXT / EPUB 文件")
128
  load_btn = gr.Button("构建知识库")
129
  status = gr.Textbox(label="状态")
130
  query_input = gr.Textbox(label="输入你的问题")
131
+ answer_output = gr.Textbox(label="回答", lines=15)
132
  load_btn.click(load_file, inputs=file_input, outputs=status)
133
  query_input.submit(rag_query, inputs=query_input, outputs=answer_output)
134