1. 프로젝트 개요
목표
-온프레미스(On-premise) 환경에서도 사용 가능한 AI 기반 코딩 어시스턴트
- React / TypeScript / Java / Python / DB (MariaDB, Oracle) 언어 지원
- 자연어 → 코드 자동 생성, 코드 리뷰, 오류 수정, 주석 생성, 테스트코드 생성
- 보안성 보장, 클라우드 의존 없음, 기업 내부 정책 반영 가능
2. 주요 구성 요소
구성 요소 | 설명 |
1. AI 모델 | 코드 생성/분석용 오픈소스 LLM (Code Llama, StarCoder 등) |
2. 실행 런타임 | 로컬 또는 온프레미스 서버에 설치 가능한 Docker 컨테이너 기반 |
3. UI | 웹 기반 인터페이스 (React + TypeScript) |
4. API 서버 | FastAPI 또는 Spring Boot 기반으로 AI와 통신 |
5. 데이터베이스 | MariaDB, Oracle 연동 가능하도록 설계 |
6. 보안 & 권한 관리 | LDAP, OAuth2, RBAC 기반 인증 시스템 |
7. 배포 방식 | Kubernetes or Docker Compose 기반 |
3. 기술 스택 제안
이름 | 특징 | 언어 지원 | 메모리 요구사항 | 비고 |
Code Llama | Meta의 코드 전용 LLM | Python, C++, Java 등 | 최소 13B 이상 GPU 필요 | MIT 라이선스, 상업적 이용 가능 |
StarCoder | HuggingFace BigCode 프로젝트 | 다국어 지원 | 15B 이상 | Apache 2.0 라이선스 |
Phind-CodeLlama | Code Llama 기반 고성능 파인튜닝 모델 | 다국어 | 34B | 성능 우수, 대규모 GPU 필요 |
OpenChatCode | Code Llama 기반 경량 파인튜닝 모델 | 다국어 | 13B~ | 가벼움, 속도 빠름 |
> 추천: `StarCoder` 또는 `OpenChatCode-13B` (GPU 부하 고려)
기술 | 설명 |
FastAPI (Python) | 빠른 API 서버 개발, ASGI 기반, OpenAPI 제공 |
Spring Boot (Java) | 기업 시스템 통합 용이, 안정성 높음 |
### 🖼️ 프론트엔드
| 기술 | 설명 |
|------|------|
| React + TypeScript | UI 구성에 최적화된 SPA 프레임워크 |
| Monaco Editor | VSCode 기반 코드 에디터 임베딩 가능 |
---
### 🗃️ 데이터베이스
| 기술 | 설명 |
|------|------|
| MariaDB | 오픈소스 RDBMS, MySQL 호환 |
| Oracle DB | 기업용 시스템 연동 목적, JDBC/JPA 활용 |
| Redis | 세션, 캐시 관리를 위한 인메모리 저장소 |
---
### 🔐 보안
| 항목 | 기술 |
|------|------|
| 인증 | Keycloak / Auth0 / LDAP / OAuth2 |
| 권한 관리 | Role-Based Access Control (RBAC) |
| 암호화 | HTTPS, JWT, AES-256 |
---
### 📦 배포
| 기술 | 설명 |
|------|------|
| Docker | 어플라이언스 패키징 용이 |
| Kubernetes | 멀티 노드 배포 및 스케일링 |
| Helm Chart | CI/CD 및 배포 자동화 |
---
## ⚙️ 4. 시스템 아키텍처
```
+-----------------------------+
| 사용자 UI |
| (React + Monaco Editor) |
+------------+----------------+
|
+--------v---------+
| API 서버 | <--> 모델 서버
| (FastAPI/Spring) | ↑
+--------+---------+ |
| |
+--------v---------+ +---v----+
| DB 연결 계층 | | AI 모델 |
| (ORM, JDBC 등) | | (LLM) |
+------------------+ +----------+
```
---
## 📁 5. 기능별 구현 방향
| 기능 | 구현 방식 |
|------|-----------|
| 자연어 → 코드 생성 | AI 모델에 자연어 입력 후 코드 출력 |
| 코드 리뷰 | 코드 분석 후 피드백 제공 (예: Pylint, ESLint + AI) |
| 오류 수정 | AST 분석 + AI로 오류 원인 추론 및 수정 제안 |
| 자동 주석 생성 | 함수/클래스 단위로 자연어 요약 생성 |
| 테스트 코드 생성 | 함수명, 파라미터 기반 테스트 코드 생성 |
| 업무 지침 적용 | Prompt Engineering + RAG (Retrieval-Augmented Generation) 기반 지침 적용 |
---
## 📚 6. RAG 기반 지침 적용 (추가 기능)
- **RAG**(Retrieval-Augmented Generation) 기법 도입
- 기업 내부 문서, 표준 코딩 규칙, 업무 매뉴얼 등을 벡터 DB에 저장
- 사용자 요청 시 관련 정보 검색하여 AI 모델에 추가 prompt로 제공
- **기술 스택**
- 벡터 DB: [Chroma](https://www.trychroma.com/), [Pinecone](https://www.pinecone.io/)
- 임베딩 모델: [Sentence-BERT](https://www.sbert.net/), [BAAI/bge-base-en-v1.5](https://huggingface.co/BAAI/bge-base-en-v1.5)
---
## 💻 7. 하드웨어 사양 권장 (로컬/온프레미스)
| 항목 | 권장 사양 |
|------|------------|
| CPU | Intel i7 이상 또는 AMD Ryzen 7 이상 |
| RAM | 최소 64GB |
| GPU | NVIDIA RTX 3090 이상 (VRAM 24GB 이상) |
| 저장소 | SSD 1TB 이상 |
| OS | Linux (Ubuntu 20.04 이상 권장) |
---
## 📋 8. 라이선스 정리
| 기술 | 라이선스 | 상업적 사용 가능 여부 |
|------|----------|-----------------------|
| Code Llama | MIT | ✅ 가능 |
| StarCoder | Apache 2.0 | ✅ 가능 |
| FastAPI | MIT | ✅ 가능 |
| React | MIT | ✅ 가능 |
| Spring Boot | Apache 2.0 | ✅ 가능 |
| MariaDB | GPL v2 | ✅ 가능 |
| Oracle XE | 무료 버전 존재 | ✅ 가능 (제한 있음) |
---
## 📦 9. 패키징 및 배포 방안
- **Docker 이미지**로 모든 서비스 패키징
- `docker-compose.yml` 제공
- 필요한 경우 **Kubernetes Helm Chart** 제공
- **설치 스크립트** 제공 (자동 설치/배포)
---
## 📊 10. 확장 가능성
- **멀티 모델 지원**: 여러 LLM 동시 사용 가능
- **Plug-in 구조**: 새로운 언어, 기능 확장 가능
- **CI/CD 통합**: Jenkins, GitLab CI 등 연동 가능
---
## 📝 11. 제안서 요약
| 항목 | 내용 |
|------|------|
| 프로젝트명 | AI 기반 독립형 코딩 어시스턴트 어플라이언스 |
| 주요 기능 | 코드 생성, 리뷰, 주석, 테스트코드, 오류 수정 |
| 지원 언어 | React, TypeScript, Java, Python, SQL (MariaDB/Oracle) |
| AI 모델 | Code Llama, StarCoder, Phind 등 오픈소스 |
| 배포 방식 | Docker 기반, On-Premise 지원 |
| 보안 | RBAC, LDAP, HTTPS, JWT |
| 기술 스택 | React, FastAPI/Spring Boot, MariaDB, Redis, Docker |
| 라이선스 | MIT, Apache 2.0 등 모두 상업적 이용 가능 |
| 유지보수 | 자체 개발 가능, 커뮤니티 지원 기반 |
요구사항 명세서
기술 설계 문서
API 명세서
보안 정책
배포 매뉴얼
사용자 가이드
제안서 양식, 기술 설계 문서, API 명세서
'AI' 카테고리의 다른 글
Windows 11 환경에서 동작하는 로컬 AI 코드 생성 도구 (0) | 2025.07.11 |
---|---|
Windows 환경에서 동작하는 로컬 AI 코드 생성 도구 (0) | 2025.07.11 |
CodeBox-B.T.S (2) | 2025.07.11 |
Windows 11 + RTX 4080 환경에서 Wan 2.1 설치 가이드 (1) | 2025.07.07 |
Windows 11 환경에서 RTX 4080 GPU를 사용하여 WAN (Wide-Area Network) 오픈소스 모델을 활용해 이미지를 동영상으로 변환하는 과정 (2) | 2025.07.07 |