
QDRANT는 벡터 간의 유사성을 찾는 데 특화된 검색 엔진 및 데이터베이스입니다. 추가 정보와 함께 벡터를 저장, 검색 및 관리 할 수있는 API가 있습니다. Qdrant는 고급 필터링 기능을 지원하도록 설계되었으므로 신경망 매칭, 패싯 검색 및 기타 응용 프로그램과 같은 작업에 유용합니다.
Qdrant는 Rust 프로그래밍 언어를 사용하여 구축되어 많은 양의 데이터를 처리 할 때에도 빠르고 신뢰할 수있는 성능을 보장합니다. QDRANT를 사용하여 임베딩 또는 신경망 인코더를 일치, 검색, 권장 등과 같은 작업을 위해 강력한 응용 프로그램으로 변환 할 수 있습니다. 특히, 벡터 데이터베이스 (특히 QDRANT)는 현대 LLM과 함께 벡터 저장소로 사용하는 데 인기가 급증했습니다. 좋은 예는 Chatgpt 검색 플러그인을 참조하십시오.
이 저장소에는 P2P (Peer-to-Peer) 통신 및 검색을 갖춘 Fly.io 조직의 개인 네트워크에서 고도로 사용 가능한 (HA) Qdrant 클러스터를 실행하는 데 필요한 모든 파일 및 구성이 포함되어 있습니다.
선호하는 지역에서 새로운 플라이 애플리케이션을 작성하여 시작하십시오. 이 저장소의 포크 또는 클론 내에서 다음 명령을 실행하십시오. 그러나 먼저 fly.toml 파일에 기본 영역 (및 앱 이름)을 설정하십시오.
Fly Cli 사용은 다음을 실행합니다.
fly launch --no-public-ips --from https://github.com/kylemclaren/qdrant-on-fly
이 명령은 하나의 런닝 머신과 첨부 된 볼륨으로 새로운 플라이 애플리케이션을 만듭니다. 프롬프트되면 yes 선택하여 기존 구성을 새로 생성 된 앱에 복사하십시오. PostgreSQL 데이터베이스 또는 OpdSash Redis 인스턴스를 작성하지 마십시오.
첫 번째 기계를 복제하여 클러스터를 확장하십시오. 현재 fly scale count 지속적인 스토리지 볼륨을 가진 스케일링 머신을 지원하지 않습니다. 우리는 '플라이 머신 클론'을 사용하여 클러스터를 확장합니다.
fly machine clone --region ord --selectfly status 기계를 복제하여 다른 영역으로 설정을 확장하십시오. 이제 ord 에는 두 명의 동료가 있고 다른 하나는 jnb 에 있어야합니다.
fly machine clone --region jnb --selectfly status동일한 조직 내의 비행 응용 프로그램은 다음 URI를 사용하여 QDRANT 데이터베이스에 연결할 수 있습니다.
http:// < fly-app-name > .flycast:6333먼저 개인 플라이 캐스트 IP 주소를 앱에 할당해야합니다. 다음 명령을 실행하여이를 수행 할 수 있습니다.
fly ips allocate-v6 --private Fly Private Network 외부에서 앱을 공개적으로 액세스 해야하는 경우, 공개 IP를 Fly 앱에 할당하고 Fly 프록시를 사용하여 정상으로 연결하기 시작할 수 있습니다 (예 : https://<fly-app-name>.fly.dev ).
경고 이렇게하면
QDRANT__SERVICE__API_KEY비밀을 설정하십시오.
fly proxy 사용하여 서버 포트를 로컬 시스템으로 전달하십시오. fly proxy 6333:6333 -a < fly-app-name >curl )를 사용하여 전달 된 포트의 QDRANT 인스턴스에 연결하십시오. 벡터 데이터를 저장하는 볼륨을 안전하게 처리하는 방법에 대한 자세한 내용은 볼륨의 Fly Documentation을 참조하십시오. curl -H " Content-Type: application/json " http://localhost:6333/cluster | jq{
"result" : {
"status" : " enabled " ,
"peer_id" : 8961156852769025 ,
"peers" : {
"8961156852769025" : {
"uri" : " http://e286376be66286.vm.qdrant-6pn.internal:6335/ "
},
"6238012613461344" : {
"uri" : " http://568370dc75418e.vm.qdrant-6pn.internal:6335/ "
},
"2504460418660966" : {
"uri" : " http://148e722b75d789.vm.qdrant-6pn.internal:6335/ "
}
},
"raft_info" : {
"term" : 1314 ,
"commit" : 3510 ,
"pending_operations" : 0 ,
"leader" : 8961156852769025 ,
"role" : " Leader " ,
"is_voter" : true
},
"consensus_thread_status" : {
"consensus_thread_status" : " working " ,
"last_update" : " 2023-06-20T22:23:48.543413978Z "
},
"message_send_failures" : {}
},
"status" : " ok " ,
"time" : 4.125e-05
}http : // localhost : 6333/dashboard로 이동하여 새로운 Qdrant Dashbaord를보고 데이터와 상호 작용하십시오.
기본적으로 Qdrant 데이터 및 스냅 샷은 /data/qdrant/ 에 저장됩니다. 기본 저장소 위치를 변경 해야하는 경우 QDRANT__STORAGE__SNAPSHOTS_PATH 및 QDRANT__STORAGE__STORAGE_PATH 변수를 FLY.TOML로 조정할 수 있습니다.
물티
이것이 좋은 생각입니까?
아마도 ¯_(ツ)_/¯ 아닐 것입니다
어려움에 직면하거나 질문이 있으시면 여기에서 자유롭게 문제를 일으키십시오.
문제를 제출하기 전에 디버그 로깅을 활성화하는 것이 좋습니다 : fly secrets set QDRANT__DEBUG=true QDRANT__LOG_LEVEL=DEBUG
또는 여기에서 커뮤니티 페이지에서 질문을 할 수 있습니다.
프로젝트에 기여하려면 프로젝트를 포기하고 풀 요청을 보내 주시기 바랍니다.