Skip to content

korea-mcp-lab/docco

Repository files navigation


📚 목차

  1. 배경
  2. 서비스 소개
  3. 핵심 기능 소개
  4. 프로젝트 설계
  5. 성능 개선
  6. 기술 스택
  7. 팀원 소개

배경

1. 반복적인 문서 작업 및 정보 분산

개발 과정에서 기능 설계 문서, 이슈 기록 문서, 회의록 문서 등 반복적인 문서 작업이 발생하며, 이 모든 것을 정리하는 데 어려움이 있습니다. 또한, 특정 자료를 찾는 데 시간이 소요됩니다.


2. 검색 및 문서 정제의 어려움

개발자들은 답변/해결책 검색에 하루에 대략 50분을 소요하는 것으로 나타났습니다.


💻 서비스 소개

DocCoMCP(Model Context Protocol)RAG(Retrieval-Augmented Generation) 기술을 핵심으로 하는 AI 팀 프로젝트 어시스턴트입니다.

프로젝트 정보가 파편화되어 있거나, 반복적인 문서 작업(기능 설계, 이슈 기록, 회의록 등)에 소요되는 시간 비용을 절감하고, 실제 개발을 지원하는 것을 목표로 합니다.


✨ 핵심 기능 소개


1. 팀 단위 문서 관리 플랫폼

• 정제되지 않은 Notion 문서를 가져와 정제된 Markdown 문서로 관리할 수 있도록 지원합니다.

• 대시보드 페이지: 최근 열람한 문서 및 생성된 문서를 확인할 수 있습니다.

• 문서 종류별 분류: 문서 종류에 따른 분류로 손쉽게 문서를 확인할 수 있습니다.


• 프로젝트 맞춤형 챗봇: 프로젝트 문서를 기반으로 질의 응답이 가능합니다.


2. 다양한 플랫폼 교차 명령 수행

Agentic AI 기술을 활용하여 여러 플랫폼(Notion, Jira, Discord 등)에 걸친 복잡한 명령을 자동으로 수행합니다


3. 프로젝트 맞춤형 코드 생성 (Code 어시스턴트)

문서 기반의 RAG를 진행하여 사용자 프로젝트에 맞춤화된 코드를 생성하는 Code 어시스턴트입니다.


🛠️ 프로젝트 설계

DocCo의 구조는 Agentic AI와 RAG 기술의 결합에 기반합니다.

1. Agentic AI Flowchart

  • Supervisor Agent: 사용자의 자연어 입력을 분석하고 작업을 조율하는 오케스트레이터 역할을 수행합니다.

  • Tool Selection: ReAct 기반으로 현재 작업 단계에 필요한 도구(Fetch, Send, Create, Sync Tools)를 동적으로 선택하고 호출합니다.

2. RAG 프로세스 설계

정확도 높은 답변 생성을 위해 Hybrid Retriever와 Reranker 전략을 도입했습니다.

  • Hybrid Retriever: 키워드 매칭(BM25)과 의미 기반 검색(Cosine Similarity)을 결합하여 검색의 정확도를 높였습니다.

= Reranker Strategy: 1차로 검색된 문서들에 대해 최신성(Latest)과 인기도(Popularity)를 반영하여 재순위화(Reranking)를 수행, 가장 적합한 상위 문서를 선별합니다.


📈 RAG 성능 개선 및 평가

DocCo는 Ragas 프레임워크를 사용하여 RAG 시스템의 성능을 정량적으로 평가하고 개선했습니다.

1. Ragas 프레임워크 및 메트릭 정의

Ragas는 LLM 평가를 위한 데이터셋을 생성하고, 이를 평가하기 위한 프레임워크입니다.

• 평가 영역: 주요 성능 메트릭으로는 Retrieval(정보 검색)과 Generation(답변 생성) 두 가지가 있으며, 각각 정확성, 정밀성, 관련성 등을 평가합니다.

• Faithfulness (사실 충실도): LLM의 답변이 컨텍스트(검색된 문서) 안에 실제로 존재하는 사실을 얼마나 충실하게 따르는지 평가하는 지표입니다.

• Answer Relevancy (질문-답변 관련도): LLM의 답변이 질문에 얼마나 직접적으로 대응하는지 평가하는 지표입니다.


2. Code Agent - jQuery → Vanilla JS 변환 모델 성능 비교 분석

Dense 수치를 조정하는 과정을 통해 RAG 시스템의 평균 점수가 0.7027에서 0.8178로 향상되었습니다.


⚙️ 기술 스택

분류 기술 스택
Frontend TypeScript React Vite Tailwind CSS ESLint
Backend Python FastAPI SQLAlchemy Alembic
AI LangChain LangGraph OpenAI Pinecone
Ragas BM25 MCP
Database MySQL Redis
Infra Ubuntu Docker
Integration Notion Jira Discord Mattermost GitHub

👨‍👩‍👧‍👦 팀원 소개


김용범
AI

나윤빈
FE, AI

박심인
BE, AI

박의균
BE, AI

소태호
INFRA, AI

이규민
AI

About

SSAFY 13기 자율 프로젝트 DocCo 프로젝트 Repo 입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7