Large Language Models and Where to Use Them: Part 1

https://txt.cohere.com/llm-use-cases

지난 수 년간, 거대 언어 모델들(Large Language Models, LLMs)은 신흥 기술에서 주류 기술로 성장하였습니다. 이 블로그 게시글에서는 이들이 처리할 수 있는 가장 흔한 자연어 처리(Natural Language Processing, NLP)의 활용 사례들에 대해 살펴보겠습니다. 이것은 두 부분으로 나누어진 시리즈의 첫 번째 파트입니다.

거대 언어 모델(Large Language Model, LLM)은 다양한 자연어 처리(Natural Language Processing, NLP) 사용 사례를 처리할 수 있는 머신러닝 모델의 한 종류입니다. 그러나 LLM의 다양성 때문에, 이러한 모델을 언제 어디서 사용할지 이해하려는 초보자들에게 LLM들은 약간 어렵게 느껴질 수 있습니다.

이 블로그 시리즈에서는 Cohere의 LLM 플랫폼에서 예시를 들어, LLM들을 적용할 수 있는 넓은 범위의 사용 사례 카테고리 7가지를 단순화하여 매핑하겠습니다. 이것은 Cohere API를 사용하여 작업을 시작하거나, 심지어 다음에 만들고 싶은 것에 대한 아이디어를 새로 생각하는데 시작점으로써 도움이 될 수 있습니다.

7가지 사용 사례 카테고리는 다음과 같습니다:

  1. 생성(Generate): LLM은 문맥에 맞는 새로운 텍스트를 생성할 수 있습니다. 이를 활용하면 챗봇 대화, 광고 문구 작성, 스토리텔링 등 다양한 분야에서 효과적으로 활용할 수 있습니다.
  2. 요약(Summarize):복잡한 내용을 간결하게 표현하는 요약 기능은 기사, 보고서, 서적 등을 간단하게 이해하는 데 도움이 됩니다.
  3. 재작성(Rewrite): 기존 텍스트의 내용을 유지하면서 다른 스타일이나 어조로 텍스트를 재작성할 수 있습니다. 이 기능은 원문의 표현을 다양화하거나 특정 대상에게 맞춰 표현을 변경하는 데 사용될 수 있습니다.
  4. 추출(Extract): 텍스트에서 특정 정보를 추출하는 것은 정보 검색, 키워드 분석 등 다양한 분야에서 사용됩니다.
  5. 검색/유사도(Search/Similarity): 유사도 분석은 검색 엔진, 텍스트 비교, 추천 시스템 등에 사용되며, 텍스트 간의 의미론적 유사성을 파악하는 데 중요한 역할을 합니다.
  6. 군집(Cluster): 텍스트 군집화는 유사한 텍스트를 그룹화하여 주제나 카테고리를 분류하는 데 사용됩니다. 이를 통해 문서 관리, 고객 피드백 분석, 소셜 미디어 트렌드 파악 등 다양한 작업을 수행할 수 있습니다.
  7. 분류(Classify): 텍스트 분류는 특정 카테고리에 텍스트를 분류하는 데 사용되며, 감성 분석, 의도 파악, 토픽 분류 등 다양한 분야에서 활용됩니다.


LLM들의 일반적인 성격 때문에, 각 카테고리 내의 사용 사례와 관련 산업의 범위는 매우 넓습니다. 이 포스트는 각각에 너무 깊게 파고들려는 것은 아니지만, 당신이 실험을 시작하는 데 충분한 아이디어와 예시를 제공할 것입니다.

1. 생성(Generate)

생성(Generate)은 대형 언어 모델의 핵심 능력 중 하나입니다. 이는 주어진 입력에 대한 적절한 응답을 만들어내는 기능으로, 대화형 AI 시스템에서 가장 기본적인 역할을 합니다. 예를 들어 챗봇, 번역 시스템, 문장 완성 도구 등에서 이러한 생성 기능을 활용할 수 있습니다. LLM은 다양한 출처에서 모아진 거대한 텍스트 모음을 사용하여 사전 훈련되었습니다. 이는 언어가 어떻게 사용되고 인간이 어떻게 글을 쓰는지의 패턴을 포착할 수 있다는 것을 의미합니다.

