겁나 신기해요...
우연찮은 기회로 n8n로 AI의 코드리뷰 자동화 시스템을 구축한 서비스를 보게 되었다
정말 충격적이었음
그냥 GitLab에서 MR(Merge Request)를 날리면, 해당 코드를 AI에게 Before/After 코드를 날려보낸다
그리고 나면 둘의 코드를 비교해서 코드리뷰를 해줌...
심지어 그걸 MR 밑에 Comment로 달아준다
이 모든게 MR을 날리는 순간 자동으로 이뤄지고, 한번에 이뤄진다
너무 신기하고 궁금해서 나 또한 직접 구현하고자 했고, 감사하게도 J님의 도움을 받아 일주일 정도의 시간 동안 다 구축할 수 있었다 (정말 감사드려요! - 이름도 직위도 밝히는 것을 원치 않으셨음..)
이게 정말 신기하고 편리하고 기능 많은 유틸성 좋은 툴임에도 정보가 거의 없어서 힘들었다
2019년에 출시한 서비스임에도 왜 이리 자료가 없는 것인지 내가 정리해보기로 했다
우선 n8n이 무엇인지 알아보는, 정말 간단한 시간을 갖도록 하자
워크플로우 자동화 도구 (근데 이제 오픈소스를 곁들인)
위 한줄로 요약 가능하다
오픈소스의 자동화 도구다
나는 AI의 코드리뷰를 예시로 들었지만, 누구는 디스코드 채팅 한번 날려서 봇이 webhook으로 전달, 구글 캘린더에 일정을 등록하고, 메일 보내고 장난 없다..
이 유튜버인데 n8n에선 이 사람 자료가 참고할게 많았다
물론 유료 강의를 판매중이라 다 알려주진 않음
플로우를 보면 굉장히 복잡 해보이지만 해본 입장에선 하나씩 구축하면 누구나 다 할 수 있다고 말해주고 싶음
현재 코드리뷰를 디스코드로 받는 곳까지 구현된 내 워크플로우인데, 되게 단순하다
1) Push를 받으면 코드만 파싱한다
2) 이전 코드에 비해 바뀐 파일들 URL만 목록을 추리고 loop를 돈다\
3) loop 내에서 코드 URL을 기반으로 HTTP Request를 보내서 코드 받고, 값만 추출
4) 하나의 데이터셋으로 만듦
5) AI가 이해할 수 있는 형태로 프롬프트와 함께 전달
6) Gemini가 이를 받아서 코드리뷰를 하고 답변을 디스코드로 전달
코딩을 잘 몰라도 AI 도움을 좀 받으면 하나의 자동화 서비스를 구축할 수 있다는게 큰 장점 같다
심지어 전부 시각화 요소인 노드로 제공해서 어디까지 진행됐고 무엇이 문제인지 디버깅도 편했음
그냥 각 노드들이 필요한 요소에 어떤 값을 넣어주면 되는지만 알면 된다
아래는 간단한 예시로 만들어본건데
도서관에 검색어를 Request로 보내서 Response를 받고, 가공한 결과물이다
이전 노드인 HTTP Request 노드에서 URL로 요청을 보내고 받은 응답을 Parsing하는 Code 노드를 거쳐 오른쪽 결과물로 나온다
백엔드 로직으로 구현하려면 정말 귀찮은 input 파라미터를 받고 파싱하고 코드로 변환하고 해야하지만 어중간한건 이 친구가 다 해준다 정말 편리한 도구가 아닐 수 없다
더군다나 Notion 등 지원하는 기본 노드들도 굉장히 많아서 그 활용도는 무궁무진할 것으로 보인다
우선은 앞서 말한 과정들이 비전공자도 할 수 있을만큼 크게 어렵진 않지만 자료가 거의 없어서 삽질을 정말 많이했기에, n8n 프로젝트를 만드는 법, AI 코드리뷰를 받는 방법과 내 삽질 등을 하나씩 정리해보도록 하겠다
'n8n' 카테고리의 다른 글
n8n을 Nginx에 등록 시 주의 사항 (feat. 필독사항) (0) | 2025.02.11 |
---|---|
n8n에서 Webhook 테스트하기 (feat. n8n Webhook 노드 사용법) (0) | 2025.02.11 |
n8n 기본 주소 변경하기 (feat. n8n 웹훅 주소 바꾸기) (0) | 2025.02.11 |
n8n에서 Discord로 알림 보내기 (feat. n8n 디스코드 노드 사용법) (0) | 2025.02.11 |
n8n 구축하기 (feat. docker-compose) (0) | 2025.02.11 |