# InMemory Embedding Cache

**InMemory Embedding Cache 노드**는 임베딩 벡터를 메모리 상에 저장하고, 빠르게 조회할 수 있도록 구성된 **경량형 벡터 저장소**입니다. Retriever나 검색 기반 Q\&A 시스템에서, **임시 벡터 저장소로 활용하거나 테스트용 캐시 공간**으로 사용됩니다.&#x20;

***

### 주요 기능

* **세션 내 임베딩 캐시**: 외부 DB 없이 메모리에 직접 임베딩을 저장
* **벡터 검색 기반 노드와 연결**: Retriever Tool 등과 연동 가능
* **Namespace 기반 분리 지원**: 서로 다른 데이터셋을 구분해 저장 가능
* **빠른 테스트 및 반복 학습 시 유용**

<figure><img src="https://2658622170-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkjMyYilRWTdXwhLDYHx%2Fuploads%2Fgit-blob-4364ad9c99c9ccf81d3b1c72485ebd55a3aa6d58%2F%EC%8A%A4%ED%81%AC%EB%A6%B0%EC%83%B7%202025-05-09%20144716%20(1).png?alt=media" alt=""><figcaption><p>WindyFlo InMemory Embedding Cache</p></figcaption></figure>

<figure><img src="https://2658622170-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfkjMyYilRWTdXwhLDYHx%2Fuploads%2Fgit-blob-1768d608ae64712d3151441fc600adf4515ebe4a%2F%EC%8A%A4%ED%81%AC%EB%A6%B0%EC%83%B7%202025-05-09%20144725%20(1).png?alt=media" alt=""><figcaption><p>WindyFlo InMemory Embedding Cache Parameters</p></figcaption></figure>

### 입력값 (Inputs)

| 항목             | 설명                                                          | 필수 여부 |
| -------------- | ----------------------------------------------------------- | ----- |
| **Embeddings** | 저장할 임베딩 벡터 객체입니다. 일반적으로 `Embedding` 노드 또는 문서 임베딩 생성 노드에서 연결 | 필수    |

***

### 파라미터 (Parameters)

| 항목            | 설명                                                             |
| ------------- | -------------------------------------------------------------- |
| **Namespace** | (선택) 저장된 임베딩을 분리 관리하기 위한 고유 이름입니다. 동일한 캐시에 여러 데이터 그룹을 저장할 때 사용 |

***

### 출력값 (Outputs)

| 출력 항목                      | 설명                                                           |
| -------------------------- | ------------------------------------------------------------ |
| **InMemoryEmbeddingCache** | 벡터 검색이 가능한 캐시형 임베딩 저장소 객체로 출력됩니다. 이후 Retriever Tool 등에 연결 가능 |

***

### 활용 예시

1. **임시 문서 검색 테스트**\
   → 문서 → 임베딩 → InMemoryEmbeddingCache → Retriever → Q\&A 에이전트\
   → 외부 DB 없이 빠르게 검색 기반 질의응답 구현
2. **세션 내 벡터 재사용**\
   → 사용자 대화 중 수집한 콘텐츠를 실시간으로 임베딩하고 캐시에 저장\
   → 다음 질문에서 이를 기반으로 빠른 검색 수행
3. **Namespace 분리 활용**\
   → 예: `namespace = "sales"` → 영업용 데이터\
   → `namespace = "support"` → 고객지원용 데이터 분리

***

### 주의사항

* InMemory 기반이므로 **세션 종료 시 캐시 데이터는 모두 소멸**됩니다. 장기 저장용이 아님
* **대용량 데이터 처리 시 부적합**, 수백\~수천 문서 수준의 테스트 또는 단기 저장에 적합
* Namespace를 지정하지 않으면 기본 영역에 저장되며, **여러 작업이 섞일 수 있습니다**

***

InMemory Embedding Cache는 WindyFlo에서 빠른 검색 테스트 또는 임시 벡터 저장소를 구현할 때 이상적인 노드입니다. Retriever Tool과 함께 사용하면 강력한 문서 기반 질의응답 시스템을 구축할 수 있습니다.
