
Twigg
Twigg · 생산성 · 기타
Twigg는 대화 컨텍스트를 대신 저장하고, 맞추고, 라우팅하는 상태 저장형 LLM API다. 채팅을 한 번 만들고 다음 이벤트만 보내면 되며, 어느 모델로 보낼지 이름을 지정한다. 스레드를 저장하고, 각 모델의 컨텍스트 윈도우에 맞춰 잘라내고, Anthropic, OpenAI, Google, xAI, Fireworks, OpenRouter에 맞게 변환하고, 답변을 스트리밍으로 돌려주며, 모든 요청의 비용을 보고한다. 컨텍스트 관리는 LLM 위에서 개발할 때 가장 번거로운 부분이다. 공급자마다 이걸 다시 만들어야 할까.

Twigg 소개
Twigg란 무엇인가
Twigg는 호스팅형 컨텍스트 관리 API로, 대규모 언어 모델 위에 앱을 만드는 개발자를 겨냥한 컨텍스트 저장소, 조립기, 모델 라우터다. 직접 메시지 테이블을 설계하고, 대화 기록이 윈도우를 넘을 때 무엇을 버릴지 정하는 코드를 쓰고, 공급자마다 변환 계층을 유지하는 대신, 다음 턴을 보내면 Twigg가 내부 동작을 처리한다. 애플리케이션과 모델 공급자 사이에 위치하며, 여전히 네가 가진 부분인 에이전트 루프와 도구 자체에는 관여하지 않는다.
핵심 약속은 이식성이다. 대부분의 공급자 API에서는 대화가 그것을 생성한 것 안에 살기 때문에, 저장된 스레드는 동시에 네가 떠날 수 없는 이유이기도 하다. Twigg는 대화를 모델 옆에 저장한다. 모델은 요청마다의 선택이며 채팅의 속성이 아니므로, 한 모델에서 시작한 스레드를 필드 하나만 바꿔 다른 모델로 이어갈 수 있다. 기록 안의 어떤 것도 단일 공급자의 방언으로 쓰여 있지 않다.
범위는 분명하며, 그게 중요하다. Twigg는 카탈로그 내 모든 모델에 걸쳐 도구를 쓰는 대화 턴을 다룬다. 임베딩, 이미지 생성, 배치 작업, 파인튜닝은 하지 않으며, 도구를 대신 실행하지도 않는다. 프로젝트에 그런 것이 필요하다면 다른 곳에 있다.
시작하기
- twigg.ai/dashboard/api-keys의 콘솔에서 API 키를 만든다. 키는
tw_live_…형태다. POST /api/v1/chats로 채팅을 만들고acme/proj-7같은 네임스페이스 경로를 고른다. 반환된 채팅 id를 보관한다.POST /api/v1/chats/{chat_id}/responses에 턴을 보낸다. 모델 이름과 프롬프트나 도구 결과처럼 새 입력만 함께 넣는다.- 서버 전송 이벤트 스트림을 읽어 답을 얻는다. 사용량과 비용을 담은
done이벤트로 끝난다. - 모델이 도구를 요청한 곳에서는 직접 코드에서 실행하고 그 결과를 같은 엔드포인트로 보낸다.
제품 정보
Twigg의 요금, 지원 플랫폼, 성능을 한눈에 확인해 보세요.
추천 대상
이 도구가 가장 잘 맞는 사용자, 작업, 상황입니다.
사용자
- 백엔드 및 AI 엔지니어
- 멀티 모델 기능을 운영하는 프로덕트 팀
- 공급자 종속을 피하려는 스타트업
작업
- 멀티턴 어시스턴트 구축
- 요청별 비용 감사
- 도구 호출 워크플로
- 대화 도중 모델 전환
활용 상황
- 어려운 티켓에서 빠르고 저렴한 모델에서 더 강한 모델로 에스컬레이션하는 지원 봇.
- 메시지와 도구 결과를 위한 데이터베이스 스키마를 설계하지 않고 에이전트를 프로토타이핑하기.
- 같은 대화 기록으로 공급자들을 비교해 어느 쪽이 네 사례에 더 나은 답을 주는지 보기.
주요 기능
상태 저장형 대화 저장
Twigg는 관리형 컨텍스트 저장소로 대화를 대신 보관하므로 대화 기록 전체를 다시 보낼 일이 없다. 채팅을 한 번 만들고 나서 방금 일어난 일, 예컨대 프롬프트나 도구 결과만 보낸다. 저장된 스레드는 앱이 읽고 쓰는 유일한 기록이 된다.
공급자 변환 계층
같은 채팅을 Anthropic, OpenAI, Google, xAI, Fireworks, OpenRouter 모델로 처리할 수 있다. Twigg는 저장된 컨텍스트를 선택한 공급자가 기대하는 스키마로 변환하므로 공급자별 형식을 유지하지 않아도 된다. 모델 자체의 문자열을 보낼 필요는 없고, 대신 카탈로그 항목을 지정한다.
요청별 모델 라우팅
모델은 요청마다의 선택이며 채팅의 속성이 아니다. 필드 하나만 바꾸면 대화 도중에 모델을 전환할 수 있다. 한 모델에서 시작해 다른 모델로 이어간다. 그래서 비용이나 품질에 따른 라우팅이 마이그레이션이 아니라 한 줄짜리 변경이 된다.
컨텍스트 예산과 압축
각 네임스페이스는 컨텍스트 예산과 보존 정책을 포함한 자체 규칙을 가진다. 대화 기록이 모델의 윈도우를 넘으면 Twigg가 그것을 압축하고 어디서 일어났는지 알려준다. 압축 실행은 같은 요율로 별도 항목으로 청구된다.
실행 단위 비용 보고
모든 상호작용은 어떤 컨텍스트를 조립했고, 어느 모델이 처리했고, 얼마가 들었는지 기록하는 실행이다. done 이벤트가 사용량과 비용을 돌려주며, 실행 id가 요청을 감사하는 데 쓰는 값이다. 가격은 백만 토큰당으로 표시되고 플랫폼 마진을 포함한다.
정리를 위한 네임스페이스
네임스페이스는 acme/proj-7처럼 네가 고르는 경로로, 채팅 생성 시 설정되고 이후 변경할 수 없다. 목록 표시를 위해 채팅을 묶고, 어떤 지침, 도구, 보존 정책, 컨텍스트 예산이 적용되는지 정하는 범위 키이기도 하다. 경로 상위에서 게시한 설정은 그 아래에 적용된다.
도구를 인지하는 스트리밍
응답은 항상 서버 전송 이벤트로 스트리밍된다. 텍스트 델타 외에도 스트림은 도구 호출, 설정과 변환 경고, 진행 중인 압축 작업을 보고한다. Twigg는 도구가 호출되었음을 알리며, 대신 실행하지는 않는다.
장단점
장점
- 대화가 단일 공급자 밖에 살아 모델을 바꿔도 이력이 고립되지 않는다.
- 대화 기록 전체가 아니라 최신 이벤트만 보내므로 관리하는 코드와 페이로드가 줄어든다.
- API 키 하나로 Anthropic, OpenAI, Google, xAI, Fireworks, OpenRouter 모델에 닿는다.
- 각 실행이 처리한 모델과 비용을 보고해 청구와 예산 편성에 도움이 된다.
- SDK가 필요 없다. 서버 전송 이벤트를 읽을 수 있는 HTTP 클라이언트면 충분하다.
단점
- 비스트리밍 모드가 없어 모든 통합이 서버 전송 이벤트를 다뤄야 하고, 이는 단순한 JSON 호출보다 수고가 크다.
- 도구를 실행하지 않으므로 도구 계층은 여전히 직접 만들고 돌려야 한다.
- 범위가 도구를 쓰는 대화 턴에서 멈춘다. 임베딩, 이미지 생성, 배치, 파인튜닝이 없어 혼합 워크로드는 다른 서비스가 필요하다.
- 채팅을 만들면 네임스페이스는 변경할 수 없어 나중에 재구성하려면 새 채팅을 시작해야 한다.
자주 묻는 질문
단일 API 뒤에서 LLM 대화 컨텍스트를 저장하고 조립하고 라우팅한다. 채팅을 만들고 모델 이름을 붙여 다음 이벤트를 보내면, 그 모델에 맞춰 컨텍스트를 조정하고 답을 스트리밍한다.
관련 콘텐츠
Twigg와 관련된 도구, 스킬, 아티클을 살펴보세요.
Twigg 대안
Base Code
Base44 (Wix) · 코딩 · 생산성Base Code는 Base44가 만든 공유 클라우드 개발 환경이다. 팀은 기존 GitHub 저장소에 대한 변경을 채팅으로 설명하고, 미리보기로 확인한 뒤 풀 리퀘스트로 돌려보낸다.
Knocket
Knocket (Tencent RTC team) · 생산성 · 비즈니스 · 챗봇Knocket은 무료 라이브 채팅과 연락처 페이지 도구다. 방문자는 웹사이트, 앱, 공유 링크에서 메시지를 보내고, 운영자는 텔레그램이나 하나의 받은편지함에서 답한다.
FloorGen
Vinit Kumar (FloorGen) · 생산성 · 중국 AIFloorGen은 브라우저에서 도는 평면도 제작 도구다. 문장이나 스케치를 편집 가능한 2D 평면도와 3D 둘러보기로 바꾸고, PDF, DXF, 영상으로 내보낸다. 계정 없이도 그릴 수 있다.
