Logo
hhlee
2024-10-29 14:33:12

비하인드
글로벌버전 웹사이트 개발 with GPT & Copilot

웹사이트를 개발하다보면 자국어만을 기준으로 할 수도 있지만, 특히나 글로벌로 판매가 가능한 SaaS 서비스라면 무언가 아쉬운 느낌이 듭니다. 그렇다고 거창하게 글로벌을 노리고 제작하기에는 생각보다 품이 많이 들어 부담스럽습니다. 저희팀은 아래와 같은 우리만의 방법으로 부담없이 모국어로 개발하면서도 글로벌 지원을 하고 있습니다.

에디터상에서 번역 완성

변수처리 방식의 단점

일반적인 i18n 라이브러리 등은 아래와 같은 방식으로 다국어를 처리합니다. 여러가지 방법이 있겠지만 기본적인 구조는 아래와 같습니다. 각 메시지의 키를 만들고, 해당 키에 상응하는 사용자의 언어별 표시를 하는 것입니다. 언뜻보면 가장 합리적인 방법처럼 보입니다.


이 방식은 가장 간단한 형태의 다국어버전 구동방식을 표현합니다. 비즈니스가 성장함에 따라 다양한 다국어를 유연하게 추가할 수 있다는 장점이 있습니다. 하지만 비즈니스가 적절하게 성장한 상태가 아닐 때에, 소수의 개발팀에서 작업할 때에는 아래와 같은 과도기적인 문제가 있습니다.


사소한 잡일들이지만 사용자 메시지와 맞닿은 프론트쪽 개발을 하다보면, 이러한 과정으로 인해서 안그래도 부족한 개발 리소스가 낭비되게 됩니다.

코드에 녹이는 언어별 메시지

이러한 불편을 최소화하고자 비디오스튜팀은 자국어 단일 버전을 개발하는 속도로 다국어 버전을 개발하고 있습니다. 대신 다국어버전을 "영어" 하나로만 국한하고 있습니다. 추후에 시장이 넓어짐에 따라 이 방식은 유지될 수 없겠지만, 적어도 "영어" 사용가능한 유저층에게 어필하는 글로벌 초기단계에서는 아주 유용하게 사용하고 있습니다.

비디오스튜팀은 백엔드와 프론트에 directTrans라는 global 헬퍼를 등록하고 씁니다. 이 코드의 구현은 아주 심플합니다. 첫번째 파라미터로 모국어인 한글 메시지를 받고, 두번째 파라미터로는 글로벌인 영어 메시지를 받습니다.


아래와 같이 유저에게 노출되는 메시지가 나타나는 부분은 단순히 아래와 같이 만들면 됩니다.


이렇게 보면 어차피 코드짜면서 영어 번역해야하는거 아니냐 할 수 있지만, 코파일럿과 함께 사용하면 절대 그렇지 않습니다. 코파일럿은 혹은 Cursor AI 도구를 사용하면, 내가 자주사용하는 헬퍼 혹은 열려있는 탭의 함수정의, 입력된 패턴을 참고하기 때문에 위와 같이 자주 쓰는 헬퍼의 용법은 아주 잘 이해합니다.

