Tablize 런타임은 오픈소스입니다. tablize.com을 구동하는 바로 그 바이너리가 본인의 서버, 본인의 VPC에서 실행되며, 데이터는 경계 밖으로 절대 나가지 않습니다.
몇 가지는 관리형 클라우드에만 남아 있습니다 — 인프라, 결제, 그리고 선택적 관리형 LLM 풀입니다. 이 중 어느 것도 Tablize를 실행하는 데 필수는 아닙니다. 단지 플랫폼을 직접 운영하고 싶지 않은 팀을 위한 편리한 버전일 뿐입니다.
Tablize는 에이전트 런타임, HTTP 서버, 다섯 개의 제품 도메인, 38개의 커넥터를 하나로 묶은 단일 Rust 바이너리입니다. 배포 방식은 Docker Compose입니다: 5개의 컨테이너(tablize 바이너리, postgres, emqx, minio, python 샌드박스).
크레이트 구성은 견고한 도메인 경계를 강제합니다: Data, IoT, App, Media, Platform은 각각 자체 크레이트에 존재하며 서로를 import할 수 없습니다. tools 크레이트는 모든 도메인을 가로질러 집계하는 유일한 곳으로, 각 도메인의 도구를 에이전트 런타임이 호출하는 전역 레지스트리에 등록합니다.
스토리지는 여러 스키마(iot.*, data.*, app.*, media.*, platform.*)를 갖는 하나의 Postgres 인스턴스입니다. 시계열은 TimescaleDB가 처리합니다. 도메인 간 이벤트 버스는 없습니다 — 도메인 간 조율은 에이전트 런타임의 도구 호출 메커니즘을 통해 이루어집니다.
설계 선택에 대한 자세한 내용: 우리가 Tablize를 마이크로서비스 대신 하나의 Rust 바이너리로 구축한 이유.
데이터가 경계 밖으로 나갈 수 없는 헬스케어, 금융 등 규제 산업. 셀프 호스팅하고, 에이전트를 본인의 LLM 키로 연결하여, 단 한 행도 제3자에게 보내지 마세요.
인터넷 송신이 없는 방화벽 뒤의 배포 환경. 셀프 호스팅 빌드는 로컬 LLM(Ollama, vLLM으로 서빙하는 Llama 등)으로 외부 호출 없이 실행할 수 있습니다.
관리형 워크스페이스별 티어가 맞지 않는 대용량 워크로드를 위한 선택지. 본인 하드웨어에서 실행하고, 본인 LLM 비용을 지불하며, 워크스페이스별 추가 비용이 없습니다.
포크를 권장합니다. 도메인 특화 도구를 추가하고, 인증 레이어를 교체하고, 자체 integration을 구축하세요. 크레이트 경계 덕분에 이런 작업을 정밀하게 할 수 있습니다.
배포 스크립트는 Docker Compose를 감싼 얇은 래퍼입니다. Docker가 설치된 모든 Linux 호스트에서:
git clone https://github.com/tablize/tablize.git cd tablize cp .env.example .env # ANTHROPIC_API_KEY(또는 다른 LLM 프로바이더), DOMAIN 등을 설정하도록 .env를 편집하세요 docker compose up -d
다섯 개의 컨테이너가 시작됩니다: tablize(바이너리), postgres(TimescaleDB 포함), emqx(MQTT 브로커, IoT를 사용하지 않으면 선택 사항), minio(S3 호환 스토리지), python-sandbox(Python 도구용).
자세한 문서: 저장소의 README와 셀프 호스팅 문서를 참고하세요.
Tablize 런타임은 허용적인 오픈소스 라이선스로 배포됩니다. 상업적으로 실행하고, 포크하고, 수정하고, 고객을 위해 배포할 수 있습니다. 다만 파생 저작물은 그 사실을 명확히 표시하고 Tablize 상표를 이용해 이득을 취하지 말 것을 부탁드립니다.
구체적인 라이선스 세부 사항은 저장소의 LICENSE 파일에 있습니다. 특정 상업적 사용 사례를 위해 다른 라이선스 협의가 필요하다면 hello@tablize.com으로 이메일을 보내주세요.
기여를 환영합니다. 특히 새로운 integration 커넥터, 명확한 재현 절차가 있는 버그 수정, 문서 개선, 추가 로케일을 위한 번역을 환영합니다. 저장소에서 PR을 열어주세요. CONTRIBUTING.md가 로컬 개발 환경 설정과 테스트 인프라를 단계별로 안내합니다.
더 큰 아키텍처 변경(새로운 도메인, 대규모 리팩터)을 고려 중이라면, 코드를 작성하기 전에 먼저 이슈를 열어 방향을 논의해 주세요 — 서로의 시간을 아낄 수 있습니다.