Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -126,8 +126,6 @@ if "documents" in st.session_state:
|
|
| 126 |
chain = create_stuff_documents_chain(llm, summary_prompt)
|
| 127 |
summary = run_chain(chain, {"context": docs})
|
| 128 |
st.session_state["last_agent_output"] = summary
|
| 129 |
-
st.markdown("### π Summary")
|
| 130 |
-
st.write(summary)
|
| 131 |
|
| 132 |
# Gap analysis
|
| 133 |
elif task == "Identify research gaps":
|
|
@@ -136,8 +134,6 @@ if "documents" in st.session_state:
|
|
| 136 |
chain2 = LLMChain(llm=llm, prompt=gap_prompt)
|
| 137 |
gaps = run_chain(chain2, {"summary": summary})
|
| 138 |
st.session_state["last_agent_output"] = gaps
|
| 139 |
-
st.markdown("### π Identified Gaps")
|
| 140 |
-
st.write(gaps)
|
| 141 |
|
| 142 |
# Idea generation
|
| 143 |
elif task == "Suggest research ideas":
|
|
@@ -148,8 +144,6 @@ if "documents" in st.session_state:
|
|
| 148 |
chain3 = LLMChain(llm=llm, prompt=idea_prompt)
|
| 149 |
ideas = run_chain(chain3, {"gaps": gaps})
|
| 150 |
st.session_state["last_agent_output"] = ideas
|
| 151 |
-
st.markdown("### π‘ Research Ideas")
|
| 152 |
-
st.write(ideas)
|
| 153 |
|
| 154 |
# Debate agent
|
| 155 |
elif task == "Simulate a debate":
|
|
@@ -158,34 +152,39 @@ if "documents" in st.session_state:
|
|
| 158 |
debate_chain = LLMChain(llm=llm, prompt=debate_prompt)
|
| 159 |
debate = run_chain(debate_chain, {"summary": summary})
|
| 160 |
st.session_state["last_agent_output"] = debate
|
| 161 |
-
st.markdown("### π Debate")
|
| 162 |
-
st.write(debate)
|
| 163 |
|
| 164 |
# Citation agent
|
| 165 |
elif task == "Generate citation":
|
| 166 |
citation_chain = create_stuff_documents_chain(llm, citation_prompt)
|
| 167 |
citation = run_chain(citation_chain, {"context": docs})
|
| 168 |
st.session_state["last_agent_output"] = citation
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
|
| 186 |
-
|
| 187 |
-
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 126 |
chain = create_stuff_documents_chain(llm, summary_prompt)
|
| 127 |
summary = run_chain(chain, {"context": docs})
|
| 128 |
st.session_state["last_agent_output"] = summary
|
|
|
|
|
|
|
| 129 |
|
| 130 |
# Gap analysis
|
| 131 |
elif task == "Identify research gaps":
|
|
|
|
| 134 |
chain2 = LLMChain(llm=llm, prompt=gap_prompt)
|
| 135 |
gaps = run_chain(chain2, {"summary": summary})
|
| 136 |
st.session_state["last_agent_output"] = gaps
|
|
|
|
|
|
|
| 137 |
|
| 138 |
# Idea generation
|
| 139 |
elif task == "Suggest research ideas":
|
|
|
|
| 144 |
chain3 = LLMChain(llm=llm, prompt=idea_prompt)
|
| 145 |
ideas = run_chain(chain3, {"gaps": gaps})
|
| 146 |
st.session_state["last_agent_output"] = ideas
|
|
|
|
|
|
|
| 147 |
|
| 148 |
# Debate agent
|
| 149 |
elif task == "Simulate a debate":
|
|
|
|
| 152 |
debate_chain = LLMChain(llm=llm, prompt=debate_prompt)
|
| 153 |
debate = run_chain(debate_chain, {"summary": summary})
|
| 154 |
st.session_state["last_agent_output"] = debate
|
|
|
|
|
|
|
| 155 |
|
| 156 |
# Citation agent
|
| 157 |
elif task == "Generate citation":
|
| 158 |
citation_chain = create_stuff_documents_chain(llm, citation_prompt)
|
| 159 |
citation = run_chain(citation_chain, {"context": docs})
|
| 160 |
st.session_state["last_agent_output"] = citation
|
| 161 |
+
|
| 162 |
+
# π§ Always show last agent output if available
|
| 163 |
+
if "last_agent_output" in st.session_state:
|
| 164 |
+
st.markdown("### π€ Agent Response")
|
| 165 |
+
output = st.session_state["last_agent_output"]
|
| 166 |
+
st.write(output)
|
| 167 |
+
|
| 168 |
+
# π Optional Translation
|
| 169 |
+
if st.toggle("π Translate the response?"):
|
| 170 |
+
default_languages = ["Spanish", "French", "German", "Chinese", "Urdu", "Other"]
|
| 171 |
+
selected_language = st.selectbox("Choose translation language:", default_languages)
|
| 172 |
+
if selected_language == "Other":
|
| 173 |
+
user_language = st.text_input("Please enter your desired language:", key="custom_lang")
|
| 174 |
+
else:
|
| 175 |
+
user_language = selected_language
|
| 176 |
+
|
| 177 |
+
if user_language:
|
| 178 |
+
if isinstance(output, dict):
|
| 179 |
+
combined_text = "\n\n".join(str(v) for v in output.values())
|
| 180 |
+
else:
|
| 181 |
+
combined_text = str(output)
|
| 182 |
+
|
| 183 |
+
translate_chain = LLMChain(llm=llm, prompt=translate_prompt)
|
| 184 |
+
translated = translate_chain.invoke({
|
| 185 |
+
"language": user_language,
|
| 186 |
+
"content": combined_text
|
| 187 |
+
})
|
| 188 |
+
|
| 189 |
+
st.markdown(f"### π Translated Response ({user_language})")
|
| 190 |
+
st.write(translated)
|