Spaces:
Sleeping
Sleeping
Update ragchain.py
Browse files- ragchain.py +27 -27
ragchain.py
CHANGED
@@ -72,12 +72,11 @@ class RAGChain:
|
|
72 |
|
73 |
return doc_contexts, code_contexts
|
74 |
|
75 |
-
def
|
76 |
"""
|
77 |
Format the retrieved document and code contexts.
|
78 |
"""
|
79 |
-
|
80 |
-
code_context = _format_kadi_apy_library_context(code_contexts)
|
81 |
|
82 |
return doc_context, code_context
|
83 |
|
@@ -113,29 +112,30 @@ class RAGChain:
|
|
113 |
|
114 |
|
115 |
|
116 |
-
def
|
117 |
-
|
118 |
|
119 |
-
for doc in docs:
|
120 |
-
#
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
128 |
|
129 |
-
return
|
130 |
-
|
131 |
-
|
132 |
-
def _format_kadi_api_doc_context(docs):
|
133 |
-
doc_context = []
|
134 |
-
|
135 |
-
for doc in docs:
|
136 |
-
source_info = doc.metadata.get("source", "Unknown Type")
|
137 |
-
print(":}\n\n", doc.page_content)
|
138 |
-
formatted_doc = f"# source: {source_info}\n{doc.page_content}\n\n\n"
|
139 |
-
doc_context.append(formatted_doc)
|
140 |
-
|
141 |
-
return doc_context
|
|
|
72 |
|
73 |
return doc_contexts, code_contexts
|
74 |
|
75 |
+
def format_documents(self, documents):
|
76 |
"""
|
77 |
Format the retrieved document and code contexts.
|
78 |
"""
|
79 |
+
formatted_docs = _format_documents(documents)
|
|
|
80 |
|
81 |
return doc_context, code_context
|
82 |
|
|
|
112 |
|
113 |
|
114 |
|
115 |
+
def _format_documents(docs):
|
116 |
+
formatted_docs = []
|
117 |
|
118 |
+
for i, doc in enumerate(docs, start=1):
|
119 |
+
# Add "Snippet + count of doc" e.g., Snippet 1:
|
120 |
+
formatted_docs.append(f"Snippet {i}: \n")
|
121 |
+
|
122 |
+
# Add one line break
|
123 |
+
formatted_docs.append("\n")
|
124 |
+
|
125 |
+
# Process metadata and add to context
|
126 |
+
all_metadata = doc.metadata
|
127 |
+
metadata_str = ", ".join(f"{key}: {value}" for key, value in all_metadata.items())
|
128 |
+
formatted_docs.append(metadata_str)
|
129 |
+
|
130 |
+
# Add one line break
|
131 |
+
formatted_docs.append("\n")
|
132 |
+
|
133 |
+
# Append page content
|
134 |
+
formatted_docs.append(doc.page_content)
|
135 |
+
|
136 |
+
# Add two line breaks
|
137 |
+
formatted_docs.append("\n\n")
|
138 |
|
139 |
+
return formatted_docs
|
140 |
+
|
141 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|