아래와 같이 directTrans('.. 하고 한글을 입력하면, 바로 두번째 파라미터가 번역된 영어 메시지가 들어가는 것을 유추하므로, 에디터상에서 코드를 짜면서 글로벌 버전을 바로 만들어낼 수 있습니다.

copilot.gif

< 모국어인 한글만 타이핑하면, 자동번역된 영어가 추가됨 >

이 방식으로 진행하면 위에서 언급한 정석적인 글로벌 버전의 개발 단점을 모두 극복할 수 있습니다.


앞서 언급한대로 이 방식은 힘을 들이지 않고 글로벌 버전을 빠르게 구현하는데에 목적이 있습니다. 보다 정교한 번역 품질이나 여러 언어버전을 만들기에는 적합하지 않은 방식입니다. 서비스가 성장함에 따라 언어 시스템은 변경을 해야합니다.

블로그의 비동기 번역

코드에 들어가는 사용자 메시지 외에 서비스에는 수많은 메시지와 글이 동원됩니다. 랜딩페이지나 약관 등의 고정된 페이지는 1회성으로 번역을 해서 넣으면 그만이지만, 가이드나 블로그 같이 유동적으로 생성되고 수정되는 글에 대해서는 수작업으로 팔로우하기가 힘든 단점이 있습니다.

이에 비디오스튜에서는 가이드를 모국어인 한글로 등록하고, 일정한 시간후에 자동으로 수정된 부분을 추정하여 백엔드에서 GPT 모델을 이용하여 영어로 번역합니다. 번역에 관한 여러 API 서비스가 있을 수 있지만, LLM을 통한 번역시 아래와 같은 장점이 있습니다.


실제 적용함에 있어서 텍스트가 큰 가이드의 경우(거의 책 한권 분량)은 수정시마다 전체를 번역하는 것이 불가능합니다. 따라서 문단별로 내용을 기반으로 해시키를 만들고, 변경되는 문단만 추적해서 자동 번역을 돌리고 있습니다. 이러한 호출 타입은 (저희는 사용하고 있지 않지만) GPT의 대량 호출 할인을 사용하면 더 저렴하게 대량 번역이 가능할 듯합니다(혹은 프론티어 모델보다 더 값싼 모델을 이용할 수도 있습니다).

아래는 한국어와 영어로 제공하고 있는 이 블로그글의 주소입니다. 영어로 된 버전은 저희의 서비스 특성을 감안해서 GPT가 자동으로 번역해서 만들어낸 결과입니다.


고객센터 대응

저희는 완벽한 일관된 고객 경험 및 실시간 사용자정보 연동을 위해, 자체적인 챗봇을 만들어서 사용합니다. 여기서 사용자의 정보가 모국어가 아닌 사용자의 경우에는, 자동으로 모국어를 첨부해서 원본과 보여줍니다. 우리가 모국어로 답변하면 이는 다시 사용자의 언어로 번역해서 전달됩니다.

cs.gif

< 모국어가 아닌 질문은 상호 자동번역 >

이를통해 번역으로 인한 지체를 줄이고 원활하게 글로벌 서비스를 제공하고 있습니다.

마무리

이미 많은 서비스들이 개발 및 운영에 GPT를 도입하고 있는 것으로 알고 있습니다. 비디오스튜팀과 같이 소규모 팀이면 GPT 등의 AI 도구를 이용하여 효율적으로 글로벌 서비스도 가능합니다.

게시물로 이동

뉴스레터에 가입하여 소식을 받아보세요

수집된 이메일은 뉴스레터 발송 외의 목적으로 사용되지 않으며, 언제든지 탈퇴할 수 있습니다

뉴스레터에 가입되었습니다 🎉

앞으로 유용한 소식으로 찾아뵙겠습니다
수집된 이메일은 뉴스레터 발송 외의 목적으로 사용되지 않으며, 언제든지 탈퇴할 수 있습니다
🗞️ [Update] 팟캐스트 스타일 영상 제작 기능 비디오스튜에 새로운 글쓰기 스타일인 팟캐스트 형식이 추가되었습니다.[아이디어로 시작하기]나 글다듬기로 팟캐스트 형식을 선택하면, 주제와 내용에 맞는 두 명의 화자가 자동으로 설정되고 실제 대화처럼 자연스러운 구어체 스크립트가 생성됩니다.정보 전달형 주제라면 사회자와 게스트, 인터뷰 형식...
[Update] 팟캐스트 스타일 영상 제작 기능
Junwoo 2026-04-15
🎓 무료 동영상 사이트, 종류부터 잘못 고르고 있는 거 아닐까요? 영상 콘텐츠를 시작하려는데 예산은 없고, 유료 툴 구독료는 부담스럽고. 그래서 "무료 동영상 사이트"를 검색하다가 막막해진 분들 꽤 계실 거예요.근데 솔직히 말하면, 이 키워드로 찾을 수 있는 정보들이 대부분 비슷합니다. Pixabay, Pexels 등등의 스톡 라이브러리 사이트 목록 ...
무료 동영상 사이트, 종류부터 잘못 고르고 있는 거 아닐까요?
Junwoo 2026-04-06
🗞️ 언론사라면 꼭 챙겨야 할 2026 공용인프라 지원 사업: NewsTTV/뉴스이미지 무료로 쓰는 방법 한국언론진흥재단이 2026년 뉴스콘텐츠 공용인프라 구축 지원 사업 공모를 시작했습니다. 신청 마감은 4월 15일(수) 오후 5시까지입니다.이번 사업은 클라우드 기반의 뉴스 제작 도구들을 언론사에 최대 5년간 무료(또는 일부 자부담)로 지원하는 프로그램인데요, 저희 비디오스튜가 공급하는 ...
언론사라면 꼭 챙겨야 할 2026 공용인프라 지원 사업: NewsTTV/뉴스이미지 무료로 쓰는 방법
Junwoo 2026-04-01
🎓 영상편집 AI, 이제 고르는 게 일이 됐습니다: 실무자를 위한 기준 3가지 영상편집 AI 툴이 요즘 너무 많아졌습니다.Sora, Veo, Runway, Kling, Vrew, Videostew, Canva, InVideo… 나열하다 보면 숨이 찰 정도죠.그리고 죄다 "AI로 영상 만들어드립니다"라고 하는데, 막상 써보면 뭔가 다 다릅니다. 내가 원하는 게 뭔지...
영상편집 AI, 이제 고르는 게 일이 됐습니다: 실무자를 위한 기준 3가지
Junwoo 2026-03-30
🗞️ [Update] 실시간 미리보기, 대폭 개선되었습니다! 비디오스튜는 실시간 전체 미리보기와 부분 미리보기 기능을 제공하고 있습니다.이번 업데이트에서는 슬라이드가 넘어갈 때 보이던 미세한 깜빡임을 줄여, 실제 렌더링 결과에 더 가까운 느낌으로 편안하게 미리보기를 확인할 수 있도록 개선했습니다.내부 테스트 결과, 트림이 많은 복잡한 영상도 이전...
[Update] 실시간 미리보기, 대폭 개선되었습니다!
Junwoo 2026-03-27
🗞️ [Update] 이미지 움직임(kenburn) 효과가 기본 속성으로 적용됩니다. 기존에 삽입한 이미지에 움직임을 주기 위해서는 켄번 효과를 별도로 설정을 하셔야 했는데요.해당 기능을 이미지 삽입 시 자동적으로 적용될 수 있도록 기능을 개선하였습니다.이미지 클릭 &gt; [내부표시] &gt; [꽉차게 표시/줄여서 맞춤] 메뉴에서 [방향] 옵션을 [없음]으로 하시면 기...
[Update] 이미지 움직임(kenburn) 효과가 기본 속성으로 적용됩니다.
Junwoo 2026-03-19
🗞️ [Update] AI 스티커 아이콘 생성 기능 AI 스티커 이미지 생성 기능이 공개되었습니다. 맥락에 따라 적절한 스티커 이미지를 생성할 수 있습니다.만약 여러분이 직접 생성하고 싶은 이미지가 있다면 텍스트 영역에 직접 원하시는 사물이나 상황을 입력하셔서 생성하실 수 있습니다.현재 플랫 벡터, 아웃라인 스티커, 3D 클레이, 손그림...
[Update] AI 스티커 아이콘 생성 기능
Junwoo 2026-02-13
🗞️ [Update] 이미지 업스케일링 및 배경제거 기능 개선 파일 편집 도구의 이미지 업스케일링 및 배경제거 성능이 개선되었습니다.라이브러리에서 이미지 파일 선택 후 “파일 편집 도구”를 통해 각 리소스들의 화질을 높히거나 배경을 투명하게 제거할 수 있습니다.각 기능에 따라 크레딧이 사용됩니다. (계정별 크레딧 사용 내역은 사용 통계 메뉴에서 확...
[Update] 이미지 업스케일링 및 배경제거 기능 개선
Junwoo 2026-02-10
[중단]