Upstash Vector
Upstash Vector는 vector를 저장하고 쿼리하는 데 사용할 수 있는 서버리스 vector 데이터베이스입니다.Installation
Upstash Console에서 새로운 서버리스 vector 데이터베이스를 생성하세요. 모델에 따라 선호하는 distance metric과 dimension count를 선택하세요.pip install upstash-vector로 Upstash Vector Python SDK를 설치하세요.
langchain의 Upstash Vector 통합은 Upstash Vector Python SDK의 wrapper입니다. 그렇기 때문에 upstash-vector 패키지가 필요합니다.
Integrations
Upstash Console의 자격 증명을 사용하여UpstashVectorStore 객체를 생성하세요.
또한 텍스트를 vector embedding으로 변환할 수 있는 Embeddings 객체를 전달해야 합니다.
UpstashVectorStore의 대안적인 방법은 embedding=True를 전달하는 것입니다. 이것은
Upstash Vector index가 연관된 embedding 모델을 가질 수 있는 능력 덕분에 UpstashVectorStore의 고유한
기능입니다. 이 구성에서는 삽입하려는 문서나 검색하려는 쿼리가 단순히 텍스트로 Upstash Vector에 전송됩니다.
백그라운드에서 Upstash Vector는 이러한 텍스트를 embedding하고 이러한 embedding으로 요청을 실행합니다.
이 기능을 사용하려면 모델을 선택하여 Upstash Vector index를 생성하고
단순히 embedding=True를 전달하세요:
Namespaces
namespace를 사용하여 index의 데이터를 분할할 수 있습니다. Namespace는 대량의 데이터를 쿼리하고 쿼리 속도를 높이기 위해 데이터를 분할하려는 경우에 유용합니다. namespace를 사용하면 결과에 대한 post-filtering이 없어 쿼리 결과가 더 정확해집니다.Inserting Vectors
Embeddings 객체를 사용하여 embedding됩니다.
대부분의 embedding 모델은 여러 문서를 한 번에 embedding할 수 있으므로 문서는 일괄 처리되어 병렬로 embedding됩니다.
배치 크기는 embedding_chunk_size 매개변수를 사용하여 제어할 수 있습니다.
embedding된 vector는 Upstash Vector 데이터베이스에 저장됩니다. 전송될 때 여러 vector가 함께 일괄 처리되어 HTTP 요청 수를 줄입니다.
배치 크기는 batch_size 매개변수를 사용하여 제어할 수 있습니다. Upstash Vector는 무료 티어에서 배치당 1000개의 vector 제한이 있습니다.
Querying Vectors
Vector는 텍스트 쿼리 또는 다른 vector를 사용하여 쿼리할 수 있습니다. 반환 값은 Document 객체의 list입니다.filter 매개변수를 활용할 수도 있습니다:
Deleting Vectors
Vector는 ID로 삭제할 수 있습니다.Getting information about the store
info function을 사용하여 distance metric dimension과 같은 데이터베이스에 대한 정보를 얻을 수 있습니다. 삽입이 발생하면 데이터베이스 indexing이 수행됩니다. 이 작업이 진행되는 동안 새로운 vector는 쿼리할 수 없습니다.pendingVectorCount는 현재 indexing 중인 vector의 수를 나타냅니다.
Upstash Redis
이 페이지는 LangChain과 함께 Upstash Redis를 사용하는 방법을 다룹니다.Installation and Setup
- Upstash Redis Python SDK는
pip install upstash-redis로 설치할 수 있습니다 - 전 세계적으로 분산되고 낮은 지연 시간과 높은 가용성을 가진 데이터베이스는 Upstash Console에서 생성할 수 있습니다
Integrations
모든 Upstash-LangChain 통합은 LangChain의 wrapper로 활용되는upstash-redis Python SDK를 기반으로 합니다.
이 SDK는 console에서 UPSTASH_REDIS_REST_URL 및 UPSTASH_REDIS_REST_TOKEN 매개변수를 제공하여 Upstash Redis DB를 활용합니다.
Cache
Upstash Redis는 LLM prompt 및 response의 cache로 사용할 수 있습니다. 이 cache를 import하려면:Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.