인공지능 분야는 정보를 처리하는 것뿐만 아니라 행동할 수 있는 에이전트로 점점 나아가고 있습니다. 수나 AI는 자연어 지침을 이해하고 복잡한 실제 작업을 직접 수행할 수 있는 디지털 동반자로 기능하도록 설계된 매력적인 오픈 소스 일반 AI 에이전트로 이 영역에서 떠오르고 있습니다. Kortix AI에 의해 개발되었고 허가된 Apache 2.0 라이센스 하에 출시된 수나는 강력한 도구 모음을 대화형 인터페이스와 결합하여 사용자의 의도와 실질적인 디지털 행동 사이의 간극을 메우는 것을 목표로 하고 있습니다.
특화된 AI 도구와 달리 수나의 강점은 다재다능성에 있습니다. 웹 탐색, 파일 관리, 코드 실행, API와의 상호 작용에 이르는 다양한 기능을 조율하도록 구축되어 있으며, 모두 귀하의 대화 프롬프트에 의해 이끌립니다. 이 기사는 수나의 핵심 기능과 아키텍처에 대한 개요를 제공하고, 이후 로컬 인스턴스를 설정하고 실행하는 방법에 대한 자세한 단계별 자습서를 제공합니다. 이를 통해 귀하는 자신의 환경 내에서 이 강력한 AI 에이전트를 활용할 수 있습니다.
개발 팀이 함께 작업할 수 있는 통합된 올인원 플랫폼으로 최대 생산성을 원하시나요?
Apidog은 모든 요구 사항을 충족시키고, Postman을 훨씬 더 저렴한 가격에 대체합니다!

수나 AI란 무엇이며 수나 AI는 어떻게 작동하나요?

수나가 무엇을 할 수 있는지 이해하려면 수나가 사용하는 도구를 파악하는 것이 중요합니다. 이러한 기능은 수나가 일반 사용자처럼 디지털 세계와 상호 작용할 수 있도록 하며, 자동화되고 AI에 의해 구동됩니다.
- 브라우저 자동화(Playwright를 통해): 수나는 보안 환경 내에서 웹 브라우저 인스턴스를 시작하고 제어할 수 있습니다. 이는 특정 URL로 탐색하고, 웹사이트에 로그인하고(안전하게 제공된 경우), 버튼을 클릭하고, 양식을 작성하고, 페이지를 스크롤하고, 중요한 데이터는 웹 페이지 내용에서 직접 추출할 수 있음을 의미합니다. 이 기능은 웹에서 자동화를 위해 사용할 수 있는 방대한 양의 정보와 기능을 해제합니다.
- 파일 관리: 에이전트는 웹 데이터에 국한되지 않습니다. 안전한 환경 내에서 파일 시스템과 상호 작용할 수 있는 능력을 갖추고 있습니다. 여기에는 새로운 파일(보고서 또는 데이터 내보내기와 같은) 생성, 기존 문서 읽기, 내용 편집 및 파일을 디렉토리로 정리하는 것이 포함됩니다. 이는 출력 생성 또는 로컬 데이터 처리를 포함하는 작업에 필수적입니다.
- 웹 크롤링 및 향상된 검색: 단일 페이지 탐색을 넘어 수나는 웹사이트를 체계적으로 크롤링(링크를 따라)하여 포괄적인 정보를 수집할 수 있습니다. 또한 전용 검색 API(선택적 Tavily 통합과 같은)와 통합하여 표준 검색 엔진 사용보다 보다 정교하고 목표 지향적인 정보 검색을 수행할 수 있어 심층적인 연구 능력을 제공합니다.
- 명령줄 실행: 보안 Docker 컨테이너 내에서 수나는 쉘 명령을 실행할 수 있는 능력을 갖추고 있습니다. 이 강력한 기능을 통해 스크립트를 실행하고, 다른 명령줄 유틸리티를 활용하며, 시스템 자원과 상호 작용하고(컨테이너의 한계 내에서) 소프트웨어 빌드 또는 배포와 같은 작업을 자동화할 수 있습니다. 보안은 여기에서 중요한 요소로, 고립된 환경에 의해 처리됩니다.
- API 통합(RapidAPI 및 직접 호출을 통해): 수나는 외부 애플리케이션 프로그래밍 인터페이스(API)에 호출을 할 수 있습니다. 이를 통해 광범위한 제3자 서비스 생태계와 연결할 수 있습니다. 문서에서는 선택적 RapidAPI 통합을 강조하여 다양한 데이터 제공자(예: LinkedIn 데이터, 금융 정보 등)에 접근할 수 있도록 하며, 다른 RESTful API와 직접 상호작용하도록 구성할 수도 있어 데이터 수집 및 작업 수행의 잠재력을 크게 확장합니다.
- 코드 해석: 수나는 안전한 환경 내에서 코드 조각(주로 Python)을 실행할 수 있는 능력을 포함하고 있습니다. 이는 기존 스크립트를 실행하는 것만이 아니라 에이전트가 복잡한 계산, 데이터 분석, 사용자 정의 논리 처리 또는 다른 도구의 기능을 초과하는 변환을 수행하기 위해 코드를 동적으로 생성하고 실행할 수 있게 합니다.
수나의 진정한 힘은 사용자의 요청에 따라 이러한 도구를 적절하게 선택하고 순서를 매길 수 있는 AI의 능력에 있습니다. 단일 지침은 웹을 검색하고, 데이터를 추출하고, 해석된 코드로 처리하고, 결과를 파일로 형식화하고 저장하는 워크플로를 유발할 수 있으며, 모두 에이전트에 의해 관리됩니다.
수나의 아키텍처: 관련 구성 요소

