
GPTwitter: 최초의 개인화된 AI 생성 소셜 미디어 플랫폼
요약
GPTwitter는 사용자의 '좋아요' 이력을 학습하여 개인화된 트윗을 생성하는 AI 기반 소셜 미디어 플랫폼입니다. LangChain을 활용하여 사용자의 관심사에 맞춘 콘텐츠를 지속적으로 생성하며, 소셜 미디어의 콘텐츠 고갈 문제를 LLM으로 해결하고자 하는 실험적인 프로젝트입니다.
핵심 포인트
- 사용자의 상호작용(좋아요)을 통해 명시적인 가이드 없이도 개인화된 피드 제공
- LangChain을 기반으로 구축되어 LLM의 자발성, 다양성, 일관성을 조율
- 개별 주제별 생성이 아닌 잠재 공간(latent space)에서의 직접 샘플링 방식 채택
- 콘텐츠의 무한한 생성 가능성을 제시하지만, 필터 버블(Filter Bubble) 심화 위험성 존재
[편집자 주]: 이것은 앞으로 많이 이어지기를 바라는 첫 번째 게스트 포스트입니다. 우리는 LangChain을 기반으로 구축된 참신한 애플리케이션들을 조명하고자 합니다. 이러한 포스트를 위해 저희와 함께 작업하는 것에 관심이 있다면 harrison@langchain.dev로 연락해 주세요.
Akash Samant가 작성한 이 포스트는 우리가 참신하고, 재현 가능하며, 아직 충분히 탐구되지 않은 방식으로 사용자 수준의 개인화(Personalization)를 달성했다고 믿는 애플리케이션을 소개합니다.
GPTwitter: 최초의 개인화된 AI 생성 소셜 미디어 플랫폼. 여기서 접속하세요: https://gptwitter-neon.vercel.app/
요즘 모든 사람의 미디어 피드(Media feed)는 개인적인 거품(Personal bubble)처럼 느껴집니다. 여러분의 피드는 아마도 여러분이 즐길 만하다고 생각하는 모든 주제, 대중문화 참조, 또는 온라인 인물들로 구성되어 있을 것입니다. 그리고 여러분은 그것을 즐기고 있을 것입니다 (아마도요). 하지만 이 모든 콘텐츠는 제한적입니다. 그것은 유한하며, 만약 여러분이나 제가 팔로우하는 모든 사람이 갑자기 게시물을 올리는 것을 중단한다면 어떻게 될까요? 저는 휴대폰을 내려놓고 영향을 받지 않은 다른 것을 집어 들기를 희망하겠지만, 제가 정말 그렇게 할 수 있을지는 모르겠으며, 여러분 대부분도 그럴 수 있을지 확신할 수 없습니다.
지난 한 주 동안, Sean, Bagatur, 그리고 저는 이러한 "종말론적" 시나리오와 우리가 거대 언어 모델 (LLMs)을 통해 이를 해결하기 위해 무엇을 할 수 있을지에 대해 고민해 왔습니다. 제 말은, 만약 Elon Musk가 게시물을 올리지 않는다면, GPT-3 정도면 충분할 것이라는 뜻입니다! 우리는 특히 명시적인 개인적 가이드 없이도 여러분의 상호작용으로부터 학습하고, 여러분의 피드에서 볼 법한 트윗들을 생성하는 경험을 만드는 데 관심을 가져왔습니다. 우리의 반(半)디스토피아적인 숙고의 결과물인 GPTwitter를 소개하게 되어 기쁩니다.
GPTwitter란 무엇인가?
GPTwitter는 여러분의 '좋아요' 이력을 학습하여 오직 여러분만을 위한 개인화된 트윗을 생성하는 소셜 미디어 플랫폼입니다. 이를 통해 여러분은 소셜 미디어 거품의 안전함을 결코 떠날 필요가 없습니다.
로그인하면 트윗을 생성하고, '좋아요'를 누르고, 공유할 수 있습니다. 여러분이 저희 트윗 중 하나에 '좋아요'를 누르면, 저희는 향후 생성될 트윗들을 여러분의 관심사에 좀 더 구체적으로 맞춤화하도록 하겠습니다. 하지만 주의하세요 – 동일한 트윗과 주제의 끝없는 소용돌이(rabbit hole)에 빠지게 될 수도 있습니다.
여러분이 즐길 만한 내용일 가능성이 높으니 걱정하지 마세요. 하지만 만약 탈출하고 싶다면, 그저 리셋 버튼을 누르기만 하면 됩니다. 다만, 리셋한 후에 조금 슬퍼질 수도 있습니다.
진지하게, 우리는 무엇을 배웠을까요?
창의적인 목적으로 LLM (Large Language Models)을 사용하는 것은 기능적이고 실용적인 목적으로 사용하는 것과는 매우 다릅니다. 이는 자발성(spontaneity), 다양성(diversity), 그리고 일관성(consistency)을 요구하는데, 이 세 가지는 모델 출력물에서 깔끔하게 조화를 이루기 어려운 요소들입니다. Langchain AI를 사용하여 GPTwitter로 진행한 저희의 실험은 이 각각의 요소들을 중심으로 이루어졌으며, 그 결과를 여러분과 공유하고자 합니다.
#1: 모든 것은 잠재 공간 (latent space)에 있습니다
초기에 저희는 개별적인 주제와 스타일로부터 트윗을 생성하는 조각조각의(piecemeal) 방식들을 폐기하기로 결정했습니다. 그러한 방식들은 생성된 트윗들 사이에 상관관계가 거의 없는 터무니없는 결과로 이어지는 경우가 많았습니다. 대신, 저희는 잠재 공간 (latent space)에서 직접 샘플링하기로 결정했습니다. GPTwitter를 구축할 때 사용한 프롬프트 (prompts)는 이전에 생성된 트윗의 텍스트만을 사용하여 새로운 트윗을 생성합니다. 저희도 결과가 어떨지 확신할 수 없었습니다. 결정은 여전히 여러분의 몫이지만, 트윗을 독특하게 만드는 모든 요소들—길이, 참조 스타일, 주제, 해시태그 사용, 어조 등—이 GPT-3에 의해 얼마나 일관되게 추론되는지를 보고 저희는 기분 좋은 놀라움을 경험했습니다.
구체적으로, LangChain 용어를 사용하여, 저희는 확률적으로 예시 트윗을 선택하는 커스텀 예시 선택기 (custom example selector)를 사용하여 이를 달성했습니다. 사용자의 초기 프로필은 각각 연관된 가중치 (weight)를 가진 100개의 트윗으로 시드 (seed)가 설정됩니다. 생성되는 각 트윗에 대해, 가중치에 비례하는 확률로 특정 제한된 수(2~5개)의 트윗이 선택됩니다. 만약 생성된 트윗이 '좋아요'를 받으면, 해당 트윗을 선택 가능한 트윗 목록에 추가하고, 그 트윗을 생성하는 데 사용되었던 트윗들의 가중치를 높입니다. 이러한 방식으로, 예시 선택기는 시간이 지남에 따라 사용자가 과거에 좋아했던 것들을 (어떤 방식으로든) 더 잘 나타내는 트윗들을 선택하게 됩니다.
여담으로, 모든 것을 잠재 공간 (latent space)에서 처리하기로 결정하기 전에, 저희는 예시 트윗의 스타일과 콘텐츠를 명시적으로 지정함으로써 더 통제된 방식으로 트윗을 생성하는 실험을 진행했습니다. 일반적으로 모델에 입력하는 데이터가 어떤 방식으로든 제한되었을 때 가장 좋은 결과가 나타났습니다. 예를 들어, 사용된 참조 트윗들이 스타일이나 주제 면에서 유사하거나, 혹은 제한된 수(2~5개)의 트윗만을 사용했을 때 그러했습니다. 이러한 시나리오에서 거대언어모델 (LLM)은 주제와 스타일을 흥미로운 조합으로 엮어내며, 패턴을 더 쉽게 추론하고 식별할 수 있었습니다.
가장 좋은 결과 중 일부는 <백 투 더 퓨처 (Back to the Future)>를 언급하는 이 트윗처럼 대중문화 참조를 섞었을 때 나타났습니다.
제어 장치가 없는 경우, 저희는 매우 불규칙하고 터무니없는 결과들을 발견했습니다. 일반적으로 서로 말이 되지 않는 주제들을 뒤섞는 식이었습니다.
이러한 문제들은 저희가 더 실험해보고 싶어 하는 영역들을 강조해 줍니다. 구체적으로는, 더 일관된 (more consistent) 결과를 생성하기 위해 더 큰 규모의 참조 데이터 코퍼스 (corpuses)를 활용하는 것입니다.
#2: 환각 (Hallucinations)은 유용할 수 있다
우리가 LLM의 일관성 (consistency)을 비판했음에도 불구하고, 우리는 환각 (hallucinations)과 LLM의 불일치성이 출력물과 다양성을 만들어내는 흥미로운 원천이라는 것을 발견했습니다. 넓게 말하자면, 환각은 사실적인 정보로서 유용하지 않기 때문에 대부분의 애플리케이션에서는 유용하지 않으며, 따라서 이를 제한하려는 우려를 이해합니다.
GPTwitter가 사실 기반 사이트가 아니라는 점은 다행스러운 일인데, 우리는 모델의 온도 (temperature)를 1.0까지 최대한 높였기 때문입니다. 이는 출력 분산 (output variance)을 개선하기 위한 표준적인 기술이며, 이전 트윗들로부터 참신한 생성물을 만들어내는 데 효과적이었습니다.
다음은 GPT-3가 세금과 암호화폐 (crypto)에 관한 트윗들로부터 응답을 만들어낸 훌륭한 예시입니다:
일반적으로 우리는 환각이 충분히 활용되지 못하고 있다고 생각합니다. 환각은 LLM이 창의적인 출력 능력을 갖추고 있음을 나타내며, 창의적인 워크플로우 (workflows)에서는 믿을 수 없을 정도로 유용할 수 있습니다. 우리가 직면했던 문제 중 하나는 더 가치 있는 환각, 즉 더 높은 분산과 더 높은 품질의 트윗을 더 높은 빈도로 생성하는 것이었습니다. 우리의 절충안은 선택 프로세스 (selection process)를 강화하는 것이었지만, 아직 모든 옵션을 탐색했거나 이상적인 솔루션에 도달한 것은 아닙니다. 우리는 다른 문제 해결 영역에서 사용되는 사고의 사슬 (chains of thought)을 창의적인 프로세스에 맞게 조정하여 유도하는 것이 향후 살펴볼 흥미로운 경로가 될 수 있다고 생각합니다.
마치며
우리는 GPTwitter를 구축하며 즐거운 시간을 보냈으며, 여러분도 우리만큼 즐기시기를 바랍니다.
LLM 기술이 발전함에 따라 진행되고 있는 모든 변화를 생각하면 매우 흥분됩니다. 우리는 개인의 창의적인 프로세스를 증강하고 개선하기 위해 LLM의 응용 분야를 계속해서 실험할 것입니다. Twitter에서 Bagatur, Sean 또는 Akash를 찾아보실 수 있습니다.
우리가 생성된 영감을 주는 트윗 중 가장 좋아했던 것 하나를 아래에 남기며 마치겠습니다:
AI 자동 생성 콘텐츠
본 콘텐츠는 LangChain Blog의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기