RedisAI 및 RedisGears에 대한 BERT 대규모 질문 응답 추론의 벤치마크
Unsplash의 Aliaksei manlyx 사진
업데이트된 연습 및 테스트:
https://reference-architecture.ai/docs/bert-qa-benchmarking/ — BERT LARGE UNCASE for Question Answering ~0.088387초
벤치마크 실행을 위한 전제 조건:
Debian 또는 ubuntu를 실행 중이라고 가정하고 docker 및 docker-compose(또는 conda를 통해 가상 환경을 만들 수 있음)가 있습니다.
git clone -b benchmark — recurse-submodules [email protected]:applied-knowledge-systems/the-pattern.git
cd the-pattern
./bootstrap_benchmark.sh
qasearch API에 대한 curl 호출로 끝나야 합니다.
Curl 호출은 다음과 같습니다.
curl -i -H “Content-Type: application/json” -X POST -d ‘{“search”:”Who performs viral transmission among adults?”}’ http://localhost:8080/qasearch
HTTP/1.1 200 OK
Server: gunicorn
Date: Fri, 15 Oct 2021 22:11:23 GMT
Connection: close
Content-Type: application/json
Content-Length: 426
{“links”:[{“created_at”:”2001",”rank”:29,”source”:”C0001486",”target”:”C0152083"}],”results”:[{“answer”:””,”sentence”:”Initially the 5 most gene 1 of the viral genome is translated into the viral A dROp which then replicates the viral genomic ANAs into negative strand ANAs”,”sentencekey”:”sentence:PMC302072.xml:{8YG}:11",”title”:”Heterogeneous nuclear ribonucleoprotein A1 regulates RNA synthesis of a cytoplasmic virus”}]}
샤드 ID가 있는 문장 키가 있거나 docker logs -f rgcluster에서 "캐시 키"를 가져옵니다. 한 가지 더 로그에서 해시태그에 해당하는 샤드의 포트를 알아내는 것입니다(샤드 ID라고도 함, 중괄호 안에 있는 항목 – 이 {8YG}와 같이 export_load 스크립트의 출력에도 동일하게 표시됩니다.
통화가 작동하는지 확인합니다.
redis-cli -c -p **30003** -h 127.0.0.1 get “bertqa **{8YG}** _PMC302072.xml: **{8YG}** :10_Who performs viral transmission among adults”
그런 다음 벤치마크를 실행합니다.
redis-benchmark -p 30004 -h 127.0.0.1 -n 10 get “bertqa{356}_PMC126080.xml:{356}:1_Who performs viral transmission among adults”
-n = 횟수.
추가하다
– CSV 형식으로 출력하려는 경우 csv
– 정밀도 3 – ms 단위로 더 많은 소수를 원하는 경우
벤치마킹 도구에 대한 추가 정보https://redis.io/topics/benchmarks
redis-utils가 로컬에 설치되어 있지 않은 경우 다음을 통해 동일하게 실행할 수 있습니다.
docker exec -it rgcluster /bin/sh -c “redis-benchmark -r 10000 -n 10000 PING”
플랫폼에는 20개의 기사, 8개의 Redis 노드 = 4개의 마스터 + 4개의 슬레이브만 있으므로 관련성이 좋지 않으며 많은 메모리가 필요하지 않습니다.
이 배포를 최적화하는 방법에는 여러 가지가 있습니다. 예를 들어 FP16 양자화 및 ONNX 런타임을 추가하면 이script가 좋은 출발점이 될 것입니다.
Reference
이 문제에 관하여(RedisAI 및 RedisGears에 대한 BERT 대규모 질문 응답 추론의 벤치마크), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/alexmikhalev/benchmarks-for-bert-large-question-answering-inference-for-redisai-and-redisgears-38n8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)