설정 프로세스를 이해하려면 수나의 주요 아키텍처 구성 요소에 대한 기본적인 이해가 필요합니다:
- 백엔드 API (Python/FastAPI): 핵심 논리는 여기에서 존재합니다. 사용자 요청을 관리하고, 대화 상태를 유지하며, 에이전트의 도구 사용을 조율하고, 선택한 대형 언어 모델(LLM)과의 커뮤니케이션을 핸들링합니다. LiteLLM을 통해 OpenAI 및 Anthropic과 같은 공급자와 유연성을 제공합니다.
- 프론트엔드 (Next.js/React): 사용자 인터페이스를 제공하는 웹 애플리케이션입니다. 수나와 상호 작용하기 위한 채팅 인터페이스를 제공하고, 결과를 표시하며, 에이전트 활동 모니터링을 위한 대시보드 요소를 포함합니다.
- 에이전트 Docker 환경(Daytona를 통해): 보안과 격리가 중요합니다. 각 에이전트 작업은 Daytona에 의해 관리되는 전용 Docker 컨테이너 내에서 실행됩니다. 이 샌드박스는 모든 필요한 도구(브라우저, 코드 해석기, 파일 시스템 접근)를 포함하고 에이전트가 호스트 시스템과 간섭하는 것을 방지합니다.
- Supabase 데이터베이스 (PostgreSQL): 사용자 계정 및 인증, 대화 역사, 에이전트가 생성한 파일 저장소, 에이전트 상태 추적 및 잠재적인 분석을 포함한 모든 데이터 지속성 요구 사항을 처리합니다.
이 구성 요소들은 함께 작동하며, API를 통해 통신하여 수나 경험을 제공합니다. 자체 호스팅 설정은 이러한 상호 연결된 부분을 구성하고 실행하는 과정을 포함합니다.
수나 AI 설정 방법

