[toyp] CDocs - 1. 환경구성

이우철·2026년 3월 27일

cdocs

목록 보기
1/4

가칭 사내 문서 Q&A 지능형 에이전트 'CDocs' 만들기. 개인 토이 프로젝트입니다.

K모 쇼핑몰에서 탈출 후 잠깐 시간이 남아 그간 미뤄두었던 토이프로젝트를 진행하였습니다. 정리겸 남깁니다.

"가장 먼저 할 일은 AI의 집을 짓는 겁니다. 우리는 .env 파일을 통해 보안을 챙기고, 전용 설정 파일을 통해 깔끔하게 관리할 거예요."

  1. 환경 변수 설정 (.env)
    보안이 생명입니다! API 키는 절대 코드에 직접 적지 마세요.

    1 # .env 파일 예시
    2 NOTION_API_KEY=ntn_12345...
    3 NOTION_DATABASE_ID=abcde12345...
    4 CHROMA_DB_DIR=./data/chromadb
    5 TAVILY_API_KEY=tvly-xxxxx...

위에 보이듯 노션 api 가 필요하고 노션 db가 필요하고,
tavily api가 필요합니다.
사실 구하기 쉬운걸로 구하느라 요즘 어떤게 트랜드 인지는 살피지 못했습니다. 전에 쓰던것이라...
brave search 등을 써볼까 하다가 카드번호 입력의 압박을 견디지 못하고 그냥 tavily를 썼습니다.

vector db도 그냥 가볍게 chroma 로 가져갔습니다.

  1. 설정 로드 모듈 (src/utils/config.py)
import os
from dotenv import load_dotenv

# .env 파일 로드
load_dotenv()

# Notion 설정
NOTION_API_KEY = os.getenv("NOTION_API_KEY", "")
NOTION_DATABASE_ID = os.getenv("NOTION_DATABASE_ID", "")

# Search API 설정
TAVILY_API_KEY = os.getenv("TAVILY_API_KEY", "")

# 벡터 DB 설정
CHROMA_DB_DIR = os.getenv("CHROMA_DB_DIR", "./data/chromadb")

# 필요한 경우 설정값이 제대로 불러와지지 않았을 때 에러를 발생시키는 로직 추가 가능
if not NOTION_API_KEY:
    print("경고: NOTION_API_KEY가 환경 변수(.env)에 설정되어 있지 않습니다.") 

중요한게 빠져서 추가합니다.
해당 프로젝트는 docker를 노트북에 설치하고 (docker desktop 이겠죠),
그 안에서 ollama를 컨테이너로 올리고, ollama에 qwen3:1.7b(검색 질의응답용) 라이브러리와 mxbai-embed-large(임배딩용)를 라이브러리를 다운받아서 llm으로 사용하고 있음을 추가로 말씀드립니다.

소스 위치 : https://github.com/wclee7/CDocs

profile
개발 정리 공간 - 업무일때도 있고, 공부일때도 있고...

0개의 댓글