Spaces:
Sleeping
Sleeping
ForStream commited on
Commit ·
f5f43a0
1
Parent(s): b230dc6
Fix: 경로 셋업을 컨테이너/로컬 둘 다 동작하게 (rag_engine ModuleNotFoundError 해결)
Browse files- api/main.py +17 -8
api/main.py
CHANGED
|
@@ -28,21 +28,30 @@ from fastapi.middleware.cors import CORSMiddleware
|
|
| 28 |
from fastapi.responses import FileResponse, JSONResponse
|
| 29 |
from pydantic import BaseModel
|
| 30 |
|
| 31 |
-
#
|
| 32 |
API_DIR = Path(__file__).resolve().parent
|
| 33 |
-
HF_APP_DIR = API_DIR.parent
|
| 34 |
-
|
| 35 |
-
|
|
|
|
|
|
|
|
|
|
| 36 |
sys.path.insert(0, str(CODE_DIR))
|
| 37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
import rag_engine
|
| 39 |
import semantic_search as ss
|
| 40 |
import llm_adapters
|
| 41 |
|
| 42 |
-
#
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
TTL_PATH = ONTOLOGY_DIR / "investment_ontology_v1_10.ttl"
|
| 47 |
JSONL_PATH = ONTOLOGY_DIR / "regulations_chunks_v14.jsonl"
|
| 48 |
ALIAS_PATH = ONTOLOGY_DIR / "alias_dictionary.json"
|
|
|
|
| 28 |
from fastapi.responses import FileResponse, JSONResponse
|
| 29 |
from pydantic import BaseModel
|
| 30 |
|
| 31 |
+
# 경로 셋업 — Docker 컨테이너(/app/api/main.py)와 로컬 개발(active/hf_app/api/main.py) 둘 다 지원
|
| 32 |
API_DIR = Path(__file__).resolve().parent
|
| 33 |
+
HF_APP_DIR = API_DIR.parent # 컨테이너: /app, 로컬: active/hf_app
|
| 34 |
+
|
| 35 |
+
# code/rag_engine 위치 — 컨테이너는 /app/code, 로컬은 active/code
|
| 36 |
+
_container_code = HF_APP_DIR / "code"
|
| 37 |
+
_local_code = HF_APP_DIR.parent / "code"
|
| 38 |
+
CODE_DIR = _container_code if _container_code.exists() else _local_code
|
| 39 |
sys.path.insert(0, str(CODE_DIR))
|
| 40 |
|
| 41 |
+
# 데이터 위치 — 컨테이너는 /app/active/ontology, 로컬은 active/ontology
|
| 42 |
+
_container_data = HF_APP_DIR / "active" / "ontology"
|
| 43 |
+
_local_data = HF_APP_DIR.parent / "ontology"
|
| 44 |
+
# Dockerfile에서도 data/를 /app/active/ontology로 COPY함 (HF_APP_DIR/active/ontology)
|
| 45 |
+
ONTOLOGY_DIR = _container_data if _container_data.exists() else _local_data
|
| 46 |
+
|
| 47 |
import rag_engine
|
| 48 |
import semantic_search as ss
|
| 49 |
import llm_adapters
|
| 50 |
|
| 51 |
+
# 자산 파일 (다운로드 카드용 — assets/는 LFS 추가 전까지 미존재)
|
| 52 |
+
PAPER_PATH = HF_APP_DIR / "assets" / "paper_v5.pdf"
|
| 53 |
+
ONT_GRAPH_PNG = HF_APP_DIR / "assets" / "v08_ontology_graph.png"
|
| 54 |
+
|
| 55 |
TTL_PATH = ONTOLOGY_DIR / "investment_ontology_v1_10.ttl"
|
| 56 |
JSONL_PATH = ONTOLOGY_DIR / "regulations_chunks_v14.jsonl"
|
| 57 |
ALIAS_PATH = ONTOLOGY_DIR / "alias_dictionary.json"
|