수나를 직접 실행하면 최대한의 제어와 개인 정보를 제공받을 수 있습니다. 다음 단계는 설정 프로세스를 안내합니다:
1단계: 필수 조건 수집
수나를 설치하기 전에 여러 외부 서비스와 자격 증명이 필요합니다:
Supabase 프로젝트:
- supabase.com에 가입하거나 로그인하고 새 프로젝트를 생성하세요.
- 프로젝트의 설정 > API로 이동합니다. 프로젝트 URL,
anon
공개 키,service_role
비밀 키를 주의 깊게 복사합니다. - Supabase CLI를 설치합니다: supabase.com/docs/guides/cli의 지침을 따르세요.
Redis 데이터베이스:
- 옵션 1 (클라우드 - 권장): Upstash와 같은 서비스를 사용합니다(무료 계층 제공). 데이터베이스를 생성하고호스트/엔드포인트, 포트, 비밀번호를 기록하며, SSL/TLS가 필요한지(대부분 예)를 주의합니다.
- 옵션 2 (로컬): Redis를 로컬로 설치합니다(예: macOS의 경우
brew install redis
, Debian/Ubuntu의 경우sudo apt install redis-server
, 또는 Windows에서 Docker/WSL을 통해 설치합니다). 호스트(localhost
), 포트(대부분6379
), 비밀번호(대부분 없음), SSL 설정(False
)을 주의합니다.
Daytona 계정 및 이미지 구성:
- daytona.io에서 가입합니다.
- 설정 > API 키로 이동하여 새API 키를 생성합니다. 복사합니다.
- 이미지 섹션으로 이동합니다. 이미지 추가를 클릭합니다.
- 이미지 이름:
adamcohenhillel/kortix-suna:0.0.20
- 진입점:
/usr/bin/supervisord -n -c /etc/supervisor/conf.d/supervisord.conf
- 이 이미지 구성을 저장합니다.
LLM API 키:
- OpenAI (platform.openai.com) 또는 Anthropic (console.anthropic.com) 중에서 선택합니다. 선택한 제공업체에서API 키를 획득합니다.
- 사용할 특정 모델 식별자(예:
gpt-4o
,anthropic/claude-3-5-sonnet-latest
)를 메모합니다.
(선택 사항) Tavily API 키: 더 나은 검색 결과를 위해 Tavily AI에서 키를 얻습니다.
(선택 사항) RapidAPI 키: 필요한 경우 미리 구축된 통합을 사용하려는 경우(특정 웹 스크래퍼와 같은).
- rapidapi.com에서 키를 얻습니다.
- 수나 도구가 사용할 수 있는 특정 API(예: LinkedIn 스크래퍼)에 대해 RapidAPI 마켓플레이스에서 구독하는 것을 기억하세요.
backend/agent/tools/data_providers/
디렉토리에서 관련 도구 코드와 필요한 API 기본 URL을 확인하세요.
2단계: 설치 및 구성
이제 수나 애플리케이션 구성 요소를 구성합니다:
저장소 클론:
git clone https://github.com/kortix-ai/suna.git
cd suna
백엔드 구성 (.env
):
cd backend
cp .env.example .env
(예제가 없는 경우.env
를 생성하십시오).- 1단계의 자격 증명으로
.env
를 편집하십시오:
NEXT_PUBLIC_URL="http://localhost:3000" # 또는 다른 경우 프론트엔드 URL
# Supabase
SUPABASE_URL=YOUR_SUPABASE_URL
SUPABASE_ANON_KEY=YOUR_SUPABASE_ANON_KEY
SUPABASE_SERVICE_ROLE_KEY=YOUR_SUPABASE_SERVICE_ROLE_KEY
# Redis
REDIS_HOST=YOUR_REDIS_HOST
REDIS_PORT=YOUR_REDIS_PORT
REDIS_PASSWORD=YOUR_REDIS_PASSWORD # 없으면 비워두세요
REDIS_SSL=True # 또는 로컬 비-SSL Redis마다 False
# Daytona
DAYTONA_API_KEY=YOUR_DAYTONA_API_KEY
DAYTONA_SERVER_URL="https://app.daytona.io/api"
DAYTONA_TARGET="us" # 또는 귀하의 지역
# --- LLM 구성 (하나의 세트만 기입) ---
# Anthropic 예제:
ANTHROPIC_API_KEY=YOUR_ANTHROPIC_API_KEY
MODEL_TO_USE="anthropic/claude-3-5-sonnet-latest" # 또는 다른 Claude 모델
OPENAI_API_KEY=
# OpenAI 예제:
# ANTHROPIC_API_KEY=
# OPENAI_API_KEY=YOUR_OPENAI_API_KEY
# MODEL_TO_USE="gpt-4o" # 또는 다른 OpenAI 모델
# -----------------------------------------
# 선택 사항
TAVILY_API_KEY=YOUR_TAVILY_API_KEY # 선택 사항
RAPID_API_KEY=YOUR_RAPID_API_KEY # 선택 사항
- 중요: 하나의 LLM 제공업체(Anthropic 또는 OpenAI)에 대한 키만 제공하십시오.
Supabase 데이터베이스 스키마 설정:
backend
디렉토리에 있는지 확인합니다.- 로그인:
supabase login
- 프로젝트 연결:
supabase link --project-ref YOUR_PROJECT_REF_ID
(Supabase 대시보드에서 ID를 가져옵니다). - 마이그레이션 적용:
supabase db push
- 스키마 확인: Supabase 프로젝트 대시보드로 이동 -> 프로젝트 설정 -> API -> 스키마 섹션에서 "구성" 아래의
basejump
이 Exposed schemas에 나열되어 있는지 확인합니다. 없으면 추가하고 저장하십시오.
프론트엔드 구성 (.env.local
):
cd ../frontend
cp .env.example .env.local
(또는.env.local
을 생성합니다)..env.local
을 편집하십시오:
NEXT_PUBLIC_SUPABASE_URL=YOUR_SUPABASE_URL # 백엔드 .env와 동일합니다
NEXT_PUBLIC_SUPABASE_ANON_KEY=YOUR_SUPABASE_ANON_KEY # 백엔드 .env와 동일합니다
NEXT_PUBLIC_BACKEND_URL="http://localhost:8000/api" # 기본 백엔드 위치
NEXT_PUBLIC_URL="http://localhost:3000" # 기본 프론트엔드 위치
종속성 설치:
- 프론트엔드 (Node.js/npm):
# 프론트엔드 디렉토리에서
npm install
- 백엔드 (Python 3.11):
# 백엔드 디렉토리에서(가상 환경을 사용하세요!)
# python -m venv venv
# source venv/bin/activate 또는 .\venv\Scripts\activate (Windows)
pip install -r requirements.txt
3단계: 수나 실행하기
백엔드 서비스 시작:
- 터미널을 엽니다.
path/to/suna/backend
로 이동합니다.- 가상 환경을 사용하는 경우 활성화합니다(
source venv/bin/activate
). - 실행:
python api.py
- 서버가 실행 중인지 확인합니다(아마도 포트 8000에서 실행 중일 것입니다).
프론트엔드 서비스 시작:
- 두 번째 터미널을 엽니다.
path/to/suna/frontend
로 이동합니다.- 실행:
npm run dev
- 서버가 실행 중인지 확인합니다(아마도 포트 3000에서 실행 중일 것입니다).
수나 인스턴스에 접근하기:
- 웹 브라우저를 열고
http://localhost:3000
으로 이동합니다. - 가입 옵션을 사용하여 사용자 계정을 생성합니다(Supabase Auth 기반).
- 로그인하고 자신이 호스팅하는 수나 에이전트에 지시를 시작합니다.
결론
수나 AI는 디지털 영역에서 작업을 수행할 수 있는 자율 AI 에이전트를 향한 실질적인 걸음을 나타냅니다. 강력한 툴킷과 모듈식 아키텍처와 결합된 오픈 소스 특성은 사용자와 개발자가 사용자 맞춤형, 자체 호스팅 가능한 AI 어시스턴트를 찾는 매력적인 옵션으로 만듭니다. 위에 설명된 상세한 설정 과정을 따르면 수나의 자신의 인스턴스를 배포할 수 있으며, 이를 통해 브라우징, 파일 조작, 데이터 수집, 코드 실행 등 귀하가 제어하는 환경 내에서 모든 작업을 자동화하는 대화형 인터페이스를 부여받을 수 있습니다. 설정하는 데는 여러 구성 요소에 대한 세심한 주의가 필요하지만, 결과적으로 귀하를 대신해 행동할 준비가 된 다재다능한 AI 에이전트를 얻게 됩니다.
개발 팀이 함께 작업할 수 있는 통합된 올인원 플랫폼으로 최대 생산성을 원하시나요?
Apidog은 모든 요구 사항을 충족시키고, Postman을 훨씬 더 저렴한 가격에 대체합니다!
