コード例 #1
0
def test_qa_chunk():
    kiri = Kiri(local=True)
    docs = get_chunked_docs()
    kiri.upload(docs)
    results = kiri.qa("another?")
    assert isinstance(results, list)
    for result in results:
        assert type(result[0]) == str
        assert isinstance(result[1], SearchResult)
コード例 #2
0
ファイル: qa_chatbot.py プロジェクト: backprop-ai/kiri-search
"""

elastic = False

if elastic:
    doc_store = ElasticDocStore("http://localhost:9000",
                                doc_class=ElasticChunkedDocument,
                                index="kiri_default")
    documents = big_n_docs["elastic"]
else:
    doc_store = InMemoryDocStore(doc_class=ChunkedDocument)
    documents = big_n_docs["memory"]

kiri = Kiri(doc_store, local=True)

kiri.upload(documents)

print("Hello! I'm a Kiri chatbot.")
# Hold previous Q/A pairs for additional context
session_qa = []
while True:
    try:
        question = input()
        answers = kiri.qa(question, prev_qa=session_qa)
        # Only showing the top-rated answer
        print(answers[0][0])
        prev_qa = (question, answers[0][0])
        session_qa += prev_qa
        print()
    except Exception as e:
        print("Something broke, try again.")
コード例 #3
0
def test_qa():
    kiri = Kiri(local=True)
    out = kiri.qa("What does Jon like?", text)
    assert type(out) == str