이러한 생성 모델에서 최선의 결과를 얻는 것은 Prompt Engineering이라는 자체적인 연구 분야가 되어가고 있습니다.

다른 세 가지에 대한 자세한 내용은 나중에 다루겠지만, Prompt Engineering의 기본 아이디어는 모델이 작업할 수 있는 맥락을 제공하는 것입니다. Prompt Engineering은 넓은 주제이지만, 매우 높은 수준에서 보면, 특정 텍스트 시퀀스를 생성하는 신호로서 모델에 소량의 맥락 정보를 제공하는 것입니다.

맥락을 설정하는 한 가지 방법은 모델이 계속할 수 있는 글의 몇 줄을 쓰는 것입니다. 에세이나 마케팅 글을 작성하면서 특정 주제에 대한 처음 몇 문장으로 시작한 다음, 모델이 단락이나 심지어 전체 피스를 완성하도록 하는 것을 상상해 보세요.

또 다른 방법은 우리가 모델이 생성하길 원하는 텍스트의 유형을 나타내는 몇 가지 예시 패턴을 쓰는 것입니다. 이것은 모델을 형성할 수 있는 다양한 방법과 그것이 포함하는 여러 응용 분야 때문에 흥미로운 주제입니다.

한 예를 들어보겠습니다. 여기서의 목표는 모델이 블로그 게시물의 첫 번째 단락을 생성하도록 하는 것입니다. 먼저, 우리가 모델에게 작성하도록 원하는 것에 대한 간단한 맥락을 준비합니다. 블로그의 제목, 대상 독자, 음성의 톤, 단락

제목: “AI의 미래: 인공지능이 우리의 일상생활을 어떻게 변화시킬 것인가” 대상 독자: 일반 대중 톤: 친근하고 이해하기 쉬운 단략:

다음은 예시들입니다:

  • 제품 이름과 키워드가 주어진 경우, 제품 설명 쓰기
  • 챗봇/대화형 AI 응답 작성
  • 질문-응답 인터페이스 개발
  • 목적/명령이 주어진 경우 이메일 작성
  • 헤드라인과 단락 작성
  1. 제품 이름과 키워드가 주어진 경우, 제품 설명 쓰기: 이는 eCommerce 사이트나 온라인 카탈로그에서 매우 유용합니다. 예를 들어, 제품 이름이 “에코-프렌들리 요가 매트”이고 키워드가 “지속 가능, 편안, 안전”이라면, 모델은 다음과 같은 제품 설명을 생성할 수 있습니다: “우리의 에코-프렌들리 요가 매트는 지속 가능한 소재를 사용하여 제작되었습니다. 이 매트는 편안함과 안전성을 동시에 제공하여 요가 수련을 즐기는 동안 편안함을 유지합니다.”
  2. 챗봇/대화형 AI 응답 작성: 대화형 AI는 사용자의 질문에 적절하게 응답하는 것이 중요합니다. LLM은 이러한 작업에 대해 학습되어 있으므로, 사용자의 질문에 대한 유익하고 연관성 있는 답변을 생성하는 데 사용할 수 있습니다.
  3. 질문-응답 인터페이스 개발: 이는 고객 지원, FAQ 섹션, 또는 튜토리얼에서 특히 유용합니다. 사용자의 특정 질문에 대한 적절한 응답을 생성하도록 모델을 학습시킬 수 있습니다.
  4. 목적/명령이 주어진 경우 이메일 작성: 이메일은 의사소통의 중요한 도구입니다. LLM은 주어진 정보를 바탕으로 이메일을 작성하는 데 사용될 수 있습니다. 예를 들어, 회의 일정을 조정해야하는 경우, 모델은 정중하고 명확한 이메일을 생성할 수 있습니다.
  5. 헤드라인과 단락 작성: LLM은 기사, 블로그 게시물, 보고서 등의 헤드라인과 단락을 작성하는 데 사용될 수 있습니다. 주제, 키워드, 의도 등의 정보를 제공하면, 모델은 이를 바탕으로 흥미로운 헤드라인과 포괄적인 단락을 생성할 수 있습니다. 이를 통해 글쓰기 프로세스를 가속화하고 품질을 향상시킬 수 있습니다.

