TL;DR
- MySky는 독립 피드 개발자도 고도화된 개인화 추천을 활용하도록 60,000명 이상의 일간 활성 사용자를 보유한 피드와 오픈소스 인프라, API를 제공함.
- MySky 피드에서는 후보 수집부터 점수 산정과 재정렬까지 추천 파이프라인을 확인하고 조정할 수 있음.
- 추천 점수는 참여도와 건설성을 기본적으로 같은 비중으로 반영하며, 건설성 중심 추천은 정서적 양극화를 측정 가능하게 줄임.
- 오픈 인프라는 후보 생성기, 신호 생성기, 점수 산정, 재정렬로 구성되며, 개발자는 전체 스택을 직접 운영하거나 MySky API를 호출할 수 있음.
- MySky는 동의를 바탕으로 피드 실험을 진행하고 결과를 오픈 액세스 학술지에 공개할 계획임.
누구나 소셜 미디어 알고리즘을 만들 수 있다면
- 소셜 미디어의 역사에서 일관된 점은 플랫폼이 무엇을 볼지 결정한다는 점임. 사용자는 팔로우, 뮤트, 좋아요, 차단을 할 수 있지만 정보 환경을 실제로 구성하는 시스템은 대부분 손이 닿지 않는 영역임.
- Atproto는 이 구도를 일부 바꿔 누구나 새 알고리즘을 배포할 수 있게 했으며, 현재 BlueSky와 다른 atproto 클라이언트에서 수천 개의 피드를 이용할 수 있음.
- 그러나 독립 피드 개발자가 최첨단 개인화 추천을 구축하고 운영하기는 여전히 어려우며, 특히 대형 플랫폼이 가진 인프라와 머신러닝 자원이 없을 때 부담이 큼.
- 이전에 GreenEarth로 알려진 MySky는 최첨단 개인화 피드 기술을 누구나 이용하도록 하는 프로젝트임. 오늘 바로 사용할 수 있는 피드, 직접 운영할 수 있는 오픈소스 인프라, 최신 추천 시스템의 핵심 작업을 처리하는 API를 제공하는 것이 목표임.
오늘 바로 사용할 수 있는 피드
- MySky는 Bluesky에서 실행되는 알고리즘 피드이며, 설정 패널에서 실제 실행되는 전체 순위 산정 파이프라인을 확인할 수 있음. 현재 일간 활성 사용자는 60,000명 이상임.
- 대부분의 추천 시스템은 여러 단계로 작동함. 먼저 플랫폼의 수백만 게시물을 수천 개의 ‘가능성 있는’ 게시물로 줄이고, 다음으로 가치 기준에 따라 순위를 매긴 뒤, 동일 인물이나 주제가 피드를 장악하지 않도록 조정함.
- 이러한 선택은 보통 플랫폼 내부 로직에 깊이 묻혀 있지만, MySky에서는 설정 패널에 표시됨.
- 파이프라인의 모든 단계는 조정 가능함. 후보 게시물은 팔로우하는 사람, 그 사람들이 좋아요를 누른 게시물, 이전에 관심을 보인 작성자와 주제, 네트워크 전반의 인기 게시물에서 가져올 수 있음.
- 후보 게시물은 두 가지 기준으로 점수를 받음.
- 참여도: 게시물에 좋아요를 누르거나 공유하거나 댓글을 달 가능성임.
- 건설성: 숙고된 논증, 개인적 경험, 호기심, 존중, 차이를 넘어 소통하려는 진정성 있는 시도를 보여주는지에 관한 기준임.
- 건설성은 ‘브리징(bridging)’으로 불리며, Prosocial Ranking Challenge에서 브리징 피드가 정서적 양극화를 측정 가능하게 줄인다는 점을 보였음.
- 참여도와 건설성은 기본적으로 같은 비중으로 반영되지만, 설정은 불투명하거나 고정되어 있지 않음. 건설성 비중을 낮추면 기존 참여도 순위 피드에 가까워지고, 참여도 비중을 낮추면 콘텐츠 자체의 특성을 중심으로 순위를 매길 수 있음.
- ‘내가 이 게시물을 보는 이유’ 패널은 각 게시물의 출처와 순위 산정 및 다양성 요소가 피드 내 위치에 기여한 정도를 보여줌.
개방형 피드 인프라
- MySky 자체는 하나의 피드지만, 프로젝트의 핵심은 오픈소스 인프라임. 알고리즘 소셜 추천을 다양한 방식으로 활용하려는 여러 프로젝트를 지원하도록 구성 가능한 추천 아키텍처를 구축함.
- 이 아키텍처는 대형 플랫폼에서 검증된 프로덕션 파이프라인을 일반화한 구조임.
- 후보 생성기(candidate generators): 팔로우하는 사람의 게시물, 이전에 좋아요를 누른 주제 검색, 인기, 벡터 유사도 등 서로 다른 방법으로 임의로 큰 데이터에서 관련 가능성이 있는 수백 개 항목을 선택함. 검색 엔진 및 벡터 데이터베이스 기술을 기반으로 함.
- 신호 생성기(signal generators): 각 후보의 하나 이상의 속성에 점수를 매김. 참여도 예측기는 특정 사용자가 좋아요, 답글, 팔로우 등을 할 확률을 출력하는 표준 투타워 모델이며, 곧 게시물과 프롬프트를 입력해 관련성 점수를 산출하는 대형 언어 모델(LLM) 채점기가 추가될 예정임. 이를 통해 사용자가 원하는 피드를 자신의 말로 설명할 수 있음.
- 점수 산정(scoring): 신호를 게시물별 단일 점수로 결합하며, 가중치는 조정 가능함.
- 재순위화(re-ranking): 동일 작성자의 게시물이 반복되거나 피로감을 주는 뉴스 흐름이 피드 전체를 차지하지 않도록 순서를 조정해 적절한 구성을 유지함.
- 전체 아키텍처와 그 근거는 [여기]( )에 설명되어 있음. 모든 구성 요소가 오픈소스이므로 수집 및 색인 서비스, 참여도 예측 모델, 피드 정의를 포함한 전체 스택을 살펴볼 수 있음.
오늘 호출할 수 있는 API
- 직접 구축하려는 개발자는 오픈 스택 전체를 운영할 수 있음. 다만 Atmosphere의 모든 게시물을 실시간으로 지속해서 수집·분석·색인해야 하며, 비용은 월 수천 달러에 이름.
- 이에 따라 대부분의 개발자에게는 MySky API로 시작하는 방식을 권장함.
- 주요 엔드포인트는 다음과 같음.
- 후보 가져오기:
POST /candidates/generate는 이름이 지정된 후보 생성기에서 게시물의 가중 혼합을 반환함. 팔로우하는 사람의 게시물, 인기 게시물, 관심사와 유사한 게시물 등이 포함되며,GET /candidates/generators에서 후보 생성기 목록을 확인할 수 있음. 반환되는 후보 게시물은 상세 정보가 채워진 상태이며at_uri, 텍스트 콘텐츠, 작성자, 참여 수치, 텍스트 콘텐츠의 MiniLM 임베딩을 포함함. - 순위 산정:
POST /rank/predict는 후보 게시물 ID 집합을 받아 학습된 모델로 각각 점수를 매기고, 호출자가 제공한 가중 평균으로 점수를 결합함. 모델은GET /rank/models에서 확인할 수 있음. 현재 MySky에는 참여도 예측기와 건설성 순위 산정기가 포함되며, 응답은 게시물 ID의 순위 목록임. - 다양화:
POST /diversify는 순위 목록을 재정렬해 한 사람이나 대화가 피드 전체를 지배하지 않도록 함. 고전적인 MMR 알고리즘을 사용하며, 반복 작성자와 주제에 별도의 페널티를 적용함. - 고정된 피드 알고리즘이 아니라 특정 애플리케이션에 맞게 사용자화할 수 있는 구성 요소 시스템임. 후보 생성기, 프롬프트, 점수 가중치, 재순위화 규칙은 다양한 결과물을 만들 수 있는 설계 공간임.
오픈 과학
- MySky는 공개 연구도 지원하도록 설계됨. 상업 플랫폼은 사용자에게 알리거나 결과를 공유하지 않은 채 지속해서 실험을 진행함.
- MySky도 실험을 진행하되 동의를 바탕으로 하며, ‘중독성을 유발하지 않으면서도 참여를 이끌어내는 피드를 만들 수 있는가?’와 같은 질문을 다룰 계획임.
- atproto 커뮤니티 구성원을 실험 설계와 분석에 초대하고 결과를 오픈 액세스 학술지에 공개할 예정임.
참여하기
- 가치 중립적인 알고리즘은 없음. 모든 피드는 이미 선택을 내리고 있으며, MySky는 그 선택을 투명하고 변경 가능하게 만들고 기본적으로 건설성을 반영함.
- 피드를 사용하고 슬라이더를 조정하거나 API를 호출하고, 아키텍처 글과 코드를 살펴본 뒤 Discord에 참여해 팀과 대화할 수 있음.
- 알고리즘에 무엇을 하도록 요청할지 의견을 요청함.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요