leonsimon23 commited on
Commit
b4e60d5
·
verified ·
1 Parent(s): 20b7ba6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +8 -8
app.py CHANGED
@@ -32,7 +32,7 @@ def get_extraction_config():
32
  ]
33
  return prompt_description, examples
34
 
35
- # --- 2. Gradio 的核心处理函数 (保持不变) ---
36
  def process_input_and_visualize(input_text, input_file):
37
  """
38
  接收文本或文件输入,解析内容,调用 LangExtract 的高级功能进行处理,并返回结果。
@@ -109,7 +109,12 @@ def process_input_and_visualize(input_text, input_file):
109
  jsonl_filename = f"extraction_{session_id}.jsonl"
110
  jsonl_path = os.path.join(output_dir, jsonl_filename)
111
  html_path = os.path.join(output_dir, f"visualization_{session_id}.html")
112
- lx.io.save_annot_ated_documents([result], output_name=jsonl_filename, output_dir=output_dir)
 
 
 
 
 
113
  html_content = lx.visualize(jsonl_path)
114
  with open(html_path, "w", encoding="utf-8") as f:
115
  f.write(html_content)
@@ -117,7 +122,7 @@ def process_input_and_visualize(input_text, input_file):
117
  return highlighted_text, structured_output, html_path, html_path, jsonl_path
118
 
119
 
120
- # --- 3. 创建 Gradio 应用界面 (已修复) ---
121
  with gr.Blocks(theme=gr.themes.Soft(), title="药物信息提取器") as demo:
122
  gr.Markdown("# ⚕️ LangExtract 药物信息提取器")
123
  gr.Markdown("一个基于大型语言模型的智能工具,可从**临床文本**或 **PDF 文件**中自动提取药物、剂量等信息,并进行结构化关联。")
@@ -152,13 +157,8 @@ with gr.Blocks(theme=gr.themes.Soft(), title="药物信息提取器") as demo:
152
  with gr.TabItem("📁 文件下载"):
153
  gr.Markdown("### 下载提取结果")
154
  download_html = gr.File(label="下载交互式 HTML 文件")
155
- # 这是我们定义的用于接收 JSONL 文件的 Gradio 组件
156
  download_jsonl = gr.File(label="下载 JSONL 数据文件")
157
 
158
- # --- 关键修复 ---
159
- # 原代码错误: ... outputs=[..., jsonl_path]
160
- # 正确代码: ... outputs=[..., download_jsonl]
161
- # 必须引用在上面 Blocks 布局中定义的 Gradio 组件变量。
162
  submit_btn.click(
163
  fn=process_input_and_visualize,
164
  inputs=[input_textbox, input_file_uploader],
 
32
  ]
33
  return prompt_description, examples
34
 
35
+ # --- 2. Gradio 的核心处理函数 (已修复) ---
36
  def process_input_and_visualize(input_text, input_file):
37
  """
38
  接收文本或文件输入,解析内容,调用 LangExtract 的高级功能进行处理,并返回结果。
 
109
  jsonl_filename = f"extraction_{session_id}.jsonl"
110
  jsonl_path = os.path.join(output_dir, jsonl_filename)
111
  html_path = os.path.join(output_dir, f"visualization_{session_id}.html")
112
+
113
+ # --- 关键修复:修正函数名的拼写错误 ---
114
+ # 错误: lx.io.save_annot_ated_documents(...)
115
+ # 正确: lx.io.save_annotated_documents(...)
116
+ lx.io.save_annotated_documents([result], output_name=jsonl_filename, output_dir=output_dir)
117
+
118
  html_content = lx.visualize(jsonl_path)
119
  with open(html_path, "w", encoding="utf-8") as f:
120
  f.write(html_content)
 
122
  return highlighted_text, structured_output, html_path, html_path, jsonl_path
123
 
124
 
125
+ # --- 3. 创建 Gradio 应用界面 (保持不变) ---
126
  with gr.Blocks(theme=gr.themes.Soft(), title="药物信息提取器") as demo:
127
  gr.Markdown("# ⚕️ LangExtract 药物信息提取器")
128
  gr.Markdown("一个基于大型语言模型的智能工具,可从**临床文本**或 **PDF 文件**中自动提取药物、剂量等信息,并进行结构化关联。")
 
157
  with gr.TabItem("📁 文件下载"):
158
  gr.Markdown("### 下载提取结果")
159
  download_html = gr.File(label="下载交互式 HTML 文件")
 
160
  download_jsonl = gr.File(label="下载 JSONL 数据文件")
161
 
 
 
 
 
162
  submit_btn.click(
163
  fn=process_input_and_visualize,
164
  inputs=[input_textbox, input_file_uploader],