2. Summarize

두 번째 사용 사례 카테고리는 텍스트 요약이며, 이 역시 프롬프트 엔지니어링을 활용합니다. 하루에 우리가 다루는 텍스트의 양을 생각해보세요, 예를 들어 보고서, 기사, 회의록, 이메일, 스크립트 등이 있습니다. 우리는 전체 문서와 그 요약의 몇 가지 예시를 프롬프트로 제공함으로써, LLM에게 텍스트를 요약하도록 요청할 수 있습니다.

텍스트 요약(Text Summarization)은 긴 텍스트를 짧은 버전으로 축소하는 것을 말합니다. 이는 두 가지 주요 형태로 나타날 수 있는데, 이는 추출적 요약(Extractive Summarization)과 생성적 요약(Abstractive Summarization)입니다.

  1. 추출적 요약(Extractive Summarization): 이 방법은 원본 문서에서 가장 중요한 문장을 ‘추출’하여 요약을 만드는 것입니다. 원본 텍스트에서 문맥을 보존하면서 핵심 내용을 전달하는 문장을 선택하게 됩니다. 추출적 요약은 문장의 원래 순서를 변경하지 않을 수 있으며, 이는 요약이 원본 텍스트의 구조를 따르는 경향이 있음을 의미합니다.
  2. 생성적 요약(Abstractive Summarization): 생성적 요약은 기존의 문장을 재해석하거나 재구성하여 완전히 새로운 문장을 ‘생성’하는 것입니다. 이는 원본 텍스트의 내용을 이해하고 이를 기반으로 핵심 내용을 요약하는 능력이 필요합니다. 이는 원문의 의미를 보존하면서도 새로운 표현을 사용하여 요약을 생성하게 됩니다.

대규모 언어 모델(Large Language Models, LLMs)은 주로 생성적 요약에 사용되며, 이를 통해 텍스트의 주요 내용을 간결하고 쉽게 이해할 수 있는 형태로 변환할 수 있습니다. 이를 통해 정보 검색, 학습, 또는 결정을 내리는데 도움이 될 수 있습니다. LLM을 사용하여 생성한 요약은 원본 문서의 내용을 왜곡하지 않으면서도, 필요한 정보를 효과적으로 전달해야 합니다.

이러한 방법은 보고서, 기사, 책 등의 긴 문서를 요약하거나, 회의록을 요약하는데 유용하게 사용될 수 있습니다.

다음은 LLM 요약이 유용하게 적용될 수 있는 예시들입니다:

  • 고객 지원 채팅: 복잡하고 긴 고객 지원 대화를 간결하게 요약하여, 주요 이슈와 해결책을 빠르게 파악할 수 있습니다.
  • 환경, 사회, 지배구조(ESG) 보고서: 이러한 보고서들은 대체로 길고 복잡하지만, LLM은 중요한 정보를 간결하게 요약할 수 있습니다.
  • 수익 콜: 회사의 수익 발표를 빠르게 파악하기 위해 이러한 콜을 요약하는 것이 유용할 수 있습니다.
  • 논문의 초록: 복잡한 학술 논문을 읽기 전에 그 내용을 빠르게 파악하기 위해 초록을 요약하는 것이 유용할 수 있습니다.
  • 대화 및 전사본: 다양한 상황에서의 대화나 전사본을 요약함으로써 중요한 내용을 빠르게 이해할 수 있습니다.

3. Rewrite

재작성(Rewrite)이란, 특정 텍스트를 다른 표현으로 변환하는 것을 말합니다. 이는 언어의 다양성과 유연성을 활용하여 동일한 메시지를 다르게 표현할 수 있게 합니다.

