Trueinfo commited on
Commit
3ae6622
·
1 Parent(s): 30c311e

Upload 2 files

Browse files
Files changed (2) hide show
  1. app.py +54 -0
  2. requirements.txt +14 -0
app.py ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # fjk3hxK9MNC8h1X4m7zCjmcn4sCtJhur_Cg65csBw1OZeUwdktZwbQ
2
+ from dotenv import load_dotenv
3
+ import streamlit as st
4
+
5
+ from langchain.chains import RetrievalQA
6
+ from langchain.llms import OpenAI
7
+ from langchain.vectorstores import Qdrant
8
+ from langchain.embeddings.openai import OpenAIEmbeddings
9
+ import qdrant_client
10
+ import os
11
+
12
+ def get_vector_store():
13
+
14
+ client = qdrant_client.QdrantClient(
15
+ os.getenv("QDRANT_HOST"),
16
+ api_key=os.getenv("QDRANT_API_KEY")
17
+ )
18
+
19
+ embeddings = OpenAIEmbeddings()
20
+
21
+ vector_store = Qdrant(
22
+ client=client,
23
+ collection_name=os.getenv("QDRANT_COLLECTION_NAME"),
24
+ embeddings=embeddings,
25
+ )
26
+
27
+ return vector_store
28
+
29
+ def main():
30
+ load_dotenv()
31
+
32
+ st.set_page_config(page_title="Ask Qdrant")
33
+ st.header("Ask your remote database 💬")
34
+
35
+ # create vector store
36
+ vector_store = get_vector_store()
37
+
38
+ # create chain
39
+ qa = RetrievalQA.from_chain_type(
40
+ llm=OpenAI(),
41
+ chain_type="stuff",
42
+ retriever=vector_store.as_retriever()
43
+ )
44
+
45
+ # show user input
46
+ user_question = st.text_input("Ask a question about your PDF:")
47
+ if user_question:
48
+ st.write(f"Question: {user_question}")
49
+ answer = qa.run(user_question)
50
+ st.write(f"Answer: {answer}")
51
+
52
+
53
+ if __name__ == '__main__':
54
+ main()
requirements.txt ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ langchain
2
+ python-dotenv
3
+ streamlit
4
+ openai
5
+ qdrant-client
6
+ tiktoken
7
+
8
+
9
+ # uncomment to use huggingface llms
10
+ # huggingface-hub==0.14.1
11
+
12
+ # uncomment to use instructor embeddings
13
+ # InstructorEmbedding==1.0.1
14
+ # sentence-transformers==2.2.2