Capsize-Games/airunner

Offline inference engine for art, real-time voice conversations, LLM powered chatbots and automated workflows

AI Runner

제품 개요

AI Runner는 셀프 호스팅 데스크톱 애플리케이션으로, 두 가지 주요 경험을 결합합니다.

  • AI 컴패니언 – 이름을 지정하고, 음성을 할당하고, 시간이 지남에 따라 사용자를 기억하는 챗봇입니다. 말하고, 듣고(음성 인식), 말할 수 있으며(음성 합성), 현재 시간, 날짜, 날씨를 인식합니다.
  • 아트 캔버스 – 레이어 기반 드로잉 표면으로, 스케치, 페인팅, 로컬 확산 모델로 스케치를 이미지로 변환, 편집(인페인팅, 배경 제거, 스타일 필터), 레이어 합성을 할 수 있습니다.

모든 처리(LLM 채팅, 이미지 생성, TTS/STT)는 사용자의 하드웨어에서 실행되며, API 키, 클라우드 구독이 필요하지 않으며, 선택적 클라우드 기능을 켜지 않는 한 데이터가 외부로 전송되지 않습니다.


주요 기능(README에 설명된 대로)

기능 설명
🤖 AI 컴패니언 이름과 음성을 가진 영구 메모리와 자연스럽게 변하는 기분을 가진 페르소나.
🎨 레이어 캔버스 여러 레이어에서 '스케치 → 생성 → 필터 → 합성'을 실행합니다.
🖼️ 이미지 생성 Z-Image Turbo, Stable Diffusion 1.5, 이미지 간 변환, 인페인팅, 배경 제거, 후처리 필터를 지원합니다.
🗣️ 음성 대화 선택 가능한 음성으로 전이중 TTS(텍스트 음성 변환) 및 STT(음성 인식).
🧠 메모리 및 RAG 장기 대화 메모리와 과거 대화를 회상하기 위한 검색 증강 생성(RAG).
🌤️ 환경 인식 로컬 시간, 날짜, 날씨를 인식하고 응답에 반영할 수 있습니다.
🔒 프라이버시 우선 모든 데이터는 로컬에 저장되며, 선택적 클라우드 기능은 옵트인만 가능합니다.
🛡️ 안전 필터 내장 NSFW 필터 및 불법 콘텐츠 분류기.
📦 모델 관리 HuggingFace 또는 CivitAI에서 원클릭 다운로드. 여러 로컬 LLM 및 이미지 모델을 지원합니다.
🌍 다국어 지원 영어(풀 스택), 일본어(TTS/LLM), 기타 언어에 대한 제한적 STT.

사용 방법

모드 일반적인 사용 사례
데스크톱 GUI(Itch.io 다운로드, Docker 또는 pip install airunner로 설치) 같은 화면에서 그림을 그리고 아트를 생성하면서 음성 지원 컴패니언과 대화형 채팅.
헤드리스 서버(airunner-headless) LLM, 이미지, TTS, STT 엔드포인트를 노출하는 REST API 실행. 원격 서버, VS Code 확장, 자동화 파이프라인에 유용.
Docker 컨테이너 샌드박스 환경에서 빠른 배포. 전체 GUI(docker compose run …) 또는 헤드리스 API(--headless)를 실행할 수 있습니다.
Python 라이브러리 자체 스크립트에서 airunner 패키지를 가져와 동일한 추론 백엔드를 호출할 수 있습니다.

설치 옵션(요약)

방법 내용 비고
데스크톱 다운로드 사전 빌드된 바이너리(Python 불필요).
Docker 선택적 프로필(core,llm-native,stt-native 등)이 포함된 컨테이너 이미지.
PyPI(pip install airunner) GUI와 airunner-services 런타임을 포함하는 Python 패키지.
APT(Ubuntu 22.04+) 데몬 서비스만 설치. Qt GUI는 포함되지 않습니다.
소스에서 저장소를 클론하고 ./scripts/install.sh(개발 모드) 또는 ./deployment/install_distributed.sh(데몬/GUI 분할 설치)를 실행.

모든 경로는 궁극적으로 동일한 사이드카 바이너리(LLM용 llama.cpp, STT용 whisper.cpp)를 설치하며, 자동으로 빌드 또는 다운로드됩니다.


아키텍처 개요

flowchart LR
  User --> Native[Native launcher & side‑cars]
  Native --> GUI[Desktop client (src)]
  Native --> Daemon[Headless daemon (services)]
  GUI --> Daemon
  Native --> Sidecars[llama.cpp & whisper.cpp]
  Daemon --> Sidecars
  GUI --> Scripts[dev tools]
  Daemon --> Scripts
  GUI --> Data[(AIRUNNER_BASE_PATH)]
  Daemon --> Data
  • src – Qt 기반 GUI, 위젯, 진입점.
  • services – FastAPI 서버, 모델 다운로드 관리자, 지속성, 안전 필터.
  • native – 컴파일된 사이드카를 번들하고 적절한 진입점을 실행하는 작은 헬퍼.
  • scripts – UI 빌드, 테스트 실행, 인증서 생성 등을 위한 헬퍼 명령.

모델 지원(기본 모델)

유형 기본 모델(크기)
LLM Qwen3.5‑9B GGUF(Q8_0, 약 12GB VRAM)
이미지 Stable Diffusion 1.5(약 2GB) 및 Z-Image Turbo(약 12GB)
TTS OpenVoice(약 654MB)
STT Systran/faster-distil-whisper-large-v3

호환되는 파일을 ~/.local/share/airunner/...에 배치하거나 CLI/GUI 다운로드 관리자에 경로를 전달하여 이러한 모델을 교체할 수 있습니다.


유지 관리자

이 프로젝트는 GPL-3.0 라이선스로 배포되며, 주로 Capsize LLC(https://capsize.online)의 단일 엔지니어가 개발합니다. 커뮤니티 지원은 Discord(배지의 링크) 및 GitHub 이슈 트래커를 통해 이루어집니다.


빠른 시작(대부분의 사용자를 위한 한 줄 명령)

# Linux/macOS – Python 패키지 설치 및 GUI 실행
pip install "airunner" "airunner-services[headless]"
airunner   # 데스크톱 앱 열기

헤드리스 API 서버의 경우:

airunner-headless   # http://127.0.0.1:8080에서 수신

결론

AI Runner는 진정한 셀프 호스팅 AI 어시스턴트 + 생성형 아트 플랫폼입니다. 로컬 LLM 추론(llama.cpp 경유), 확산 이미지 생성, 음성 파이프라인을 번들로 제공하며, 모든 것을 프라이버시 우선 데스크톱 UI로 감싸고 REST 서비스로도 노출할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트