Dongjin1203's picture
Initial commit for HF Spaces deployment
4739096
raw
history blame
1.76 kB
import os
from RAG_pipeline_v1.rag_config import RAGConfig
from RAG_pipeline_v1.rag_data_processing import RAGVectorDBPipeline
from RAG_pipeline_v1.rag_pipeline import RAGPipeline
from RAG_pipeline_v1.rag_evaluator import RAGEvaluator
def main():
"""메인 μ‹€ν–‰ ν•¨μˆ˜"""
# ===== ν™˜κ²½ μ„€μ • =====
print("="*60)
print("RAG μ‹œμŠ€ν…œ μ΄ˆκΈ°ν™”")
print("="*60)
os.environ["OPENAI_API_KEY"] = RAGConfig.OPENAI_API_KEY
config = RAGConfig()
config.validate()
print(config)
# ===== 1. Vector DB ꡬ좕 (졜초 1회만) =====
# 주석 ν•΄μ œν•˜μ—¬ μ‹€ν–‰
# print("\n" + "="*60)
# print("Vector DB ꡬ좕")
# print("="*60)
# db_pipeline = RAGVectorDBPipeline(config)
# vectorstore = db_pipeline.build()
# db_pipeline.test_search()
# ===== 2. RAG νŒŒμ΄ν”„λΌμΈ μ΄ˆκΈ°ν™” =====
print("\n" + "="*60)
print("RAG νŒŒμ΄ν”„λΌμΈ μ΄ˆκΈ°ν™”")
print("="*60)
rag = RAGPipeline(config=config)
# ===== 3. ν…ŒμŠ€νŠΈ 쿼리 =====
print("\n" + "="*60)
print("ν…ŒμŠ€νŠΈ 쿼리")
print("="*60)
test_queries = [
"ν•œμ˜λŒ€ν•™κ΅μ˜ νŠΉμ„±ν™” κ΅μœ‘ν™˜κ²½ ꡬ좕 사업은 λ¬΄μ—‡μΈκ°€μš”?",
"μž¬λ‚œ μ•ˆμ „ 관리 μ‹œμŠ€ν…œ ꡬ좕 사업은 μ–΄λ–€ 것이 μžˆλ‚˜μš”?",
]
for query in test_queries:
result = rag.generate_answer(query)
rag.print_result(result)
print("\n")
# ===== 4. 평가 =====
print("\n" + "="*60)
print("μ‹œμŠ€ν…œ 평가")
print("="*60)
evaluator = RAGEvaluator(rag)
eval_results = evaluator.evaluate()
print("\n" + "="*60)
print("βœ… λͺ¨λ“  μž‘μ—… μ™„λ£Œ")
print("="*60)
if __name__ == "__main__":
main()