GitHub 리포지토리 학습을 통한 AI 코드 어시스턴트 - n8n 워크플로우

강력한 n8n 워크플로우를 사용하여 지능형 AI 어시스턴트를 구축하세요. OpenAI와 GitHub를 연결하여 사용자 지정 n8n 템플릿을 통해 소스 코드로 지식 베이스(RAG)를 생성합니다.

워크플로우 미리보기

자동화할 준비가 되셨나요?

이 n8n 워크플로우 템플릿을 다운로드하고 즉시 사용을 시작하세요.

추천 대상


  • 개발자 및 DevOps 팀: 방대한 코드베이스에 대해 빠르고 문맥을 이해하는 답변이 필요한 경우.

  • 테크니컬 라이터: GitHub에 저장된 문서 파일을 자동으로 질의할 방법을 찾는 경우.

  • 자동화 엔지니어: n8n AI 에이전트 노드와 RAG 패턴의 고급 활용 사례를 찾고 있는 경우.

  • n8n 템플릿 탐색 사용자: 특히 복잡한 AI 통합에 중점을 둔 사용자.

개요

방대한 양의 소스 코드나 문서를 관리하다 보면 특정 기술 세부 정보를 찾기가 어려워지는 경우가 많습니다. 이 혁신적인 n8n 워크플로우는 GitHub 리포지토리를 AI 에이전트가 검색할 수 있는 지식 베이스로 전환하여 이러한 문제를 해결합니다.

이 강력한 n8n 템플릿은 프로세스를 두 가지 주요 단계로 분리합니다. 데이터 동기화 흐름(인덱싱)과 실시간 대화 흐름(질의응답)입니다. 단일하고 일관된 n8n 워크플로우 내에서 n8n이 대용량 바이너리 데이터, 텍스트 분할, 임베딩 생성 및 벡터 저장을 얼마나 원활하게 처리하는지 보여줍니다. 이 n8n 노드 구성을 사용하면 개발자는 코드베이스에 대해 대화 방식으로 질의할 수 있어 검색 시간을 획기적으로 단축하고 생산성을 향상시킬 수 있습니다.

작동 방식

이 종합적인 n8n 워크플로우는 두 가지 뚜렷한 단계로 작동합니다:

1단계: 데이터 동기화 (인덱싱)


  1. 인덱싱 시작: 프로세스는 Sync Data n8n 트리거(수동 트리거 노드)로 시작됩니다.

  2. 구성: Config n8n 노드는 GitHub 리포지토리 내의 repoowner, reponame, subpath와 같은 중요 파라미터를 정의합니다.

  3. 파일 검색: GitHub List files n8n 노드는 이러한 파라미터를 사용하여 지정된 경로에 있는 모든 관련 파일을 식별합니다.

  4. 다운로드 및 로드: HTTP Request Get File n8n 노드는 각 파일의 실제 콘텐츠를 다운로드합니다.

  5. 전처리: Default Data Loader가 바이너리 데이터를 처리하고, Recursive Character Text Splitter가 콘텐츠를 벡터 임베딩에 적합하도록 더 작고 관리하기 쉬운 덩어리(100자 중첩)로 자릅니다.

  6. 임베딩 및 저장: Embeddings OpenAI n8n 노드는 이러한 텍스트 청크에 대한 벡터 임베딩을 계산합니다. 마지막으로 Simple Vector Store1 n8n 노드는 벡터 데이터를 source-code라는 키로 메모리 내 지식 베이스에 삽입합니다.

2단계: 대화형 AI 에이전트


  1. 대화 시작: 사용자가 질문을 하면 When chat message received n8n 트리거에 의해 워크플로우가 시작됩니다.

  2. AI 에이전트 활성화: 핵심 AI Agent n8n 노드는 쿼리를 받아 OpenAI Chat Model1을 활용하여 추론합니다.

  3. 메모리 및 컨텍스트: Window Buffer Memory n8n 노드는 대화 기록을 유지합니다.

  4. RAG 조회: 에이전트는 projectsource_tool이라는 이름의 특수 Vector Store Tool n8n 노드를 사용하여 인덱싱된 지식 베이스(Simple Vector Store)를 대상으로 유사도 검색(상위 K=5)을 수행합니다. 이 검색 단계는 컨텍스트 기반을 마련하는 데 중요합니다.

  5. 응답 생성: 에이전트는 리포지토리에서 관련 컨텍스트 조각을 받아 질문에 대해 정확하고 기술적인 답변을 생성하며 복잡한 n8n 워크플로우를 완료합니다.

