Show HN: GitHub 코드베이스를 쉬운 튜토리얼로 변환하는 AI
(github.com/The-Pocket)- AI를 활용하여 GitHub 코드베이스를 초보자 친화적인 튜토리얼로 변환하는 프로젝트인 Pocket Flow
- GitHub 저장소를 크롤링하여 코드의 핵심 추상화를 분석하고 시각화를 통해 복잡한 코드를 쉽게 이해할 수 있는 튜토리얼로 변환함
- AI가 자동으로 생성한 다양한 GitHub 저장소의 예시 결과 제공
- 프로젝트 시작을 위한 기본 설정 및 실행 방법 설명
- 개발 튜토리얼과 관련된 추가 자료 제공
AI를 활용한 코드베이스 튜토리얼 생성
- Pocket Flow는 100줄의 LLM 프레임워크로, GitHub 저장소를 분석하여 초보자 친화적인 튜토리얼을 생성하는 프로젝트임
- 이 프로젝트는 코드베이스의 핵심 추상화를 식별하고 상호작용을 분석하여 복잡한 코드를 초보자도 이해할 수 있는 튜토리얼로 변환함
- YouTube 개발 튜토리얼과 Substack 포스트 튜토리얼을 통해 더 많은 정보를 확인할 수 있음
인기 GitHub 저장소의 AI 생성 튜토리얼 예시
- AutoGen Core: AI 팀을 구성하여 문제를 해결하는 방법을 설명함
- Browser Use: AI가 웹을 탐색하고 디지털 어시스턴트처럼 작동하는 방법을 설명함
- Celery: 백그라운드 작업을 통해 앱을 강화하는 방법을 설명함
- Click: Python 함수를 명령줄 도구로 변환하는 방법을 설명함
- Codex: 평범한 영어를 작동하는 코드로 변환하는 방법을 설명함
- Crawl4AI: 웹사이트에서 중요한 정보를 추출하는 방법을 설명함
- CrewAI: AI 전문가 팀을 구성하여 복잡한 문제를 해결하는 방법을 설명함
- DSPy: LLM 앱을 최적화하는 방법을 설명함
- FastAPI: 빠른 속도로 API를 생성하는 방법을 설명함
- Flask: 최소한의 코드로 웹 앱을 제작하는 방법을 설명함
- Google A2A: AI 에이전트가 협력하는 방법을 설명함
- LangGraph: AI 에이전트를 플로우차트로 설계하는 방법을 설명함
- LevelDB: 데이터를 빠르게 저장하는 방법을 설명함
- MCP Python SDK: 강력한 앱을 구축하는 방법을 설명함
- NumPy Core: 데이터 과학 엔진을 마스터하는 방법을 설명함
- OpenManus: AI 에이전트를 구축하는 방법을 설명함
- Pydantic Core: 데이터를 검증하는 방법을 설명함
- Requests: Python으로 인터넷과 통신하는 방법을 설명함
- SmolaAgents: 작은 AI 에이전트를 구축하는 방법을 설명함
시작하기
- 저장소를 클론하고 필요한 의존성을 설치함
utils/call_llm.py에서 LLM 설정을 완료함- 메인 스크립트를 실행하여 GitHub 저장소를 분석하고 튜토리얼을 생성함
- 다양한 옵션을 사용하여 분석할 파일 및 언어를 지정할 수 있음
개발 튜토리얼
- Agentic Coding을 사용하여 인간이 설계하고 에이전트가 코딩하는 개발 패러다임을 설명함
- Pocket Flow 프레임워크를 사용하여 에이전트가 코드를 작성하도록 함
- YouTube 개발 튜토리얼을 통해 단계별로 설명함
댓글과 토론
Hacker News 의견
- 저장소의 문서나 코드만 사용하는지에 대한 질문이 있음
- AI 스튜디오 API 키를 사용해 시도해봤고 인상적이었음
- API를 설명하는 데 레스토랑 비유를 사용하는 것은 불필요하게 길게 느껴짐
- GraphQL에 대한 설명도 과도하게 길게 이어짐
- 생성된 문서는 소프트웨어 엔지니어보다는 약간 기술적인 PM에게 더 적합해 보임
- 프롬프트를 개선하여 이를 완화할 수 있을 것 같음
- 프롬프트가 다이어그램의 다양성을 장려하면 좋을 것 같음
- 예를 들어, AWS Step Functions를 사용한 내구성 있는 상태 머신 워크플로우에는 순서도보다 흐름도가 더 적합할 수 있음
- 새로운 라이브러리를 사용할 때 첫 번째 단계로 저장소를 복제하고 Claude 코드를 실행하여 좋은 문서를 작성하도록 요청함
- 많은 단계를 절약할 수 있을 것 같음
- Cursor에게 많은 질문을 하여 비슷한 결과를 얻음
- 다른 사람도 언급했듯이 약간 다른 톤을 원함
- 선호하는 글쓰기 스타일에 맞출 수 있는 "스타일 템플릿" 기능이 좋을 것 같음
- 시간이 많이 걸리지 않는다면 PR을 제출할 수도 있음
- mutable ai라는 회사가 작년에 Google에 인수되었는데, 튜토리얼 대신 위키를 출력하는 작업을 했음
- dspy 튜토리얼이 훌륭함
- dspy는 개념적으로 이해하기 어렵지만 튜토리얼이 잘 설명해줌
- 브라우저 사용을 위해 구축함
- 라이브러리의 결과가 매우 인상적임
- 출력은 전혀 손대지 않았음
- 현재 코드베이스와 문서를 유지하는 데 문제가 있음 (코드 예제가 가끔 깨짐)
- Pocket의 일부를 사용하여 이를 해결할 수 있을지 궁금함
- 정말 멋진 작업이고 공유해줘서 고맙다는 의견
- LLM의 가치를 잘 보여주는 예시임
- 주니어 엔지니어에게 미치는 부정적인 시각을 극복하는 데 도움을 줌
- 대부분의 프로젝트가 최신 문서가 부족한 문제를 해결하는 데 도움을 줌
- 새로운 오픈 소스 기여자의 온보딩에 게임 체인저가 될 수 있음
- postgres나 redis 코드베이스를 넣고 잘 이해하여 기여를 시작할 수 있음
- 상위에는 깔끔한 고수준 내용이 있지만, 그 아래로는 인간 언어로 작성된 코드로 빠르게 전환됨
- 관련 단위 테스트를 살펴보면 더 유용한 사용 패턴을 추출할 수 있을 것 같음
- 대부분의 튜토리얼 독자에게 중요한 것은 "사용 방법"임