2025. 5. 29. 20:42ㆍ코딩/AI
라마인덱스 설명·사용법·설치·파이썬 예제코드 완전 가이드
https://github.com/run-llama/llama_index?tab=readme-ov-file
GitHub - run-llama/llama_index: LlamaIndex is the leading framework for building LLM-powered agents over your data.
LlamaIndex is the leading framework for building LLM-powered agents over your data. - run-llama/llama_index
github.com
1. 라마인덱스 설명 ― 개념과 기능 원리
라마인덱스(LlamaIndex)는 LLM(대규모 언어 모델) 기반 애플리케이션에서 데이터 수집·인덱싱·검색을 자동화해 주는 오픈소스 데이터 프레임워크입니다. 핵심 철학은 RAG(Retrieval Augmented Generation) 패러다임을 간소화해 “몇 줄의 코드”만으로 지식베이스 챗봇이나 문서 Q&A, 멀티-에이전트 워크플로 등을 만들 수 있게 돕는 것이죠.
1-1. RAG 두 단계 – 인덱싱과 쿼리
- 인덱싱 스테이지
- 다양한 소스(API, PDF, DB 등) → 문서 객체로 변환
- 문서를 벡터 임베딩하고 메타데이터와 함께 저장
- 쿼리 스테이지
- 사용자의 질문 → 인덱스에서 관련 컨텍스트 검색
- LLM 프롬프트에 컨텍스트 삽입 → 정확도 상승
이 구조 덕분에 모델은 최신·사내·개인 데이터를 “기억”하지 않고도 고품질 답변을 생성할 수 있습니다. Pathway
1-2. 데이터 처리 아키텍처
컴포넌트 | 컴포넌트 | 역할대표 클래스 |
Data Connector | 외부 데이터 로드 | SimpleDirectoryReader, GithubRepositoryReader |
Indexing | 의미 임베딩 + 저장 | VectorStoreIndex, TreeIndex |
Query Interface | 자연어 질문 처리 | QueryEngine, Tool |
VectorStoreIndex가 가장 많이 쓰이지만, 목록·트리·키워드 색인 등도 지원해 데이터 특성에 맞춰 선택 가능합니다. valprovia.com
2. 라마인덱스 설치 – 시작을 위한 3분 셋업
2-1. 기본 설치
pip install llama-index # 스타터 번들
위 명령은 llama-index-core, llama-index-llms-openai, llama-index-embeddings-openai까지 한 번에 설치해 줍니다.
2-2. 환경 변수
export OPENAI_API_KEY="sk-..." # OpenAI 사용 시 필수
export LLAMA_INDEX_CACHE_DIR="~/.cache/llamaindex" # 옵션
2-3. 로컬 LLM·임베딩 대안
인터넷 없이도 돌리고 싶다면:
pip install llama-index-llms-ollama \
llama-index-embeddings-huggingface \
sentence-transformers
- Ollama: ollama run llama3.1
- HuggingFace 임베딩: BAAI/bge-small-en-v1.5 등
3. 라마인덱스 사용법 – 필수 API 흐름
- 모델 지정 → Settings.llm / Settings.embed_model
- 문서 로드 → SimpleDirectoryReader("data").load_data()
- 인덱스 빌드 → VectorStoreIndex.from_documents(docs)
- 쿼리 엔진 → query_engine = index.as_query_engine()
- 질의응답 → query_engine.query("질문")
인덱스를 storage_context.persist()로 저장해 두면, 재시작 시 load_index_from_storage()로 곧바로 재사용 가능하니 비용·시간을 절감할 수 있습니다.

4. 파이썬 예제코드 – 벡터 스토어부터 에이전트까지
4-1. 기본 벡터 스토어 구축
import os
os.environ["OPENAI_API_KEY"] = "YOUR_KEY"
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader
docs = SimpleDirectoryReader("docs").load_data()
index = VectorStoreIndex.from_documents(docs)
4-2. 로컬 LLM + HuggingFace 임베딩
from llama_index.core import Settings
from llama_index.llms.ollama import Ollama
from llama_index.embeddings.huggingface import HuggingFaceEmbedding
Settings.llm = Ollama(model="llama3.1")
Settings.embed_model = HuggingFaceEmbedding(model_name="BAAI/bge-small-en-v1.5")
4-3. 함수 호출 에이전트 워크플로
from llama_index.core.agent.workflow import FunctionAgent
def multiply(a: float, b: float) -> float:
return a * b
agent = FunctionAgent(
tools=[multiply],
llm=Ollama(model="llama3.1"),
system_prompt="두 숫자를 곱해 드립니다."
)
print(agent.run("1234×4567은?"))
4-4. End-to-End 질의응답 시스템
from llama_index.core import (
SimpleDirectoryReader, VectorStoreIndex,
StorageContext, load_index_from_storage
)
# ① 인덱스 생성
index = VectorStoreIndex.from_documents(
SimpleDirectoryReader("data").load_data()
)
index.storage_context.persist()
# ② 로드 후 질의
storage = StorageContext.from_defaults(persist_dir="./storage")
qa_index = load_index_from_storage(storage)
print(qa_index.as_query_engine().query("LlamaIndex 장점은?"))

5. 깃허브 링크 & 커뮤니티 리소스
- 공식 GitHub: github.com/run-llama/llama_index – 매일 커밋이 올라오는 활발한 저장소입니다. (GitHub)
- 문서 사이트: llamaindex.ai – 빠른 시작 튜토리얼과 300 + 통합 패키지 목록 제공. (llamaindex.ai)
- 사용 사례 비교: LangChain vs. LlamaIndex, Pathway 리포트 등에서 장단점을 확인하면 도구 선택에 도움이 됩니다. (Medium, Pathway)
6. 결론 – 왜 지금 라마인덱스를 배워야 할까?
- RAG 표준화: 기업·스타트업 모두 ‘검색 증강 생성’이 필수 기술로 자리 잡음.
- 생산성 폭증: 데이터 커넥터 → 인덱스 → 질의엔진까지 한 몸체처럼 연결.
- 확장성: 로컬 노트북부터 클라우드까지, 그리고 LlamaCloud까지 손쉽게 이식.
- 커뮤니티 파워: 하루 수백 커밋·수천 스타로 검증된 오픈소스 에코시스템.
다가올 생성형 AI 시대에 데이터 오케스트레이션을 선점하고 싶다면, 오늘 바로 라마인덱스를 설치해 작은 POC(Proof of Concept)부터 시작해 보세요. 여러분의 질문 한 줄이 곧 지식 관리 자동화의 첫 단추가 될 것입니다.
https://docs.llamaindex.ai/en/stable/
LlamaIndex - LlamaIndex
Welcome to LlamaIndex 🦙 ! LlamaIndex is the leading framework for building LLM-powered agents over your data with LLMs and workflows. Introduction What is context augmentation? What are agents and workflows? How does LlamaIndex help build them? Use case
docs.llamaindex.ai
'코딩 > AI' 카테고리의 다른 글
langchain-naver-community 사용법, 네이버 기사 검색 API 블로그 자동화 파이썬 예제 코드 (3) | 2025.05.28 |
---|---|
Mircrosoft BitNet 성능, 사용법, 설치 방법, 모델 (1) | 2025.04.30 |
알리바바 AI LLM Qwen3 설명 사용법 설치 방법, 한국어 설정 (1) | 2025.04.30 |
n8n 사용법 총정리 :설명, github, 가이드, 설치 까지 (3) | 2025.04.29 |
PPT 다이어그램 플로우차트 자동화 생성 도구 : 냅킨 ai 사용법 (0) | 2025.04.24 |