실습마다 인증키·모델명·base URL을 반복 입력하면
코드가 빠르게 더러워진다. .env 한 파일에 모아두자.
# Cell 1 api_key = "sk-..." url = "https://..." # Cell 2 (같은 거 또) api_key = "sk-..." url = "https://..."
# .env (한 번만 작성)
api_key=sk-...
api_base_url=https://...
# 어느 셀에서든 두 줄 from dotenv import load_dotenv load_dotenv() key = os.getenv("api_key")
.env 는 git에 올리지 않는 게 원칙. .gitignore 에 추가해 두세요.
OPENAI_API_KEYcredential_keysend_system_namemodelapi_base_urluser_idembedding_credential_keyuser_pwimport os from dotenv import set_key env_vars = { "OPENAI_API_KEY": OPENAI_API_KEY, "credential_key": credential_key, "send_system_name": send_system_name, "model": model, "api_base_url": api_base_url, "user_id": user_id, "embedding_credential_key": embedding_credential_key, "user_pw": user_pw, } for key, value in env_vars.items(): set_key(".env", key, value)
set_key 는 .env가 없으면 만들고, 있으면 해당 키만 갱신한다.
비밀번호처럼 한 번만 받아두면 그 뒤로는 무신경해도 좋다.
load_dotenv(override=True) 로 .env를 프로세스에 주입.
os.getenv() 로 어디서든 꺼낸다.
import os from dotenv import load_dotenv load_dotenv(override=True) # 어디서든 꺼내 쓰기 key = os.getenv("credential_key") url = os.getenv("api_base_url") name = os.getenv("model")
from utils.helper import check_llm_api, check_embedding_api, check_confluence_api from dotenv import load_dotenv load_dotenv(override=True) check_llm_api() # 인증키 + base_url check_embedding_api() # 임베딩 키 check_confluence_api() # 위키 비번
.env 만들기 → load_dotenv → check_api 통과.
다음 챕터부터 모든 노트북은 같은 두 줄로 시작한다.