데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      저 유쾌한 친구지만 선은 안 넘습니다. - 에이닷 통화제목 AI 길들이기

      류시진 25.10.23
      941 9 1
      DEVOTEE 요약
      SK텔레콤의 한줄요약 서비스는 통화의 핵심 내용과 구별성을 담은 제목을 제공해 사용자가 원하는 통화를 쉽게 찾을 수 있도록 돕습니다. 기존 모델의 추상적 제목 생성 문제와 적절하지 않은 재미요약을 개선하기 위해 구체성과 핵심성을 강화하고, 안전성과 적절성을 보장하기 위한 3중 안전 장치를 도입한 새로운 모델을 개발하여 성능과 사용자 만족도를 크게 향상시켰습니다. 이를 통해 유저가 원하는 통화 탐색뿐만 아니라 서비스 품질과 가치까지 모두 개선되었습니다.
      DEVOTEE 추천 블로그

      통화제목을 만들어 주는 한줄요약

      안녕하세요. SK텔레콤에서 통화요약을 기획하고 있는 류시진입니다.

      한줄요약은 SKT의 독자적 LLM 모델인 A.X를 활용한 통화요약 서비스의 task 중 하나로

      수많은 통화 중 내가 원하는 "그 통화"를 찾을 수 있게 도와 주는 에이닷 AI 통화요약의 핵심 기능입니다.

      한줄요약은 때로는 빠른 통화 탐색을 도와주기도 하고,

      때로는 유쾌한 제목으로 추억을 만들어 주기도 하는데요.

      이렇게 유용한 한줄요약에도 아쉬운 점이 없지는 않았습니다...



      가끔씩 아쉬운 점이 있습니다.

      1. 성의가 없어 보여요

      통화 내용이 너무 짧거나, 다양한 주제로 통화를 하는 경우 추상적인 제목이 생성되는 경우가 있습니다.

      예를 들면, "남자친구와의 즐거운 통화", "퇴근 길에 나눈 이야기" 등이 있는데요.

      틀린 제목은 아니지만 수많은 통화 중 원하는 통화를 찾기에는 어려움이 있겠죠?

      (아래 예시 이미지는 샘플로, 실제 AI 생성 결과가 아닙니다.)


      2. 분위기에 맞지 않는 장난이 보여요

      한줄요약 LLM에는 유쾌한 제목을 생성해주는 재미요약 기능이 함께 탑재되어 있습니다.

      재미요약 덕분에 일상적 통화에서 미소를 짓기도 하고, 소중한 추억도 쌓을 수 있지만

      적절하지 않은 주제나 분위기에서 재미요약이 생성된다면 불편한 마음이 들 수도 있을 거예요.

      (아래 예시 이미지는 샘플로, 실제 AI 생성 결과가 아닙니다.)



      왜 그랬을까요?

      요약 성능 지표 간 Trade-off가 있어요.

      한줄요약은 내부 평가 시 몇 가지 성능을 측정하는 지표가 있습니다.

      대표적인 지표는 사실성 / 유창성 / 핵심성 / 구체성 인데요.


      초기 한줄요약은 할루시네이션을 방지하고, 가독성이 좋은 제목을 만들기 위해

      "사실성"과 "유창성"에 중점을 둔 학습을 진행했습니다.

      결과물을 심플하게 만든 덕분에 거짓을 포함할 확률이 낮아지고 간결하게 읽기 좋은 제목이 되었지만,

      구체적인 정보를 확인하고 핵심 키워드를 담기 어려워지는 현상도 함께 발생했습니다.

      애매한 제목보다는 유쾌한 제목을 선호했어요.

      위와 같은 이유로 한줄요약은 추상적 제목이 생성되는 경향성이 발생하게 되었습니다.

      상용 서비스에서 내용 파악이 어려운 제목들이 많이 생성되면 서비스 품질 이슈가 있기 때문에

      학습 데이터 중 추상적 제목이 생성된 통화들은 대신 유쾌한 제목으로 대체하여 학습 데이터를 구성했고 (재미요약),

      이를 통해 한줄요약 LLM 품질을 관리해오고 있었습니다.


      해결 1. 성능의 밸런스를 찾아 봅시다.

      1. 지표 간 우선순위에 대한 고민

      먼저 유저 입장에서 통화제목이 제공하는 핵심 가치가 무엇인지 생각해볼 필요가 있습니다.

      포스팅 서문에 나왔던 것과 같이

      수많은 통화 중 내가 원하는 "그 통화"를 찾을 수 있게 해주는 제목

      즉 통화의 핵심 내용을 지니면서, 다른 통화와의 구분이 가능한 구체성을 지닌 제목이 좋은 제목이 되겠죠.


      서비스 품질 관리를 위해서 여전히 "사실성"과 "유창성"은 중요한 지표입니다.

      다만 핵심 가치에 집중하기 위해 "핵심성"과 "구체성"지표의 우선순위를 좀 더 올릴 필요가 있어 보였습니다.


      2. 학습데이터 생성

      기존에도 핵심성과 구체성을 높이려는 시도가 없었던 건 아니었습니다.

      밸런스를 맞추면서도 성능을 향상시키기 위해서는 GT(Ground Truth)를 생성하는 모델이 기존보다 좀 더 똑똑할 필요가 있었기에,

      우선적으로 GT 생성 모델을 고성능 모델로 교체하는 것으로 학습데이터 생성을 준비했습니다.


      그리고 이어지는 Prompt Engineering.

      우리의 목표는 1%였습니다.

      내부 기준에 의하면 기존 GT 중 20% 수준이 "추상적 제목"으로 분류되고 있었지만

      이 수준을 1%까지 낮출 수 있도록 핵심성, 구체성을 높이고자 했습니다.


      원하는 지표 성능을 올리면서도, Trade-off 관계에 있는 다른 지표들의 성능에 영향을 적게 주는 궁극(?)의 Prompt를 찾기 위해

      수많은 반복(Iterative) 과정을 진행했고, 결국 1%를 맞출 수 있었습니다.

      기존 Prompt가 2줄짜리 심플한 가이드였던 반면

      새롭게 결정된 Prompt는 10줄짜리 가이드가 상세하게 적힌 모습으로 변경되었습니다.


      이렇게 완성된 학습데이터로 LLM개발팀과 함께 한줄요약 New 모델을 만들어 보았습니다. 그리고...

      3. 평가 결과

      New 모델과 기존 상용 모델을 비교하는 전문가 평가를 진행했습니다.

      기대했던 대로 원하던 지표의 성능은 월등하게 향상되었습니다.

      • 구체성 + 29.5%p

      • 핵심성 + 10.9%p

      한줄요약의 새로운 모델은 기존 모델 대비하여 구체성과 핵심성에 있어 매우 높은 퍼포먼스를 보여 주었습니다.

      이제 비슷한 통화를 두고 하나씩 들어가 보지 않아도, 제목만으로 판단하기 쉬워졌습니다.


      하지만 다른 지표들의 성능 하락 수준이 심하다면 좋은 변화라고 보기 어렵겠죠.

      그런데, 밸런스도 찾았습니다!

      • 사실성 - 2%p

      • 유창성 - 2%p

      주요 지표의 성능 향성 정도 대비, Trade-off 관계에 있는 지표의 하락 정도가 매우 낮아

      우리가 원하던 결과를 달성하게 되었습니다.

      image.png


      해결 2. 유쾌하면서 안전하게 만들어 봅시다.

      1. 가벼운 분위기의 학습데이터 고르기

      신규 모델의 핵심성, 구체성 향상으로 인해 기존 재미요약의 대상이던 "추상적인 제목"이 전부 사라졌습니다.

      우리는 통화 중 타겟 비율만큼의 유쾌한 통화 제목이 생성되길 바라기 때문에, 새로운 대상을 찾아야 했습니다.


      유저 불편을 최소화하기 위해서는 적절한 통화를 유쾌한 제목으로 바꾸는 것이 중요합니다.

      이를 위해 학습 데이터 중 가벼운 분위기의 input들을 분류할 수 있는 Prompting을 적용했고,

      이에 해당하는 비율이 타겟 비율이 될 때까지 반복(Iterative)를 다시 진행했습니다.


      타겟 비율을 달성한 Prompt로 프리징한 후, 해당 시점에 가벼운 분위기로 분류된 학습 데이터들은

      GT로 일반적인 한줄요약을 대체할 "재미요약"을 적용하여 모델 학습을 진행했습니다.

      (단조로운 유머를 피하기 위해 "식상한 키워드"로 필터링 된 재미요약들은 GT 생성을 retry하기도 했답니다.)

      2. 3중 Safety Layer

      분위기가 가볍다고 판단하더라도, 주제 자체가 민감하다면 유쾌하게 표현하기 조심스럽죠.


      재미요약 대상이 된 새로운 학습 데이터 그룹에 재미요약 GT를 생성할 때 Safety를 한 번 더 적용했습니다.

      "민감한 주제"에 해당되는지 Prompting하여 해당되는 통화는 다시 GT를 일반적인 한줄요약으로 대체한 것입니다.


      뿐만 아니라, 최종 GT에 비속어가 포함되어 있는지 한번 더 필터링하여

      총 3겹의 Safety Layer가 만들어질 수 있도록 학습데이터 생성 프로세스를 설계했습니다.


      이러한 프로세스를 통해 만들어진 학습데이터로 학습한 New 모델은...


      3. 평가 결과

      동일한 전문가 평가 결과, 원하던 Safety 구현에 성공했습니다.

      • 상용 모델의 불편한 재미요약 비중 : 1%

      • New 모델의 불편한 재미요약 비중 : 0%

      관련 이슈 발생 수준도 현저히 감소했고,

      통화와 그 제목의 분위기가 일관성을 가진 "느낌 좋은" 한줄요약이 되었습니다.


      마치며

      집요함이 필요했어요

      사실 이번 과제를 시작하기 전까지는 기획자로서 LLM task를 어떻게 더 개선할 수 있을지 고민이 많았습니다.

      고지능의 GT 생성 모델을 채택하거나, 더 좋은 Foundation 모델이 개발되는 등

      기술적 개선들은 누가 봐도 직관적이고 선명하게 task의 성능을 향상시켜 주는데...

      이런 걱정이 없다고 할 수 없었죠.

      과연 정책적인 해결책으로도 가시적인 성능 향상을 만들 수 있을까?

      이번 과제에서 원하던 결과를 만들고 나니

      서비스는 역시 집요한 기획과 개발이 함께 하면 올라갈 곳이 더 있다는 사실을 또 한 번 느낍니다.

      유저들의 사용성을 고민하고 서비스가 제공하는 가치의 본질이 무엇이었는지 반추하는 과정을 통해,

      앞으로도 통화요약이 조금씩 진화할 수 있으리라는 자신감을 가지는 계기가 되었습니다.

      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      류시진 님의 최신 블로그

      더보기

      DEVOTEE 추천 블로그

      동영상 기고하기