
Compound가 서버에 마이크로소프트 오피스를 설치하지 않고도 엑셀 파일을 계산·출력하고 파워포인트와 워드 파일을 이미지와 PDF로 렌더링하는 엔진을 공개했다. 회사는 에이전트가 문서를 수정한 뒤 결과를 직접 확인하는 데 쓰이며, 브라우저 뷰어도 서버와 같은 렌더링 엔진을 사용한다고 밝혔다.
Compound는 Rust로 만든 스프레드시트 엔진과 문서 엔진을 약 8개월 동안 개발했으며, 이 과정에 대규모 언어 모델 토큰 약 1조 개를 사용했다고 설명했다. 스프레드시트 엔진은 엑셀 파일을 열고 계산하고 저장하며 출력한다. 문서 엔진은 파워포인트와 워드 파일을 PNG와 PDF로 그린다. 브라우저 뷰어에는 문서 엔진을 WebAssembly로 컴파일해 적용했다.
엑셀 계산과 출력
스프레드시트 엔진은 FILTER, SORT, UNIQUE, SEQUENCE, LET, LAMBDA, XLOOKUP, 정규식 함수, GROUPBY, PIVOTBY 등 엑셀 함수 477개를 구현했다고 Compound는 밝혔다. 각 엑셀 함수를 한 번씩 호출하는 시험 통합 문서에서는 엑셀이 저장한 결과와 874개 중 873개가 일치했다. 차이가 난 함수는 운영체제를 반환하는 INFO("osversion")였다.
Sheetpedia 공개 통합 문서 22,523개에 포함된 수식 셀 1억 4,890만 개를 비교했을 때는 Compound 결과의 98.5%가 엑셀과 비트 단위로 같았다. 같은 자료 중 22,485개 통합 문서를 대상으로 비교한 결과, LibreOffice 26.8.1은 수식 셀의 17.1%에서 엑셀과 달랐고 47%의 통합 문서에서 최소 한 건의 차이가 났다. 차이가 시작되는 셀만 보면 Compound 결과는 94%의 경우 엑셀과 같았다고 회사는 설명했다.
최신 함수 50개를 63개 수식에서 시험한 별도 통합 문서에서는 Compound가 엑셀과 63개 모두 일치했다. LibreOffice는 엑셀이 저장한 파일에서 39개, 엑셀이 저장하지 않은 파일에서는 17개가 일치했다. Compound는 동적 배열의 크기 변경도 엑셀과 동일하게 처리했다고 밝혔다. LibreOffice는 입력 변경 뒤 FILTER 결과가 네 행으로 늘어나야 하는 사례에서 기존 세 행만 표시했고, 라이브러리로 만든 파일에서는 배열 수식의 첫 값만 표시했다고 덧붙였다.
Compound는 수백 개에서 160만 개 수식까지 포함하는 66개 통합 문서로 속도를 비교했다. 엑셀은 Windows 가상 머신에서 COM으로 실행했고, Compound와 다른 하드웨어를 사용했으므로 회사는 속도 비율을 직접적인 경주 결과가 아닌 참고치로 봐야 한다고 밝혔다. 이 조건에서 Compound는 파일을 엑셀보다 11~35배 빠르게 열었고, 전체 재계산은 1.2~2.5배, 한 셀 수정 뒤 재계산은 2.3배 빨랐다. 다만 대규모 정확히 일치하는 조회, 휘발성 RAND 시트, 수백 개 시트를 가진 통합 문서에서는 엑셀이 더 빠른 경우가 있었다.
문서 렌더링과 비교 결과
파워포인트와 워드 파일은 표준 문서만으로 화면에 나타나는 모양을 모두 정할 수 없어 렌더링이 까다롭다고 Compound는 설명했다. 차트의 색과 축 범위, 넘치는 텍스트의 크기 조정, 텍스트 변형과 SmartArt 배치에는 오피스의 계산과 레이아웃 처리가 관여한다. 회사는 Microsoft Graph를 통해 시험 자료를 오피스에서 렌더링한 결과를 기준으로 삼고, 문서 엔진 변경을 그 결과와 비교한다고 밝혔다.
Compound가 제시한 사례에서는 파워포인트의 텍스트 변형, 차트 축과 데이터 레이블, 표와 글머리표, 도형 효과를 오피스와 비슷하게 그렸다. LibreOffice와 Google Slides는 사례에 따라 테두리나 효과를 빠뜨리거나, 차트와 글머리표의 배치를 바꾸거나, 차트를 이미지로 가져오는 차이를 보였다. 워드에서는 Compound가 글꼴별 글자 폭과 줄바꿈을 맞췄다고 했으며, LibreOffice는 서버에 해당 글꼴이 없을 때 다른 글꼴로 대체해 줄바꿈이 달라졌다.
회사는 파워포인트 82개와 워드 373개 문서의 최대 30페이지씩, 총 1,708페이지를 오피스 렌더링과 비교했다. 모든 결과를 가로 800픽셀로 맞춘 뒤 구조적 유사도(SSIM)를 계산했다. 1.0은 두 이미지가 동일하다는 뜻이다.
| 엔진 | 파워포인트 평균 SSIM | 0.9 이상인 페이지 | 워드 평균 SSIM | 0.9 이상인 페이지 |
|---|---|---|---|---|
| Compound | 0.940 | 86% | 0.948 | 89% |
| LibreOffice 26.8 | 0.886 | 45% | 0.848 | 56% |
페이지별 비교에서 Compound가 LibreOffice보다 오피스에 가까운 경우는 파워포인트 677페이지와 워드 595페이지였고, LibreOffice가 더 가까운 경우는 각각 52페이지와 31페이지였다.
Compound는 자체 시험에서 파워포인트 PDF 변환에 25~110밀리초, 워드 문서 변환에 100밀리초 미만이 걸렸다고 밝혔다. 파일마다 헤드리스로 실행한 LibreOffice는 워드 문서에 1.2초, 파워포인트 자료에 2.8초가 걸렸다. 엔진은 회사 클러스터에서 일반 서비스로 실행하며, 문서는 시스템 호출 필터로 제한한 프로세스에서 렌더링한다고 설명했다.
이 엔진은 에이전트가 문서를 수정할 때마다 결과를 확인하는 용도를 겨냥한다. 다만 계산·속도·렌더링 수치는 Compound가 제시한 시험 자료와 조건에 따른 결과다. Claude의 파워포인트 제작 방식과 비교 대상으로 언급된 PowerPoint skill은 PptxGenJS로 덱을 만들고 LibreOffice로 렌더링한다고 Compound는 설명했다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요