LlamaIndex의 RAG 프로세스는 개발자가 전체 프로세스의 특성화 설정을 수행할 수 있도록 전면적인 배치 지원을 제공했습니다. 일반적으로 볼 수 있는 배치 화면은 다음과 같습니다.
from llama_index.core import ServiceContext
service_context = ServiceContext.from_defaults(chunk_size=500)
import chromadb
from llama_index.vector_stores.chroma import ChromaVectorStore
from llama_index.core import StorageContext
chroma_client = chromadb.PersistentClient()
chroma_collection = chroma_client.create_collection("quickstart")
vector_store = ChromaVectorStore(chroma_collection=chroma_collection)
storage_context = StorageContext.from_defaults(vector_store=vector_store)
자동 검색 시 쿼리 엔진(쿼리 엔진)을 통해 검색 시 유사한 문구를 검색할 수 있습니다.
index = VectorStoreIndex.from_documents(documents)
query_engine = index.as_query_engine(similarity_top_k=5)
service_context = ServiceContext.from_defaults(llm=OpenAI())
query_engine = index.as_query_engine(response_mode='tree_summarize')
query_engine = index.as_query_engine(streaming=True)
LlamaIndex: Customization
import os
from dotenv import load_dotenv
!echo "OPENAI_API_KEY=<YOUR OpenAI Key>" >> .env # OpenAI Key 직접 넣기
load_dotenv()
api_key = os.getenv("OPENAI_API_KEY")
import chromadb
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, ServiceContext, StorageContext
from llama_index.vector_stores.chroma import ChromaVectorStore
from llama_index.llms.openai import OpenAI
!mkdir data
!wget https://raw.githubusercontent.com/jerryjliu/llama_index/main/examples/paul_graham_essay/data/paul_graham_essay.txt -O data/paul_graham_essay.txt
service_context = ServiceContext.from_defaults(
chunk_size=500,
llm=OpenAI()
)
chroma_client = chromadb.PersistentClient()
chroma_collection = chroma_client.create_collection("start-1")
vector_store = ChromaVectorStore(
chroma_collection=chroma_collection
)
storage_context = StorageCo
documents = SimpleDirectoryReader('data').load_data()
index = VectorStoreIndex.from_documents(
documents,
service_context=service_context,
storage_context=storage_context
)
query_engine = index.as_query_engine(
response_mode='tree_summarize', streaming=True
)
response = query_engine.query(
"작가는 무엇을 했는지 알려줄래?")
response.print_response_stream()