사용법 (sentence-transformers와 E5)
사용법 (sentence-transformers와 E5)
E5는 sentence-transformers나 Hugging Face transformers로 쉽게 쓸 수 있어요. 여기서는 sentence-transformers 기준으로 대표 사용법을 살펴볼게요.
sentence-transformers로 사용하기
from sentence_transformers import SentenceTransformer
model = SentenceTransformer('intfloat/e5-large-v2')
texts = [
"query: how much protein should a female eat",
"passage: As a general guideline, the CDC's average requirement of protein for women ages 19 to 70 is 46 grams per day."
]
embeddings = model.encode(texts)
인스트럭션 prefix
E5는 문장 앞에 도메인 접두사를 붙이면 성능이 올라가요.
- **검색(query-passage)**의 쿼리:
query:접두사 - 검색의 패시지:
passage:접두사 - 분류(classification):
分类: - 영어 외 작업도 각각의 접두사를 지원해요.
transformers로 사용하기
from transformers import AutoTokenizer, AutoModel
model = AutoModel.from_pretrained('intfloat/e5-large-v2')
tokenizer = AutoTokenizer.from_pretrained('intfloat/e5-large-v2')
임베딩을 뽑은 뒤엔 자주 L2 정규화(normalize) 후 코사인 유사도를 계산해요. 512 토큰 제한을 넘지 않도록 입력을 잘라주는 것도 기억하세요.