Skip to content

Amore-Innovation/backend

Repository files navigation

서버 실행 방법

  1. 환경 설정
# 가상환경 생성 (선택사항)
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
  1. 패키지 설치
pip install -r requirements.txt
  1. 환경 변수 설정(.env)
MONGODB_URL= 몽고DB URL
MONGO_DB_NAME= 데이터베이스 이름
OPENAI_API_KEY= OpenAI API 키
  1. 서버 실행
uvicorn main:app --reload

backend

crm_back/
├── .env                    # [보안] API KEY, DB URL(MongoDB 주소) 설정
├── .gitignore              # [설정] data/, .env, venv/ 등 불필요한 파일 제외
├── requirements.txt        # [설정] FastAPI, Motor, Beanie, Motor 등 패키지 목록
├── Dockerfile              # [배포] 서버 이미지 빌드 설정
├── docker-compose.yml      # [인프라] MongoDB와 서버를 컨테이너로 묶어 실행
├── main.py                 # [진입점] FastAPI 실행 및 DB 연결(Lifespan) 초기화
│
├── data/                   # [저장소] 실제 데이터가 물리적으로 저장되는 곳
│   ├── chroma_store/       # RAG용 벡터 DB 저장 폴더
│   └── mongo_data/         # MongoDB 실제 데이터가 쌓이는 폴더 (Docker Volume 연결)
│
└── app/                    # [코드] 서버 핵심 로직
    ├── models/             
    │   ├── api_dto.py      # [통신] 프론트엔드와 주고받는 데이터 규격 (Pydantic)
    │   └── domain.py       # [DB] MongoDB 컬렉션 및 자유 로그(RawLog) 모델 정의 (Beanie)
    │   
    ├── core/               
    │   ├── config.py       # [환경] 전역 변수 및 경로 설정 관리
    │   ├── mongo_db.py     # [연결] Motor & Beanie 초기화 설정
    │   ├── vector_store.py # [검색] ChromaDB 연결 및 RAG 검색/저장 로직
    │   └── trigger_engine.py # [감지] 로그 분석 후 AI 에이전트 호출 조건 설계
    │
    ├── agent/              # [AI] LangGraph 기반 지능형 에이전트
    │   ├── graph.py        # 워크플로우 상태 관리 및 흐름 정의
    │   ├── nodes.py        # 각 단계별 AI 행동(RAG 검색, 답변 생성 등) 구현
    │   └── prompts.py      # AI 성격 및 답변 지침(System Prompt) 모음 
    │
    └── api/                
        ├── routes.py       # [통로] 동적 로그 수집(C) 및 조회(R) API 엔드포인트 (CRUD)
        └── websocket.py    # [알림] 분석된 결과를 실시간으로 프론트에 전송하는 소켓

About

Amore-Innovation 공모전 - CRM 메시지 자동화 Agent 벡엔드

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published