벡터 검색과 헝겊을 브라우저에 가져 오는 JavaScript 라이브러리!
| ? ML 종이 검토 자 | ? 프롬프트 향상제 | ? 책임있는 AI 보조 |
Mememo는 최첨단 가장 가까운 이웃 검색 기술 HNSW에 브라우저 환경에 적응하는 JavaScript 라이브러리입니다. INDEXEDDB 및 웹 작업자와 같은 현대 및 기본 웹 기술로 개발 된이 툴킷은 클라이언트 측 하드웨어 기능을 활용하여 연구원과 개발자가 브라우저에서 수백만 개의 고차원 벡터를 효율적으로 검색 할 수 있도록합니다. Mememo는 예제 Application Application Application Rag Playground에서 보여 주듯이 개인 및 개인화 된 컨텐츠 제작 및 대화식 프로토 타이핑과 같은 흥미로운 새로운 디자인 및 연구 기회를 가능하게합니다.
Mememo는 브라우저와 Node.js 환경을 모두 지원합니다. Mememo를 설치하려면 npm 사용할 수 있습니다.
npm install mememo그런 다음 벡터 인덱스를 생성하고 두 가지 기능을 통해 가장 가까운 이웃 검색을 수행 할 수 있습니다.
// Import the HNSW class from the MeMemo module
import { HNSW } from 'mememo' ;
// Creating a new index
const index = new HNSW ( { distanceFunction : 'cosine' } ) ;
// Inserting elements into our index in batches
let keys : string [ ] ;
let values : number [ ] [ ] ;
await index . bulkInsert ( keys , values ) ;
// Find k-nearest neighbors
let query : number [ ] ;
const { keys , distances } = await index . query ( query , k ) ; 이 저장소 복제 또는 다운로드 :
git clone [email protected]:poloclub/mememo.git종속성 설치 :
npm install단위 테스트에 Vitest를 사용하십시오.
npm run test
이 저장소 복제 또는 다운로드 :
git clone [email protected]:poloclub/mememo.git예제 폴더로 이동하십시오.
cd ./examples/rag-playground종속성 설치 :
npm install그런 다음 대출 설명자를 실행하십시오.
npm run dev
LocalHost : 3000으로 이동하십시오. 브라우저에서 실행되는 세 가지 설명자가 표시됩니다 :)
Mememo는 Jay Wang과 Polo Chau에 의해 만들어졌습니다.
Mememo에 대한 자세한 내용은 Sigir'24에 게시 된 연구 논문을 확인하십시오.
@inproceedings { wangMeMemoOndeviceRetrieval2024 ,
title = { {{MeMemo}}: {{On-device Retrieval Augmentation}} for {{Private}} and {{Personalized Text Generation}} } ,
booktitle = { Proceedings of the 47th {{International ACM SIGIR Conference}} on {{Research}} and {{Development}} in {{Information Retrieval}} } ,
author = { Wang, Zijie J. and Chau, Duen Horng } ,
year = { 2024 } ,
urldate = { 2024-06-26 } ,
langid = { english }
}이 소프트웨어는 MIT 라이센스에 따라 사용할 수 있습니다.
궁금한 점이 있으시면 문제를 열거나 Jay Wang에 문의하십시오.