예를 들어, “나는 커피를 좋아해. 그것은 나에게 에너지를 줘.”라는 문장을 재작성하면, “커피는 나에게 에너지를 주는 음료이기 때문에 나는 그것을 좋아해.”라고 표현할 수 있습니다. 이 두 문장은 다르게 표현되었지만, 동일한 메시지를 전달합니다.

대규모 언어 모델(Large Language Models, LLMs)은 텍스트 재작성에 탁월한 능력을 보입니다. LLMs는 문장의 의미를 이해하고, 다양한 방식으로 같은 의미를 전달할 수 있는 새로운 문장을 생성할 수 있습니다.

이는 다양한 분야에서 활용될 수 있습니다. 예를 들어, 문서의 일관성을 유지하면서도 다양한 독자들이 이해하기 쉽게 하려면, 텍스트 재작성이 필요할 수 있습니다. 또한, 콘텐츠를 다양한 형태로 제공하거나, 자연스럽게 새로운 방식으로 같은 내용을 표현하고 싶을 때도 재작성이 유용합니다.

텍스트 재작성은 다양한 의미를 가질 수 있고, 다양한 형태를 취할 수 있지만, 일반적인 예시 중 하나는 텍스트 수정입니다. 다음은 음성-to-텍스트 전사본에서 철자와 문법을 수정하는 작업입니다. 우리는 이 작업에 대한 짧은 맥락으로 프롬프트를 준비하고, 그 다음으로 잘못된 전사본과 수정된 전사본의 예시를 제공합니다.

예를 들어, 우리는 다음과 같이 프롬프트를 설정할 수 있습니다:

[맥락]
이 작업은 음성에서 텍스트로 변환한 전사본에서 철자와 문법을 수정하는 것입니다.

[예시 1]
잘못된 전사: “아녕하세여 제 가방에 이써.”
수정된 전사: “안녕하세요, 제 가방에 있어요.”

[예시 2]
잘못된 전사: “울 나라만세 무꼬닥?”
수정된 전사: “울나라 만세, 무슨 일이죠?”

이 프롬프트를 통해, LLM은 주어진 전사본에서 철자와 문법 오류를 어떻게 수정하는지를 배울 수 있습니다. 그런 다음, 비슷한 맥락을 가진 새로운 전사본에 이를 적용할 수 있습니다.

다음은 LLM을 사용하여 텍스트를 재작성하는 예시 사용 사례들입니다:

  • 다른 목소리로 텍스트를 다시 표현하기
  • 텍스트 대문자화를 수정하는 철자 검사기 구축
  • 챗봇 응답 다시 표현하기
  • 개인 식별 정보를 수정하기
  • 복잡한 텍스트를 쉽게 이해할 수 있는 형태로 바꾸기
  1. 다른 목소리로 텍스트를 다시 표현하기: 이것은 기업이 특정 브랜드 목소리를 유지하거나, 특정 대상 소비자 집단을 더 잘 대상으로 하는 콘텐츠를 만들 때 유용합니다. 예를 들어, LLM을 사용하여 공식적인 보고서를 더 친근한 톤으로 재작성할 수 있습니다.
  2. 텍스트 대문자화를 수정하는 철자 검사기 구축: LLM은 사용자가 입력한 텍스트를 분석하고, 필요한 경우 대소문자를 바꾸는 철자 검사기를 만드는 데 사용될 수 있습니다.
  3. 챗봇 응답 다시 표현하기: 챗봇이 사용자의 질문에 응답할 때, LLM을 사용하여 응답을 다양한 방식으로 재작성할 수 있습니다. 이것은 챗봇이 자연스럽게 대화하는 것처럼 보이게 하고, 사용자 경험을 향상시킬 수 있습니다.
  4. 개인 식별 정보를 수정하기: 특정 텍스트에서 개인 식별 정보를 제거하거나 수정해야 하는 경우에 LLM을 사용할 수 있습니다. 예를 들어, 고객 피드백을 재작성하여 개인 정보를 제거하고 공개적으로 공유할 수 있습니다.
  5. 복잡한 텍스트를 쉽게 이해할 수 있는 형태로 바꾸기: LLM을 사용하여 법률, 의학, 기술 등 복잡한 주제의 텍스트를 일반 대중이 이해하기 쉽도록 재작성할 수 있습니다. 이는 복잡한 주제를 대중에게 전달하는 데 도움이 될 수 있습니다.

