File size: 1,009 Bytes
919910a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from haystack.pipelines import DocumentSearchPipeline, ExtractiveQAPipeline
from haystack.nodes import JoinDocuments
from haystack import Pipeline




def ExtracQA(reader,retriever,query):
    qa_pipeline = ExtractiveQAPipeline(reader=reader, retriever=retriever)
    result = qa_pipeline.run(query=query,  params={"retriever": {"top_k": 3}, "reader": {"top_k": 5}})
    
    
    return result
    
    
    
    
def MultipleRetriever(reader,es_retriever,dpr_retriever,query):
    p = Pipeline()
    p.add_node(component=es_retriever, name="ESRetriever", inputs=["Query"])
    p.add_node(component=dpr_retriever, name="DPRRetriever", inputs=["Query"])
    p.add_node(component=JoinDocuments(join_mode="concatenate"), name="JoinResults", inputs=["ESRetriever", "DPRRetriever"])
    p.add_node(component=reader, name="QAReader", inputs=["JoinResults"])
    result = p.run(query=query, params={"ESRetriever": {"top_k": 10}, "DPRRetriever": {"top_k": 10}, "QAReader": {"top_k": 5}})    
    
    return result