Fix filters

This commit is contained in:
Seif
2023-08-13 19:40:33 -07:00
parent 47989cfa33
commit 9989f6f70a
2 changed files with 7 additions and 17 deletions
@@ -34,7 +34,7 @@ class VectaraExisting_VectorStores implements INode {
{
label: 'Vectara Metadata Filter',
name: 'filter',
type: 'json',
type: 'string',
additionalParams: true,
optional: true
},
@@ -74,7 +74,7 @@ class VectaraExisting_VectorStores implements INode {
const customerId = getCredentialParam('customerID', credentialData, nodeData)
const corpusId = getCredentialParam('corpusID', credentialData, nodeData)
const vectaraMetadatafilter = nodeData.inputs?.filter as VectaraFilter
const vectaraMetadataFilter = nodeData.inputs?.filter as string
const lambda = nodeData.inputs?.lambda as number
const output = nodeData.outputs?.output as string
const topK = nodeData.inputs?.topK as string
@@ -87,12 +87,7 @@ class VectaraExisting_VectorStores implements INode {
}
const vectaraFilter: VectaraFilter = {}
if (vectaraMetadatafilter) {
const metadatafilter = typeof vectaraMetadatafilter === 'object' ? vectaraMetadatafilter : JSON.parse(vectaraMetadatafilter)
vectaraFilter.filter = metadatafilter
}
if (vectaraMetadataFilter) vectaraFilter.filter = vectaraMetadataFilter
if (lambda) vectaraFilter.lambda = lambda
const vectorStore = new VectaraStore(vectaraArgs)
@@ -41,9 +41,9 @@ class VectaraExisting_VectorStores implements INode {
list: true
},
{
label: 'Filter',
label: 'Vectara Metadata Filter',
name: 'filter',
type: 'json',
type: 'string',
additionalParams: true,
optional: true
},
@@ -85,7 +85,7 @@ class VectaraExisting_VectorStores implements INode {
const docs = nodeData.inputs?.document as Document[]
const embeddings = {} as Embeddings
const vectaraMetadatafilter = nodeData.inputs?.filter as VectaraFilter
const vectaraMetadataFilter = nodeData.inputs?.filter as string
const lambda = nodeData.inputs?.lambda as number
const output = nodeData.outputs?.output as string
const topK = nodeData.inputs?.topK as string
@@ -98,12 +98,7 @@ class VectaraExisting_VectorStores implements INode {
}
const vectaraFilter: VectaraFilter = {}
if (vectaraMetadatafilter) {
const metadatafilter = typeof vectaraMetadatafilter === 'object' ? vectaraMetadatafilter : JSON.parse(vectaraMetadatafilter)
vectaraFilter.filter = metadatafilter
}
if (vectaraMetadataFilter) vectaraFilter.filter = vectaraMetadataFilter
if (lambda) vectaraFilter.lambda = lambda
const flattenDocs = docs && docs.length ? flatten(docs) : []