4. Extract

텍스트 추출은 생성 LLM을 활용할 수 있는 또 다른 사용 사례 카테고리입니다. 이는 긴 텍스트를 가져와서 그 텍스트에서만 주요 정보나 단어를 추출하는 것이 핵심 아이디어입니다.

다음은 계약서에서 관련 정보를 추출하는 작업입니다. 우리는 이 작업에 대한 짧은 맥락으로 프롬프트를 준비하고, 그 다음으로 몇 가지 예시 계약서와 추출된 텍스트를 제공합니다.

예를 들어, 우리는 다음과 같이 프롬프트를 설정할 수 있습니다:

[맥락]
이 작업은 계약서에서 필요한 키 정보를 추출하는 것입니다.

[예시 1]
계약서: 이 계약은 2023년 7월 28일에 홍길동(이하 “판매자”)과 이몽룡(이하 “구매자”) 사이에 체결되었습니다. 판매자는 구매자에게 1000개의 제품을 10,000달러에 판매할 것을 동의합니다. 제품은 2023년 8월 1일에 배송됩니다.

추출된 정보:

  • 계약일: 2023년 7월 28일
  • 판매자: 홍길동
  • 구매자: 이몽룡
  • 제품 수량: 1000개
  • 가격: 10,000달러
  • 배송일: 2023년 8월 1일

이 프롬프트를 통해, LLM은 주어진 계약서 텍스트에서 필요한 정보를 어떻게 추출하는지를 배울 수 있습니다. 그런 다음, 비슷한 맥락을 가진 새로운 계약서에 이를 적용할 수 있습니다.

이 범주에 포함되는 다른 사용 사례들은 다음과 같습니다:

  • 문서에서 명명된 엔티티 추출하기: 이를 통해 특정 문서에서 사람, 조직, 위치 등의 이름이나 날짜와 같은 중요한 정보를 찾을 수 있습니다.
  • 기사에서 키워드와 핵심 구문 추출하기: 이렇게 하면 어떤 기사가 어떤 주제에 관한 것인지 빠르게 파악하고, 검색 엔진 최적화(SEO)에 유용한 키워드를 발견할 수 있습니다.
  • 개인 식별 정보 플래그 달기: 특정 텍스트에서 개인 식별 정보가 포함되어 있는지를 식별하고 이를 플래그하여 개인정보 보호와 관련된 준수 사항을 지킬 수 있습니다.
  • 공급자와 계약 조건 추출하기: 공급 계약서에서 공급자 이름, 제품 또는 서비스 세부사항, 가격, 배송 기간 등의 중요한 계약 조건을 빠르게 찾을 수 있습니다.
  • 블로그에 태그 만들기: 블로그 포스트의 내용을 분석하여 관련된 키워드 또는 주제 태그를 생성할 수 있습니다. 이는 사용자가 관심 있는 주제를 더 쉽게 찾을 수 있게 도와줍니다.

결론


이 시리즈의 두 번째 부분에서는 나머지 세 가지 사용 사례 카테고리(검색/유사도, 클러스터, 분류)에 대해 계속해서 살펴볼 예정입니다. 또한 LLM API가 보다 복잡한 사용 사례를 어떻게 해결할 수 있는지에 대해서도 탐구할 것입니다. 세상은 복잡하고, 많은 문제들은 여러 NLP 모델들을 조합함으로써만 해결할 수 있습니다. 우리는 더 완벽한 해결책을 구축하기 위해 API 엔드포인트 조합을 어떻게 빠르게 결합할 수 있는지에 대한 몇 가지 예시를 살펴볼 것입니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다