ArcadeDBDocumentStore

ArcadeDBDocumentStore

API reference: ArcadeDB GitHub link: https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/arcadedb

출처: 문서

본문

ArcadeDB는 LSM_VECTOR(HNSW) 인덱스로 벡터 검색을 지원하는 다중 모델 데이터베이스예요. ArcadeDBDocumentStore는 모든 작업에 ArcadeDB의 HTTP/JSON API를 사용합니다 — 특별한 드라이버가 필요 없죠. 조밀 벡터 임베딩 검색과 SQL 기반 메타데이터 필터링을 지원해요.

자세한 내용은 ArcadeDB 문서를 참고하세요.

Installation

Docker로 ArcadeDB를 실행하고 설정에 맞게 비밀번호를 바꾸세요:

docker run -d -p 2480:2480 \
  -e JAVA_OPTS="-Darcadedb.server.rootPassword=arcadedb" \
  arcadedata/arcadedb:latest

Haystack 통합을 설치하세요:

pip install arcadedb-haystack

Usage

환경 변수로 자격 증명을 설정하거나(권장) 명시적으로 전달하세요:

export ARCADEDB_USERNAME=root
export ARCADEDB_PASSWORD=arcadedb

문서 스토어를 초기화하고 문서를 작성하세요:

from haystack import Document
from haystack_integrations.document_stores.arcadedb import ArcadeDBDocumentStore

document_store = ArcadeDBDocumentStore(
    url="http://localhost:2480",
    database="haystack",
    embedding_dimension=768,
    recreate_type=True,
)
document_store.write_documents(
    [
        Document(content="This is first", embedding=[0.0] * 768),
        Document(content="This is second", embedding=[0.1, 0.2, 0.3] + [0.0] * 765),
    ])
print(document_store.count_documents())

초기화 파라미터에 대한 자세한 내용은 API docs를 참고하세요.

임베딩이 없거나 차원이 다른 문서는 0으로 채운(zero-padded) 벡터로 저장되어 작성·필터링이 가능해요. 실제 임베딩은 Embedder를 사용하세요.

Supported Retrievers

더 알아보기 (Learn more)