Spaces:
Runtime error
Runtime error
import glob | |
import logging | |
import sys | |
import streamlit as st | |
from haystack import Pipeline | |
logging.basicConfig( | |
level=logging.DEBUG, | |
format="%(levelname)s %(asctime)s %(name)s:%(message)s", | |
handlers=[logging.StreamHandler(sys.stdout)], | |
force=True, | |
) | |
p_1 = None | |
p_2 = None | |
def app_init(): | |
indexing_pipeline = Pipeline.load_from_yaml("pipeline.yaml", pipeline_name="indexing") | |
file_paths = glob.glob("data/*") | |
ds = indexing_pipeline.get_node("DocumentStore") | |
ds.delete_all_documents() | |
indexing_pipeline.run(file_paths=file_paths) | |
ds.update_embeddings(indexing_pipeline.get_node("Retriever")) | |
ds.save(config_path="my_faiss_config.json", index_path="my_faiss_index.faiss") | |
global p_1 | |
p_1 = Pipeline.load_from_yaml("pipeline.yaml", pipeline_name="query_1") | |
global p_2 | |
p_2 = Pipeline.load_from_yaml("pipeline.yaml", pipeline_name="query_2") | |
def main(): | |
app_init() | |
st.title("Haystack Demo") | |
input = st.text_input("Query ...") | |
query_type = st.radio("Type", | |
("Retrieval Augmented", "Retrieval Augmented with Sources", | |
"Retrieval Augmented with Web Search")) | |
col_1, col_2 = st.columns(2) | |
with col_1: | |
st.text("PLAIN") | |
answers = p_1.run(input)["answers"] | |
for ans in answers: | |
st.text(ans.answer) | |
with col_2: | |
st.write(query_type.upper()) | |
answers = p_2.run(input)["answers"] | |
for ans in answers: | |
st.text(ans.answer) | |
if __name__ == "__main__": | |
main() | |