Update app.py
Browse files
app.py
CHANGED
|
@@ -3,37 +3,36 @@ import gradio as gr
|
|
| 3 |
|
| 4 |
# 모듈 코드들을 환경변수에서 가져와서 동적으로 실행
|
| 5 |
def load_hidden_modules():
|
| 6 |
-
"""환경변수에서 모듈 코드들을 가져와서 실행"""
|
| 7 |
|
| 8 |
-
# youtube_transcript_module 코드 로드
|
| 9 |
youtube_transcript_code = os.environ.get("YOUTUBE_TRANSCRIPT_MODULE_CODE", "")
|
| 10 |
if youtube_transcript_code:
|
| 11 |
-
|
|
|
|
|
|
|
| 12 |
|
| 13 |
-
# analyze_module 코드 로드
|
| 14 |
analyze_module_code = os.environ.get("ANALYZE_MODULE_CODE", "")
|
| 15 |
if analyze_module_code:
|
| 16 |
-
|
|
|
|
|
|
|
| 17 |
|
| 18 |
-
#
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
# product_review_module 코드 로드
|
| 34 |
-
product_blog_code = os.environ.get("PRODUCT_REVIEW_MODULE_CODE", "")
|
| 35 |
-
if product_blog_code:
|
| 36 |
-
exec(product_blog_code, globals())
|
| 37 |
|
| 38 |
# 숨겨진 모듈들 로드
|
| 39 |
load_hidden_modules()
|
|
|
|
| 3 |
|
| 4 |
# 모듈 코드들을 환경변수에서 가져와서 동적으로 실행
|
| 5 |
def load_hidden_modules():
|
| 6 |
+
"""환경변수에서 모듈 코드들을 가져와서 실행 (의존성 순서 고려)"""
|
| 7 |
|
| 8 |
+
# 1단계: youtube_transcript_module 코드 먼저 로드 (다른 모듈들이 의존함)
|
| 9 |
youtube_transcript_code = os.environ.get("YOUTUBE_TRANSCRIPT_MODULE_CODE", "")
|
| 10 |
if youtube_transcript_code:
|
| 11 |
+
# import 문 제거하고 실행
|
| 12 |
+
cleaned_code = youtube_transcript_code.replace("from youtube_transcript_module import", "# from youtube_transcript_module import")
|
| 13 |
+
exec(cleaned_code, globals())
|
| 14 |
|
| 15 |
+
# 2단계: analyze_module 코드 로드
|
| 16 |
analyze_module_code = os.environ.get("ANALYZE_MODULE_CODE", "")
|
| 17 |
if analyze_module_code:
|
| 18 |
+
# import 문 수정
|
| 19 |
+
cleaned_code = analyze_module_code.replace("from youtube_transcript_module import YouTubeTranscriptClient", "# from youtube_transcript_module import YouTubeTranscriptClient")
|
| 20 |
+
exec(cleaned_code, globals())
|
| 21 |
|
| 22 |
+
# 3단계: 나머지 blog 모듈들 로드
|
| 23 |
+
module_codes = [
|
| 24 |
+
("GENERAL_BLOG_MODULE_CODE", "general_blog_module"),
|
| 25 |
+
("HEALTH_BLOG_MODULE_CODE", "health_blog_module"),
|
| 26 |
+
("TRAVEL_BLOG_MODULE_CODE", "travel_blog_module"),
|
| 27 |
+
("PRODUCT_REVIEW_MODULE_CODE", "product_review_module")
|
| 28 |
+
]
|
| 29 |
+
|
| 30 |
+
for env_key, module_name in module_codes:
|
| 31 |
+
module_code = os.environ.get(env_key, "")
|
| 32 |
+
if module_code:
|
| 33 |
+
# import 문 정리
|
| 34 |
+
cleaned_code = module_code.replace(f"from youtube_transcript_module import YouTubeTranscriptClient", "# from youtube_transcript_module import YouTubeTranscriptClient")
|
| 35 |
+
exec(cleaned_code, globals())
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
# 숨겨진 모듈들 로드
|
| 38 |
load_hidden_modules()
|