설치 가이드

이 n8n 템플릿을 사용하여 강력한 n8n 워크플로우를 배포하려면 다음 단계를 따르세요:


  1. JSON 가져오기: 제공된 JSON 데이터를 복사하여 워크플로우 섹션(JSON에서 가져오기)을 통해 n8n 인스턴스로 가져옵니다.

  2. 자격 증명 설정: 필요한 자격 증명이 구성되어 있는지 확인하세요:

GitHub API: GitHub 계정을 연결하여 워크플로우가 리포지토리 내용을 나열하고 검색할 수 있도록 합니다.
OpenAI API: Embeddings OpenAIOpenAI Chat Model n8n 노드에 대한 OpenAI 자격 증명을 설정합니다. 이는 인덱싱과 쿼리 모두에 필수적입니다.

  1. 파라미터 구성: Config n8n 노드를 열고 리포지토리에 맞게 파라미터를 업데이트하세요:

repoowner: GitHub 리포지토리 소유자입니다.
repo
name: 리포지토리 이름입니다.
* sub_path: 인덱싱하려는 리포지토리 내의 특정 디렉터리 경로입니다 (예: workflows 또는 docs).

  1. 초기 동기화: 챗 에이전트를 사용하기 전에 Sync Data n8n 트리거를 한 번 실행하여 벡터 스토어에 GitHub 콘텐츠를 채우세요.

노드 상세 정보

Sync Data (수동 트리거): 인덱싱 측면의 시작 n8n 트리거로, 지식 베이스를 수동으로 새로 고치는 데 사용됩니다.
Config (Set): 인덱싱 흐름 전반에 사용되는 환경 변수(repoowner, reponame, subpath)를 동적으로 설정하는 데 사용되는 기본 n8n 노드입니다.
List files (GitHub): 이 n8n 노드는 구성된 GitHub 리포지토리 경로에서 파일 목록을 검색하여 다운로드에 필요한 파일 세부 정보를 제공합니다.
Get File (HTTP Request): GitHub n8n 노드에서 제공하는 download
url을 사용하여 파일의 실제 콘텐츠를 다운로드하여 임베딩을 위한 데이터를 준비합니다.
Recursive Character Text Splitter: 대용량 파일을 더 작은 청크로 효율적으로 분할하여 임베딩 및 벡터 검색에 최적화하는 핵심 RAG 전처리 n8n 노드입니다. 100자의 청크 오버랩으로 구성됩니다.
Embeddings OpenAI / Embeddings OpenAI1: OpenAI 서비스를 사용하여 텍스트 청크 및 수신 쿼리를 고차원 숫자 벡터로 변환하는 역할을 하는 이 n8n 노드의 두 가지 인스턴스입니다.
Simple Vector Store / Simple Vector Store1 (Vector Store In Memory): 이 n8n 노드들은 source-code 키를 사용하여 RAG 지식 베이스를 유지 관리합니다. 하나는 insert 모드(인덱싱용)로 설정되고 다른 하나는 default 모드(검색용)로 설정됩니다.
When chat message received (Chat Trigger): AI 에이전트 측의 시작 n8n 트리거로, n8n 채팅 인터페이스에서 사용자 상호 작용을 수신 대기합니다.
AI Agent (LangChain Agent): n8n 워크플로우의 주요 두뇌입니다. 소스 코드를 기반으로 한 기술 질문에 projectsourcetool을 사용하도록 안내하는 시스템 메시지와 함께 구성됩니다.
Vector Store Tool: AI 에이전트가 지식 베이스와 상호 작용하는 방식을 정의하는 n8n 노드로, 관련성 높은 문서 청크 상위 5개(topK=5)를 검색하도록 구체적으로 구성되어 있습니다.

관련 n8n 워크플로우

무료

노드: 14 노드
업데이트됨: 12월 26 2025
모두 보기
작성자

I am Nguyen Trung Nghia, a Software Engineer passionate about AI Automation. I build intelligent automation systems that help businesses reduce costs, increase productivity, and scale faster with the power of AI technology.

추천*