토니의 연습장
ollama 참고 본문
메모리 요구 사항
ex) llama2
- 7B(70억 파라미터) 모델은 일반적으로 최소 8GB의 RAM이 필요합니다.
- 13B(130억 파라미터) 모델은 일반적으로 최소 16GB의 RAM이 필요합니다.
- 70B(700억 파라미터) 모델은 일반적으로 최소 64GB의 RAM이 필요합니다.
만약 더 높은 양자화(quantization) 수준에서 문제가 발생한다면, q4 모델을 사용하거나 많은 메모리를 사용하는 다른 프로그램을 종료해보세요.
모델 변형(Variants)
- Chat 모델은 챗/대화(use case)에 맞춰 파인튜닝된 모델입니다. Ollama에서 기본값으로 사용되며, 태그 탭에서 -chat이 붙은 모델들이 여기에 해당합니다.
- 예시: ollama run llama2
- Pre-trained 모델은 챗 파인튜닝이 적용되지 않은 모델입니다. 태그 탭에서 -text로 표시되어 있습니다.
- 예시: ollama run llama2:text
기본적으로 Ollama는 4비트 양자화를 사용합니다. 다른 양자화 수준을 시도하려면 다른 태그를 사용해보세요. q 뒤의 숫자는 양자화에 사용되는 비트 수를 의미합니다(예: q4는 4비트 양자화). 숫자가 높을수록 모델의 정확도는 올라가지만, 실행 속도는 느려지고 필요한 메모리는 늘어납니다.
임베딩 차원 확인 예시
langchain_ollama 내부적으로 현재 임베딩 차원을 노출하는 별도의 메서드는 공식적으로 제공되지 않습니다. 이에 따라 한 번은 모델 로드 후 임베딩을 수행해야 아래와 같이 차원을 확인할 수 있습니다.
from langchain_ollama import OllamaEmbeddings
EMBEDDING_MODEL = "bge-m3"
embeddings = OllamaEmbeddings(model=EMBEDDING_MODEL)
# 임의의 텍스트를 임베딩
text = "Hello, world!"
embedding_vector = embeddings.embed_query(text)
# 임베딩 벡터 차원 확인
embedding_dimension = len(embedding_vector)
print("Embedding dimension:", embedding_dimension)
-> Embedding dimension: 1024
'언어 AI (NLP) > LLM & RAG' 카테고리의 다른 글
RAG 단계 요약 (0) | 2025.02.06 |
---|---|
SFT 와 RLHF (1) | 2025.02.04 |
Embedding - 개인 자원 고려하기 (2) | 2025.01.23 |
RAG 주의점 (Document Loader) (0) | 2025.01.21 |
Memory (3) | 2025.01.14 |