Cassandra는 NoSQL, 행 지향, 높은 확장성과 가용성을 제공하는 데이터베이스입니다. 버전 5.0부터 벡터 검색 기능을 제공합니다.

개요

Cassandra Document Loader는 Cassandra 데이터베이스에서 LangChain Document 목록을 반환합니다. 문서를 검색하려면 CQL 쿼리 또는 테이블 이름을 제공해야 합니다. Loader는 다음 매개변수를 사용합니다:
  • table: (선택사항) 데이터를 로드할 테이블입니다.
  • session: (선택사항) cassandra driver session입니다. 제공되지 않으면 cassio에서 해결된 session이 사용됩니다.
  • keyspace: (선택사항) 테이블의 keyspace입니다. 제공되지 않으면 cassio에서 해결된 keyspace가 사용됩니다.
  • query: (선택사항) 데이터를 로드하는 데 사용되는 쿼리입니다.
  • page_content_mapper: (선택사항) 행을 문자열 페이지 콘텐츠로 변환하는 함수입니다. 기본값은 행을 JSON으로 변환합니다.
  • metadata_mapper: (선택사항) 행을 metadata dict로 변환하는 함수입니다.
  • query_parameters: (선택사항) session.execute 호출 시 사용되는 쿼리 매개변수입니다.
  • query_timeout: (선택사항) session.execute 호출 시 사용되는 쿼리 타임아웃입니다.
  • query_custom_payload: (선택사항) session.execute 호출 시 사용되는 쿼리 custom_payload입니다.
  • query_execution_profile: (선택사항) session.execute 호출 시 사용되는 쿼리 execution_profile입니다.
  • query_host: (선택사항) session.execute 호출 시 사용되는 쿼리 host입니다.
  • query_execute_as: (선택사항) session.execute 호출 시 사용되는 쿼리 execute_as입니다.

Document Loader로 문서 로드하기

from langchain_community.document_loaders import CassandraLoader

cassandra driver Session에서 초기화

Cassandra driver 문서에 설명된 대로 cassandra.cluster.Session 객체를 생성해야 합니다. 세부 사항은 다를 수 있지만(예: 네트워크 설정 및 인증), 다음과 같을 수 있습니다:
from cassandra.cluster import Cluster

cluster = Cluster()
session = cluster.connect()
Cassandra 인스턴스의 기존 keyspace 이름을 제공해야 합니다:
CASSANDRA_KEYSPACE = input("CASSANDRA_KEYSPACE = ")
document loader 생성:
loader = CassandraLoader(
    table="movie_reviews",
    session=session,
    keyspace=CASSANDRA_KEYSPACE,
)
docs = loader.load()
docs[0]
Document(page_content='Row(_id=\'659bdffa16cbc4586b11a423\', title=\'Dangerous Men\', reviewtext=\'"Dangerous Men,"  the picture\\\'s production notes inform, took 26 years to reach the big screen. After having seen it, I wonder: What was the rush?\')', metadata={'table': 'movie_reviews', 'keyspace': 'default_keyspace'})

cassio에서 초기화

cassio를 사용하여 session과 keyspace를 구성할 수도 있습니다.
import cassio

cassio.init(contact_points="127.0.0.1", keyspace=CASSANDRA_KEYSPACE)

loader = CassandraLoader(
    table="movie_reviews",
)

docs = loader.load()

저작자 표시

Apache Cassandra, Cassandra 및 Apache는 미국 및/또는 기타 국가에서 Apache Software Foundation의 등록 상표 또는 상표입니다.

Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.
I