Qdrant 인터페이스: API와 SDK

Qdrant 인터페이스: API와 SDK (interfaces)

Qdrant와 통신할 때 어떤 클라이언트를 쓸 수 있고, REST API와 gRPC 중 무엇을 골라야 할지 고민하게 돼요. 이 문서에서 Qdrant가 공식 지원하는 클라이언트 목록과 API 기준(reference)을 정리해 드릴게요.

출처: Qdrant 공식문서

Qdrant는 다음 "공식" 클라이언트들을 지원해요.

참고: 여기에 없는 언어를 사용한다면 REST API를 직접 쓰거나 OpenAPI 또는 protobuf 정의를 이용해 여러분의 언어용 클라이언트를 직접 생성할 수 있어요.

클라이언트 라이브러리 (Client Libraries)

Client Repository Installation Version
python Python pip install qdrant-client[fastembed] Latest Release
typescript JavaScript / Typescript npm install @qdrant/js-client-rest Latest Release
rust Rust cargo add qdrant-client Latest Release
golang Go go get github.com/qdrant/go-client Latest Release
.net .NET dotnet add package Qdrant.Client Latest Release
java Java Available on Maven Central Latest Release

API 레퍼런스 (API Reference)

Qdrant와의 모든 상호작용은 REST API를 통해 이루어져요. Qdrant를 처음 쓰거나 프로토타입을 만들고 있다면 REST API 사용을 권장해요.

API Documentation
REST API OpenAPI Specification
gRPC API gRPC protobuf definitions

gRPC 인터페이스

gRPC 메서드는 REST와 같은 원칙을 따라요. 각 REST 엔드포인트마다 대응하는 gRPC 메서드가 있어요.

설정 파일에 따라, gRPC 인터페이스는 지정된 포트에서 제공돼요.

service:
  grpc_port: 6334

Docker로 서비스를 실행하면 이렇게 보여요.

docker run -p 6333:6333 -p 6334:6334 \
    -v $(pwd)/qdrant_storage:/qdrant/storage:z \
    qdrant/qdrant

gRPC는 언제 쓸까요: gRPC와 REST API 중 선택은 편의성과 속도 사이의 트레이드오프예요. gRPC는 바이너리 프로토콜이라 디버깅이 더 까다로울 수 있어요. Qdrant에 이미 익숙하고 애플리케이션의 성능을 최적화하려는 경우에는 gRPC 사용을 권장해요.

더 알아보기 (Learn more)