{
 "name": "[노드 한 장] Token Splitter · 토큰 기준 실제 조각 검증",
 "nodes": [
  {
   "id": "manual",
   "name": "Run manually",
   "type": "n8n-nodes-base.manualTrigger",
   "typeVersion": 1,
   "position": [
    0,
    0
   ],
   "parameters": {}
  },
  {
   "id": "fixture",
   "name": "Create unique own store fixture",
   "type": "n8n-nodes-base.code",
   "typeVersion": 2,
   "position": [
    240,
    0
   ],
   "parameters": {
    "jsCode": "const executionId=String($execution.id||'');if(!executionId)throw Error('Missing execution ID');const storeKey=`EP78_OWN_TOKEN_STORE:${$workflow.id}:${executionId}:${Date.now()}:${Math.random().toString(36).slice(2)}`;return [{json:{sample:true,storeKey,document:\"[EP78-A] 달빛 문구점은 파란 공책 세 권을 창가 선반에 놓았습니다. [EP78-B] A small robot checks the blue notebook and records a fictional delivery note. [EP78-C] 초록 연필 두 자루는 별도 상자에 담았습니다. 이 문서는 직접 쓴 가상 실습이며 고객 정보가 없습니다. [EP78-END]\"}}];"
   }
  },
  {
   "id": "store",
   "name": "Own Simple Vector Store",
   "type": "@n8n/n8n-nodes-langchain.vectorStoreInMemory",
   "typeVersion": 1.3,
   "position": [
    500,
    0
   ],
   "parameters": {
    "mode": "insert",
    "memoryKey": {
     "__rl": true,
     "mode": "id",
     "value": "={{ $('Create unique own store fixture').first().json.storeKey }}"
    },
    "clearStore": false
   }
  },
  {
   "id": "loader",
   "name": "Default Data Loader",
   "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
   "typeVersion": 1.1,
   "position": [
    650,
    250
   ],
   "parameters": {
    "dataType": "json",
    "jsonMode": "expressionData",
    "jsonData": "={{ $json.document }}",
    "textSplittingMode": "custom",
    "options": {}
   }
  },
  {
   "id": "splitter",
   "name": "Token Splitter",
   "type": "@n8n/n8n-nodes-langchain.textSplitterTokenSplitter",
   "typeVersion": 1,
   "position": [
    650,
    480
   ],
   "parameters": {
    "chunkSize": 32,
    "chunkOverlap": 6
   }
  },
  {
   "id": "embedding",
   "name": "Embeddings OpenAI",
   "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
   "typeVersion": 1.2,
   "position": [
    350,
    250
   ],
   "parameters": {
    "model": "text-embedding-3-small",
    "options": {
     "dimensions": 256,
     "batchSize": 32,
     "encodingFormat": "float"
    }
   },
   "retryOnFail": false
  }
 ],
 "connections": {
  "Run manually": {
   "main": [
    [
     {
      "node": "Create unique own store fixture",
      "type": "main",
      "index": 0
     }
    ]
   ]
  },
  "Create unique own store fixture": {
   "main": [
    [
     {
      "node": "Own Simple Vector Store",
      "type": "main",
      "index": 0
     }
    ]
   ]
  },
  "Default Data Loader": {
   "ai_document": [
    [
     {
      "node": "Own Simple Vector Store",
      "type": "ai_document",
      "index": 0
     }
    ]
   ]
  },
  "Token Splitter": {
   "ai_textSplitter": [
    [
     {
      "node": "Default Data Loader",
      "type": "ai_textSplitter",
      "index": 0
     }
    ]
   ]
  },
  "Embeddings OpenAI": {
   "ai_embedding": [
    [
     {
      "node": "Own Simple Vector Store",
      "type": "ai_embedding",
      "index": 0
     }
    ]
   ]
  }
 },
 "settings": {
  "executionOrder": "v1"
 },
 "meta": {
  "templateCredsSetupCompleted": false,
  "source": "datapopcorn.ai/workflow/nodes"
 }
}