Update app.py
Browse files
app.py
CHANGED
@@ -71,19 +71,22 @@ async def init():
|
|
71 |
docsearch = await cl.make_async(FAISS.from_documents)(documents, embedder)
|
72 |
|
73 |
chain = RetrievalQA.from_chain_type(
|
74 |
-
ChatOpenAI(model="gpt-4", temperature=0.0), # streaming=
|
75 |
chain_type="stuff",
|
76 |
-
return_source_documents=
|
77 |
retriever=docsearch.as_retriever(),
|
78 |
chain_type_kwargs = {"prompt": prompt}
|
79 |
)
|
80 |
|
81 |
-
markdown_table =
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
|
|
|
|
|
|
87 |
"""
|
88 |
|
89 |
msg.content = f"FAISS ready. Bare spør ivei..🤓\n\n{markdown_table}"
|
@@ -102,11 +105,14 @@ async def main(message):
|
|
102 |
)
|
103 |
|
104 |
cb.answer_reached = True
|
|
|
|
|
|
|
105 |
res = await chain.acall(message, callbacks=[cb])
|
106 |
|
107 |
answer = res["result"]
|
108 |
source_elements = []
|
109 |
-
visited_sources = set(
|
110 |
|
111 |
docs = res.get("source_documents", [])
|
112 |
metadatas = [doc.metadata for doc in docs]
|
@@ -123,9 +129,12 @@ async def main(message):
|
|
123 |
|
124 |
if source_elements:
|
125 |
answer += f"\nSources: {', '.join([e.content for e in source_elements])}"
|
|
|
126 |
|
127 |
if answer != last_response:
|
128 |
await cl.Message(content=answer, elements=source_elements if source_elements else None).send()
|
129 |
last_response = answer
|
|
|
|
|
130 |
else:
|
131 |
-
await cl.Message(content="No new information available.").send()
|
|
|
71 |
docsearch = await cl.make_async(FAISS.from_documents)(documents, embedder)
|
72 |
|
73 |
chain = RetrievalQA.from_chain_type(
|
74 |
+
ChatOpenAI(model="gpt-4", temperature=0.0, streaming=True), # streaming=False
|
75 |
chain_type="stuff",
|
76 |
+
return_source_documents=True,
|
77 |
retriever=docsearch.as_retriever(),
|
78 |
chain_type_kwargs = {"prompt": prompt}
|
79 |
)
|
80 |
|
81 |
+
markdown_table = """
|
82 |
+
### Eksempler på spørsmål
|
83 |
+
|
84 |
+
| # | Spørsmål |
|
85 |
+
|---|----------------------------------------|
|
86 |
+
| 1 | Hvordan registrerer jeg meg som bruker?|
|
87 |
+
| 2 | Kan jeg ha med kjæledyr på hytta? |
|
88 |
+
| 3 | Adferdsmessig annonsering? |
|
89 |
+
| 4 | Hvordan blir dataene mine beskyttet? |
|
90 |
"""
|
91 |
|
92 |
msg.content = f"FAISS ready. Bare spør ivei..🤓\n\n{markdown_table}"
|
|
|
105 |
)
|
106 |
|
107 |
cb.answer_reached = True
|
108 |
+
|
109 |
+
cb.suppress_intermediate = True
|
110 |
+
|
111 |
res = await chain.acall(message, callbacks=[cb])
|
112 |
|
113 |
answer = res["result"]
|
114 |
source_elements = []
|
115 |
+
#visited_sources = set()
|
116 |
|
117 |
docs = res.get("source_documents", [])
|
118 |
metadatas = [doc.metadata for doc in docs]
|
|
|
129 |
|
130 |
if source_elements:
|
131 |
answer += f"\nSources: {', '.join([e.content for e in source_elements])}"
|
132 |
+
#await cl.Message(content="Sources: " + ", ".join([e.content for e in source_elements])).send()
|
133 |
|
134 |
if answer != last_response:
|
135 |
await cl.Message(content=answer, elements=source_elements if source_elements else None).send()
|
136 |
last_response = answer
|
137 |
+
return
|
138 |
+
|
139 |
else:
|
140 |
+
await cl.Message(content="No new information available.").send()
|