데브허브 | DEVHUB | AI로 어려운 코드를 튜토리얼로 변환하기
- AI 프레임워크 과부하 해결: 급증하는 AI 프레임워크 학습의 어려움을 해소하기 위해, AI가 코드베이스를 튜토리얼로 자동 변환해주는 오픈소스 프로젝트가 소개되었습니다. 🤯
- 프로젝트 핵심 기능: 어떤 코드 베이스든 AI가 분석하여 구체적이고 체계적인 튜토리얼 문서(예: 8페이지 분량의 MCP 파이썬 패키지 문서)를 생성하며, 도식화된 다이어그램까지 포함합니다. 📚
- 사용 방법: GitHub 저장소를 클론하고,
requirements.txt로 패키지를 설치한 후, Gemini LM API 키와 GitHub 토큰을 설정하고, main.py를 실행하여 튜토리얼을 생성합니다. ⚙️
- 시각화 지원: 생성된 튜토리얼은
index.md 파일에 Mermaid 문법을 활용한 도식화된 다이어그램을 포함하며, VS Code 확장 프로그램을 통해 미리보기가 가능합니다. 📊
- 내부 작동 원리 (6단계):
FetchRepo (정보 가져오기) → IdentifyAbstractions (핵심 개념 인식) → AnalyzeRelationships (관계 분석) → OrderChapters (챕터 순서 정의) → WriteChapters (튜토리얼 작성) → CombineTutorials (결합 및 인덱스 생성)의 6단계 노드 기반 워크플로우로 작동합니다. 🧠
- 핵심 유틸리티:
crawl_github_files 함수는 특정 GitHub 링크의 모든 파일 내용을 가져오며, identify_abstraction 함수는 코드베이스에서 5~10개의 핵심 개념을 추출하고 YAML 형식으로 요약 전문을 생성합니다. 🛠️
- YAML 활용: LLM 출력에 JSON 외에도 YAML 형식을 사용하여 구조화된 데이터를 생성하고 파싱할 수 있음을 보여주며, 이는 이름, 설명, 파일 인덱스 등을 포함합니다. 📝
- 커스텀 프레임워크: 이 프로젝트는 LLM 워크플로우 효율화를 위한 자체 개발 프레임워크인 'Parkyflow'를 기반으로 하며, 노드 기반의 추상화된 클래스 구조를 사용합니다. 🏗️
- 웹 서비스 확장: 프로젝트의 핵심 로직을 단순화하여 Streamlit과 같은 웹 서비스로 구현할 수 있으며, GitHub 링크 입력만으로 다양한 가이드 문서를 생성하고 다운로드할 수 있습니다. 🌐