SST(Serverless Stack, 서버리스 프레임워크) 유지관리팀이 AI 모델의 상세 스펙과 가격, 성능 정보를 통합 제공하는 오픈소스 데이터베이스 'Models.dev'를 공개했다. 현재 시장에는 수많은 AI 모델이 쏟아져 나오고 있지만, 모든 모델의 최신 정보를 한눈에 확인할 수 있는 단일 데이터베이스가 없다는 점에 착안해 시작된 프로젝트다.
이 데이터베이스는 단순한 웹 페이지를 넘어 API 형태로 데이터를 제공하며, AI SDK에서 사용하는 모델 식별자(Model ID)를 그대로 사용하여 조회가 가능하다. 특히 SST 팀이 내부적으로 사용하는 'opencode'라는 도구에도 이 데이터가 적용되어 실무적인 유용성이 검증된 상태다. 커뮤니티 기여 방식으로 운영되는 만큼, 새로운 모델이 출시될 때마다 빠르게 업데이트되는 구조를 지향한다.
TOML 기반의 데이터 관리와 API 제공 방식
Models.dev는 AI 모델의 정보를 저장할 때 거대한 데이터베이스 서버를 구축하는 대신 TOML(Tom's Obvious Minimal Language, 설정 파일 형식)이라는 단순한 텍스트 파일을 사용한다. 쉽게 말하면 TOML은 사람이 읽기 쉽고 기계가 처리하기 편하게 만든 일종의 설정 문서다. 비유하자면 도서관의 도서 목록 카드를 아주 정교하게 표준화해 둔 것과 비슷하다. Models.dev는 이 방식을 채택해 제공자와 모델별로 폴더를 나누어 데이터를 관리한다. 구체적으로는 `providers/` 경로 아래에 제공자 아이디로 된 폴더를 만들고 그 안에 `provider.toml` 파일과 모델별 TOML 파일을 배치하는 구조를 가진다. 만약 모델 아이디에 슬래시(/)가 포함되어 있다면 하위 폴더를 추가로 생성해 파일 경로 자체가 모델의 식별자가 되도록 설계했다. 이런 구조 덕분에 깃허브 같은 버전 관리 시스템에서 데이터의 변경 사항을 한눈에 파악하기 쉽다.
시각적인 요소인 로고 관리 방식 역시 데이터의 일관성을 유지하는 방향으로 설계되었다. 제공자별로 SVG(Scalable Vector Graphics, 확대해도 깨지지 않는 벡터 이미지 형식) 파일을 제공하며 URL 패턴에서 {provider} 부분을 해당 제공자의 아이디로 대체하면 즉시 로고를 불러올 수 있다. 예를 들어 anthropic이나 openai 같은 제공자 아이디를 넣으면 해당 기업의 로고가 출력되는 식이다. 만약 특정 제공자의 로고가 아직 등록되지 않은 상태라면 시스템이 자동으로 기본 로고를 송출해 화면의 빈틈을 메운다. 이러한 단순한 파일 기반 관리 체계는 커뮤니티 기여자들이 복잡한 DB 쿼리문을 배울 필요 없이 텍스트 파일 수정만으로 새로운 모델 정보를 추가하거나 기존 정보를 업데이트할 수 있게 돕는다.
이렇게 저장된 텍스트 데이터는 API(Application Programming Interface, 프로그램 간 데이터 주고받기 위한 접점)를 통해 외부 서비스로 송출된다. 사용자는 AI SDK(Software Development Kit, 소프트웨어 개발 키트)에서 실제로 사용하는 모델 아이디를 입력값으로 넣어 특정 모델의 상세 스펙이나 가격 정보를 빠르게 조회할 수 있다. 이 시스템은 SST(Serverless Stack, 서버리스 인프라 구축 도구) 유지관리팀이 제작하여 운영하고 있으며 내부적으로는 opencode(오픈소스 코드 도구)라는 도구에서 이 데이터를 직접 끌어다 사용한다. 단순한 파일 저장소처럼 보이지만 실제로는 전 세계의 다양한 AI 모델 정보를 표준화된 형식으로 수집하고 이를 API로 빠르게 배포하는 효율적인 데이터 파이프라인을 구축한 셈이다. 개발자는 별도의 복잡한 설정 없이 모델 아이디 하나만으로 필요한 모든 기술 명세에 접근할 수 있다.
'extends' 구조와 GitHub Action을 통한 데이터 검증
데이터는 providers/ 디렉토리 내에서 제공자 식별자(ID)별로 폴더가 나뉘어 저장되며 각 폴더에는 provider.toml 파일이 들어간다. 여기서 주목할 점은 래퍼 모델(다른 제공자의 모델을 그대로 가져와 제공하는 형태)을 처리하는 방식이다. 개발팀은 extends라는 키워드를 도입해 원본 모델의 정의를 그대로 재사용하게 했다. 비유하자면 요리 레시피에서 기본 베이스는 그대로 두고 소스 하나만 바꾸는 것과 같다. 매번 모든 정보를 새로 적을 필요 없이 기본 틀을 상속받아 변경된 부분만 기록하면 된다. 특히 모델의 실질적인 성격이 원본과 거의 동일하고 일부 필드만 수정하거나 생략해야 할 때 이 방식을 사용한다. 다만 이 기능은 원본 소스 역할을 하는 공식 제공자 폴더가 아니라 외부 래퍼 모델에만 적용하여 데이터의 계층을 명확히 구분했다. 쉽게 말하면 중복 작업을 없애 데이터의 양을 줄이고 관리 효율을 높인 구조다.
이렇게 입력된 데이터가 정확한지 확인하는 과정은 GitHub Action(깃허브 액션, 소프트웨어 개발 흐름을 자동화하는 도구)이 담당한다. 사용자가 데이터를 제출하면 시스템이 자동으로 스키마(schema, 데이터의 구조와 형식을 정의한 규칙)를 검증한다. 이때 기준이 되는 규칙서는 packages/core/src/schema.ts 파일에 정의되어 있다. 사람이 일일이 오타를 찾거나 형식이 맞는지 확인하는 대신 자동화된 검사기가 규칙서와 대조해 무결성을 유지하는 방식이다. 특히 기존 래퍼 모델을 상속 구조로 전환할 때는 변경 전후의 출력값을 비교하는 과정을 거친다. 각 모델의 TOML 파일이 생성하는 JSON 결과값의 차이를 분석해 의도치 않은 데이터 변형이 없는지 꼼꼼하게 살피는 것이다. 덕분에 수많은 커뮤니티 기여자가 참여해도 데이터의 일관성이 깨지지 않는다.
기여자는 자신의 컴퓨터에서 변경 사항을 미리 확인해 볼 수 있는 로컬 실행 환경을 갖추고 있다. Bun(분, 빠른 실행 속도를 가진 자바스크립트 런타임)이 설치된 환경에서 다음 명령어를 입력하면 개발 서버가 구동된다.
bun install && bun run dev명령어를 실행한 뒤 웹 브라우저에서 http://localhost:3000 주소로 접속하면 수정된 데이터가 실제 화면에 어떻게 반영되는지 즉시 확인할 수 있다. 이는 실제 저장소에 코드를 올리기 전 최종적으로 데이터의 형태와 연결 상태를 검토하는 안전장치 역할을 한다. 단순한 텍스트 수정이 실제 서비스의 API나 UI에 어떤 영향을 주는지 직관적으로 파악할 수 있어 기여의 진입장벽을 낮춘다.
파편화된 AI 모델 생태계의 '단일 진실 공급원' 확보
개발자가 새로운 AI 모델을 도입하려면 각 서비스 사의 공식 문서를 일일이 열어 가격표와 성능 지표를 엑셀에 정리하는 작업부터 시작해야 했다. Models.dev는 이런 번거로움을 없애는 단일 진실 공급원(Single Source of Truth, 데이터의 정합성을 위해 하나의 신뢰할 수 있는 원천을 두는 방식) 역할을 한다. 비유하자면 여러 쇼핑몰을 일일이 방문해 가격을 비교하는 대신, 모든 상품 정보가 실시간으로 업데이트되는 통합 가격 비교 플랫폼을 사용하는 것과 같다. 개발자는 이제 개별 문서 확인이라는 소모적인 단계를 생략하고 표준화된 API를 통해 최적의 모델을 즉시 선택할 수 있다.
특히 AI SDK(소프트웨어 개발 키트)에서 사용하는 모델 식별자를 그대로 유지한다는 점이 실무적으로 큰 의미를 갖는다. 쉽게 말하면 모델을 교체할 때 코드 내의 이름을 일일이 수정할 필요 없이, 이미 정의된 식별자만 갈아 끼우면 바로 작동한다는 뜻이다. 이는 개발 현장에서 전환 비용, 즉 새로운 도구를 도입할 때 발생하는 시간적 손실과 심리적 저항을 획기적으로 줄여준다. 특정 모델의 가격이 오르거나 더 성능 좋은 모델이 나왔을 때, 코드 수정 범위를 최소화하면서 빠르게 대응할 수 있는 유연성을 확보하게 된다.
데이터의 최신성을 유지하는 방식 또한 커뮤니티의 집단지성에 의존한다. 특정 기업이 독점적으로 관리하는 폐쇄적인 DB가 아니라, 전 세계 개발자들이 직접 참여해 최신 정보를 업데이트하는 오픈소스 방식으로 운영된다. 새로운 모델이 출시되면 기여자들이 providers/ 디렉터리에 TOML(설정 파일 형식) 파일을 추가하고, 깃허브 액션(GitHub Action, 소프트웨어 개발 자동화 도구)이 미리 정해진 스키마에 맞는지 자동으로 검증한다. 이러한 구조는 정보의 업데이트 속도를 높일 뿐만 아니라, 누구나 데이터의 정확성을 검토할 수 있어 신뢰도를 높이는 결과로 이어진다.
나아가 오픈소스 데이터베이스로서의 확장성은 다양한 AI 도구와의 결합 가능성을 열어준다. 단순히 정보를 조회하는 수준을 넘어, 이 DB를 기반으로 모델의 가성비나 성능에 따라 요청을 자동으로 분배하는 지능형 라우팅 도구를 만들거나 실시간 비용 추적 시스템을 구축하는 것이 가능해진다. 개발자의 작업 흐름이 수많은 탭을 띄워놓고 정보를 탐색하던 소모적인 과정에서, 검증된 데이터를 바탕으로 최적의 조합을 결정하는 설계의 과정으로 진화하는 셈이다.




