voyageai-cli
Version:
CLI for Voyage AI embeddings, reranking, and MongoDB Atlas Vector Search
68 lines (67 loc) • 1.87 kB
JSON
{
"$schema": "https://vai.dev/schemas/workflow-v1.json",
"name": "Smart Ingest",
"description": "Check if a document is novel before ingesting (avoid duplicates)",
"version": "1.0.0",
"branding": {
"icon": "database",
"color": "#059669"
},
"inputs": {
"text": {
"type": "string",
"description": "The document text to ingest",
"required": true
},
"source": {
"type": "string",
"description": "Source identifier for the document",
"required": true
},
"threshold": {
"type": "number",
"description": "Similarity threshold (0-1). Documents more similar than this are considered duplicates",
"default": 0.85
}
},
"defaults": {},
"steps": [
{
"id": "check_existing",
"name": "Search for similar existing documents",
"tool": "search",
"inputs": {
"query": "{{ inputs.text }}",
"limit": 3
}
},
{
"id": "similarity_check",
"name": "Check similarity to top match",
"tool": "similarity",
"inputs": {
"text1": "{{ inputs.text }}",
"text2": "{{ check_existing.output.results[0].text }}"
},
"condition": "{{ check_existing.output.results.length > 0 }}"
},
{
"id": "ingest_doc",
"name": "Ingest if sufficiently novel",
"tool": "ingest",
"inputs": {
"text": "{{ inputs.text }}",
"source": "{{ inputs.source }}",
"metadata": {
"ingested_via": "smart-ingest-workflow"
}
},
"condition": "{{ !similarity_check.output || similarity_check.output.similarity < 0.85 }}"
}
],
"output": {
"ingested": "{{ ingest_doc.output ? true : false }}",
"similarityScore": "{{ similarity_check.output.similarity }}",
"existingDocs": "{{ check_existing.output.resultCount }}"
}
}