FlowiseAI/Flowise · error · Error
${e}
Error message
${e} What it means
Wraps any failure from ZepVectorStore.fromDocuments() in the Zep node init. The zepConfig is built from baseURL, zepCollection, dimension, and optional apiKey; isAutoEmbedded is false (external embeddings supplied). `new Error(e)` flattens the underlying Zep/LangChain error to a string.
Source
Thrown at packages/components/nodes/vectorstores/Zep/Zep.ts:139
for (let i = 0; i < flattenDocs.length; i += 1) {
if (flattenDocs[i] && flattenDocs[i].pageContent) {
finalDocs.push(new Document(flattenDocs[i]))
}
}
const zepConfig: IZepConfig = {
apiUrl: baseURL,
collectionName: zepCollection,
embeddingDimensions: dimension,
isAutoEmbedded: false
}
if (apiKey) zepConfig.apiKey = apiKey
try {
await ZepVectorStore.fromDocuments(finalDocs, embeddings, zepConfig)
return { numAdded: finalDocs.length, addedDocs: finalDocs }
} catch (e) {
throw new Error(e)
}
}
}
async init(nodeData: INodeData, _: string, options: ICommonObject): Promise<any> {
const baseURL = nodeData.inputs?.baseURL as string
const zepCollection = nodeData.inputs?.zepCollection as string
const zepMetadataFilter = nodeData.inputs?.zepMetadataFilter
const dimension = nodeData.inputs?.dimension as number
const embeddings = nodeData.inputs?.embeddings as Embeddings
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
const apiKey = getCredentialParam('apiKey', credentialData, nodeData)
const zepConfig: IZepConfig & Partial<ZepFilter> = {
apiUrl: baseURL,
collectionName: zepCollection,
embeddingDimensions: dimension,View on GitHub (pinned to abe4a8601a)
Solutions
- Inspect the text after "Error:" — it is the flattened Zep client error; address the root cause (connection, auth, dimension).
- Verify baseURL resolves and the Zep server is reachable (curl the health endpoint).
- Verify apiKey if Zep auth is enabled.
- Confirm dimension matches the embeddings model output and matches any pre-existing collection.
- Patch the catch to rethrow e unchanged.
Example fix
// before
} catch (e) {
throw new Error(e)
}
// after
} catch (e) {
throw e instanceof Error ? e : new Error(String(e))
} Defensive patterns
Strategy: try-catch
Validate before calling
// Pre-flight: verify Zep baseURL reachable + dimension set
async function preflightZep(baseURL, dim) {
const ok = await fetch(baseURL + '/health').then((r) => r.ok).catch(() => false)
if (!ok) throw new Error('Zep server unreachable at ' + baseURL)
if (!dim || dim <= 0) throw new Error('embedding dimension must be set')
} Type guard
null
Try / catch
try {
await ZepVectorStore.fromDocuments(finalDocs, embeddings, zepConfig)
} catch (e) {
throw e instanceof Error ? e : new Error(String(e))
} Prevention
- Verify Zep server is up at baseURL before ingest (curl /health).
- Set embeddingDimensions to match the embeddings model and any existing collection.
- Do not wrap caught errors with `new Error(e)` — rethrow unchanged.
When it happens
Trigger: baseURL unreachable or wrong (Zep server down / wrong port), apiKey invalid for a secured Zep, embeddingDimensions mismatch with an existing collection, collection name with illegal characters, Zep server version incompatible with the client.
Common situations: Zep server not running at the configured baseURL; dimension set to a value that does not match the embeddings model; using the self-hosted Zep node against Zep Cloud or vice-versa; collection created elsewhere with different dimensions.
Related errors
AI-assisted analysis of FlowiseAI/Flowise@abe4a8601a (2026-08-12).
Data as JSON: /api/errors/ac028af4b61b300e.
Report an issue: GitHub.