Update app.py
Browse files
app.py
CHANGED
@@ -12,6 +12,7 @@ import time
|
|
12 |
from functools import lru_cache
|
13 |
from threading import Thread
|
14 |
import re
|
|
|
15 |
|
16 |
# Environment setup
|
17 |
current_dir = os.path.dirname(os.path.abspath(__file__))
|
@@ -24,13 +25,12 @@ os.makedirs(base_dir, exist_ok=True)
|
|
24 |
model_cache_dir = os.path.join(base_dir, "txagent_models")
|
25 |
tool_cache_dir = os.path.join(base_dir, "tool_cache")
|
26 |
file_cache_dir = os.path.join(base_dir, "cache")
|
27 |
-
report_dir =
|
28 |
vllm_cache_dir = os.path.join(base_dir, "vllm_cache")
|
29 |
|
30 |
os.makedirs(model_cache_dir, exist_ok=True)
|
31 |
os.makedirs(tool_cache_dir, exist_ok=True)
|
32 |
os.makedirs(file_cache_dir, exist_ok=True)
|
33 |
-
os.makedirs(report_dir, exist_ok=True)
|
34 |
os.makedirs(vllm_cache_dir, exist_ok=True)
|
35 |
|
36 |
os.environ.update({
|
@@ -63,7 +63,7 @@ def extract_priority_pages(file_path: str, max_pages: int = 20) -> str:
|
|
63 |
text_chunks.append(f"=== Page {i+1} ===\n{(page.extract_text() or '').strip()}")
|
64 |
for i, page in enumerate(pdf.pages[3:max_pages], start=4):
|
65 |
page_text = page.extract_text() or ""
|
66 |
-
if any(re.search(rf'
|
67 |
text_chunks.append(f"=== Page {i} ===\n{page_text.strip()}")
|
68 |
return "\n\n".join(text_chunks)
|
69 |
except Exception as e:
|
@@ -144,11 +144,7 @@ def create_ui(agent: TxAgent):
|
|
144 |
gr.Markdown("<h3 style='text-align: center;'>Identify potential oversights in patient care</h3>")
|
145 |
|
146 |
chatbot = gr.Chatbot(label="Analysis", height=600, type="messages")
|
147 |
-
file_upload = gr.File(
|
148 |
-
label="Upload Medical Records",
|
149 |
-
file_types=[".pdf", ".csv", ".xls", ".xlsx"],
|
150 |
-
file_count="multiple"
|
151 |
-
)
|
152 |
msg_input = gr.Textbox(placeholder="Ask about potential oversights...", show_label=False)
|
153 |
send_btn = gr.Button("Analyze", variant="primary")
|
154 |
conversation_state = gr.State([])
|
|
|
12 |
from functools import lru_cache
|
13 |
from threading import Thread
|
14 |
import re
|
15 |
+
import tempfile
|
16 |
|
17 |
# Environment setup
|
18 |
current_dir = os.path.dirname(os.path.abspath(__file__))
|
|
|
25 |
model_cache_dir = os.path.join(base_dir, "txagent_models")
|
26 |
tool_cache_dir = os.path.join(base_dir, "tool_cache")
|
27 |
file_cache_dir = os.path.join(base_dir, "cache")
|
28 |
+
report_dir = tempfile.mkdtemp(prefix="reports_") # fix for Gradio file serving
|
29 |
vllm_cache_dir = os.path.join(base_dir, "vllm_cache")
|
30 |
|
31 |
os.makedirs(model_cache_dir, exist_ok=True)
|
32 |
os.makedirs(tool_cache_dir, exist_ok=True)
|
33 |
os.makedirs(file_cache_dir, exist_ok=True)
|
|
|
34 |
os.makedirs(vllm_cache_dir, exist_ok=True)
|
35 |
|
36 |
os.environ.update({
|
|
|
63 |
text_chunks.append(f"=== Page {i+1} ===\n{(page.extract_text() or '').strip()}")
|
64 |
for i, page in enumerate(pdf.pages[3:max_pages], start=4):
|
65 |
page_text = page.extract_text() or ""
|
66 |
+
if any(re.search(rf'\\b{{kw}}\\b', page_text.lower()) for kw in MEDICAL_KEYWORDS):
|
67 |
text_chunks.append(f"=== Page {i} ===\n{page_text.strip()}")
|
68 |
return "\n\n".join(text_chunks)
|
69 |
except Exception as e:
|
|
|
144 |
gr.Markdown("<h3 style='text-align: center;'>Identify potential oversights in patient care</h3>")
|
145 |
|
146 |
chatbot = gr.Chatbot(label="Analysis", height=600, type="messages")
|
147 |
+
file_upload = gr.File(label="Upload Medical Records", file_types=[".pdf", ".csv", ".xls", ".xlsx"], file_count="multiple")
|
|
|
|
|
|
|
|
|
148 |
msg_input = gr.Textbox(placeholder="Ask about potential oversights...", show_label=False)
|
149 |
send_btn = gr.Button("Analyze", variant="primary")
|
150 |
conversation_state = gr.State([])
|