
집에서 운영하고 있는 RaspberryPi 4B (8GB)에 Docker 기반 n8n을 2달 전에 세팅해둔 적이 있다.
이것을 이용해서 AI 자동화 워크플로우를 만들 수 있지 않을까 싶어서, 노마드 코더에서 만든 영상을 참고하며 워크플로우를 자동화 해보았다.
https://www.youtube.com/watch?v=XJ_RTQ43AjY
일단, LLM 모델을 OpenAI의 ChatGPT API를 활용하면 요금이 발생하니깐
사전에 설정해둔 Oracle Cloud의 무료 ARM 서버 (4 core CPU, 12GB RAM) 기반의 Ollama (gemma3:1b) + Open WebUI를 활용하고자 했다.
하지만, 작업하면서 일부 문제가 발생하였다.
1. Google Gemini를 사용하고자 했으나, 429 Too Many Request 오류가 발생했다.
- 무료 계정에서 API만 발급받고 호출하면 이런 오류가 발생한다고 한다.
해당 오류는 무료 AI 모델을 사용해도 해결되지 않고, 유료 계정으로 전환해야만 해결된다고 한다.
(단, 유료 계정으로 전환하더라도 무료 AI 모델을 사용하면 과금되지는 않는다 (하루에 약 50회 가량)...고 하지만, 찝찝해서 안했다)
(좀 더 찾아보니, 무료 계정은 1분 당 15회까지만 호출이 가능하며, 하루에 총 1,500건 까지 가능하다고 한다. 그럼 대략 4초에 1회 정도까지 허용하는 셈이다)
1-1. 그래서, Delay를 주면 해결되지 않을까 싶어서 방법을 찾아봤다.
https://cord-ai.tistory.com/219
🔄 n8n의 Loop Over Items 노드, 도대체 어떻게 돌아가는 걸까?
최근 n8n을 쓰면서 가장 헷갈렸던 노드 중 하나가 바로 Loop Over Items (또는 Split In Batches) 노드였습니다. 공식 문서나 인터넷에서도 딱 이해되는 설명이 부족해서, 유튜브에서 어떤 개발자가 설명한
cord-ai.tistory.com

바로 Loop Over Items와 Wait을 이용하는 것이다.
하지만, 해결되지 않았다... 그렇지만, 딜레이가 필요한 경우 해당 방법을 사용하면 될 것 같다.
(이것을 사용하지 않으면 Split Out을 통해 다중 아이템에 대해 동시에 처리하게 되어 Too Many Request가 발생할 가능성이 있다. 때문에, 해당 노드를 통해 한 번에 한 아이템씩 처리할 수 있게 할 뿐더러, 각각의 개체에 대해 딜레이를 줄 수 있다.)
2. Open WebUI에서 API 키를 발급 받는데 문제가 발생했다.
- 이건 생각보다 간단하게 해결했다. 우선, Ollama에서 주는 11434 포트를 바로 개방해서 쓰기에는 보안적으로 문제가 발생할 것이 뻔했다. 때문에, Open WebUI를 프록시 서버로 두고, 여기서 API 키를 따로 발급해서 해당 API 키를 사용하는 요청만 Ollama의 모델을 활용할 수 있게 할 수 있다. 하지만, 이 설정이 기본적으로는 활성화가 되어 있지 않다. 다음과 같이 해결하면 된다.
1) 프로필-관리자 패널-설정-일반-인증-Enable API Keys를 활성화 한다.
2) 프로필-관리자 패널-사용자-그룹-기본 권한-기능 권한-API Keys를 활성화 한다.
3) 프로필-설정-계정-API 키 (보기)-API 키를 활성화 하여 API 키를 확인 및 복사한다.
이것을 n8n의 Ollama Credential에 지정하면 된다.
BASE URL이 필요한 경우에는, Open WebUI로 지정된 도메인과 함께, 맨 끝에 /api/v1 을 붙여주면 된다.
3. gemma3:1b에서는 Tool Calling을 지원하지 않는다.
- 노마드 코더의 영상을 보면 출력부를 제한하기 위해 Tool Calling을 사용한다.
이 때, gemma3:1b같은 경우에는 Tool Calling을 지원하지 않기 때문에, 해당 부분을 지원하는 Qwen이나, llama3.1:8b와 같은 비교적 대형 모델을 사용해야 해당 부분을 지원한다. (그렇지 않으면, 400: Bad Request 오류가 발생한다)
3-1. 때문에, 모델을 바꿔 llama3.1:8b을 사용했으나, 504 Gateway 오류가 발생했다.
- 이건, LLM 모델에서 Tool Calling을 지원하지만 Oracle Cloud에서 GPU를 사용하지 않기 때문에, Time-out이 발생해서 생긴 오류이다.
https://goodteacher.tistory.com/831
01. Tool Calling
Tool Calling(Tool: 함수)은 특정 시점을 기준으로 학습되서 닫힌 LLM이 외부 세계와 상호작용하거나 특정 작업을 수행할 수 있도록 하는 확장 기능으로 현재의 날씨를 가져오거나 계산을 수행하거나
goodteacher.tistory.com
이러한 이유로, 그냥 1번의 Gemini를 유료 계정으로 전환한 뒤, 무료 모델을 사용하는 것을 다시 검토해야 할 듯 하다...
(혹은 OpenAI의 유료 결제를 검토한다던가...)
'Programming > AI' 카테고리의 다른 글
| n8n AI 자동화: AI 영상 제작 자동화 3일차 (0) | 2026.03.18 |
|---|---|
| n8n AI 자동화: AI 영상 제작 자동화 2일차 (0) | 2026.03.17 |
| [챗봇프로젝트] 2일차. 데이터베이스 구성 및 완성 (1) | 2025.12.07 |
| [챗봇프로젝트] 1일차. MVP 만들기 (0) | 2025.12.06 |
| [챗봇프로젝트] 1일차. 기획 및 프로젝트 환경 구성 (0) | 2025.12.06 |