feat: IoD search process HTML/PDF content
This commit is contained in:
@@ -108,6 +108,7 @@ export const searchIod = async (query: string, keywords: string[]) => {
|
||||
}
|
||||
|
||||
const docs: Document<Record<string, any>>[] = []
|
||||
const resMap = new Map<string, IodRegistryEntry>()
|
||||
for (const result of searchResults) {
|
||||
const url = result.url
|
||||
if (!url) continue
|
||||
@@ -190,11 +191,15 @@ export const searchIod = async (query: string, keywords: string[]) => {
|
||||
const resultsWithEmbeddings = await store.similaritySearch(query, 3)
|
||||
|
||||
const searchResult = resultsWithEmbeddings.map((result) => {
|
||||
// `source` for PDF type
|
||||
const key = result.metadata.url || result.metadata.source
|
||||
if (!key) return null
|
||||
const fullRes = resMap[key]
|
||||
return {
|
||||
url: result.metadata.url,
|
||||
...fullRes,
|
||||
content: result.pageContent
|
||||
}
|
||||
})
|
||||
}).filter((r) => r)
|
||||
|
||||
return searchResult
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user