Docs Menu
Docs Home
/

GenAI 기반 동영상 요약

대규모 언어 모델(LLM) 및 시맨틱 검색 사용하여 YouTube 트랜스크립션 및 요약 서비스를 구축하세요.

사용 사례: Gen AI

산업: 미디어

제품: MongoDB Atlas, MongoDB Atlas Vector Search

파트너: LangChain

YouTube와 같은 플랫폼에 있는 정보 콘텐츠는 양과 다양하므로 관련 동영상을 빠르게 찾고 이를 텍스트로 변환하고 요약할 수 있는 기능은 지식 수집에 중요합니다.

이 솔루션은 YouTube 동영상을 텍스트로 변환하고 요약하기 위한 생성형 인공지능 기반 동영상 요약 앱 빌드합니다. 이 애플리케이션 비디오-텍스트 생성 및 시맨틱 검색을 위해 Atlas Vector Search 와 함께 LLM 및 벡터 임베딩을 사용합니다. 이 접근 방식은 소프트웨어 개발과 같은 산업에 도움이 될 수 있으며, 이 산업에서는 전문가가 Gen AI 동영상 요약을 통해 기술을 더 빠르게 학습 수 있습니다.

MongoDB 없는 비디오 요약 도구는 다음 워크플로를 사용합니다.

MongoDB가 없는 참조 아키텍처

그림 1. MongoDB가 없는 참조 아키텍처

이 솔루션은 MongoDB 에서 다음 아키텍처를 사용합니다.

MongoDB가 있는 참조 아키텍처

그림 1. MongoDB가 있는 참조 아키텍처

먼저, 솔루션은 YouTubeLoader를 사용하여 YouTube 링크를 프로세스 하고 동영상 메타데이터 및 스크립트를 가져옵니다. 그런 다음 Python 스크립트 LLM을 사용하여 동영상 스크립트를 가져와 요약합니다.

그런 다음 Voyage AI 임베딩 모델은 요약된 트랜스크립트를 MongoDB Atlas 에 저장되는 임베딩으로 변환합니다. 또한 OCR(광학 문자 인식) 및 AI 비디오 프레임에서 직접 실시간 코드 분석을 수행하여 AI 기반 설명과 함께 검색 가능한 텍스트 기반 버전의 비디오 정보를 생성합니다.

이 솔루션은 처리된 이 데이터를 MongoDB Atlas 의 문서에 저장하며, 여기에는 비디오 메타데이터, 해당 스크립트, AI 생성 요약이 포함됩니다. 그런 다음 사용자는 MongoDB Atlas Vector Search를 사용하여 이러한 문서를 검색 할 수 있습니다.

다음 코드 차단 이 솔루션으로 생성된 문서의 예시 입니다.

{
"videoURL": "https://youtu.be/exampleID",
"metadata":{
"title": "How to use GO with MongoDB",
"author": "MongoDB",
"publishDate": "2023-01-24",
"viewCount": 1449,
"length": "1533s",
"thumbnail": "https://exmpl.com/thumb.jpg"
},
"transcript": "Full transcript…",
"summary": "Tutorial on using Go with MongoDB.",
"codeAnalysis": [
"Main function in Go initializes the MongoDB client.",
"Imports AWS Lambda package for serverless architecture."
]
}

각 YouTube 동영상에서 추출된 데이터는 다음과 같이 구성됩니다.

  • videoURL: YouTube 동영상으로 바로 연결되는 링크입니다.

  • metadata: 제목, 업로더, 날짜 등의 동영상 세부 정보입니다.

  • transcript: 동영상에서 음성 콘텐츠의 텍스트 표현입니다.

  • summary: AI 가 생성한 간결한 스크립트 버전입니다.

  • codeAnalysis: AI 분석 코드 예시 목록입니다.

이 솔루션의 코드는 GitHub 리포지토리에서 확인할 수 있습니다. 다음 절차를 안내하는 보다 구체적인 지침을 보려면 README 를 따르세요.

1

LangChain, JSON, pymongo 및 기타 도메인 또는 서비스별 라이브러리를 포함한 모든 필수 라이브러리를 설치합니다.

2

OpenAI API 키와 MongoDB Atlas 연결 세부 정보를 config.ini 파일 에 추가합니다. 그런 다음 다음 명령을 실행 지정된 YouTube 동영상에 대한 텍스트 변환을 생성합니다.

python main.py --youtube https://www.youtube.com/watch?v=sample_id
3

YouTube 로더는 메타데이터 와 스크립트를 가져옵니다. 요약 프로세스 오류가 발생하면 오류가 포착되어 해당 동영상의 요약 필드 에 저장됩니다.

4

동영상 요약을 포함하여 컴파일된 데이터는 JSON 형식으로 직렬화되어 video_transcript_<index>.json라는 이름의 개별 파일에 저장됩니다.

5

요약된 트랜스크립트를 Vector Search를 위한 임베딩으로 변환하고 이를 MongoDB Atlas 에 저장 .

Atlas Vector Search 사용하고 인덱스 만드는 방법을 학습하려면 MongoDB 벡터 검색 빠른 시작을 참조하세요.

다음 그림은 Vector Search 인덱스 생성할 때 사용할 수 있는 매개변수 값을 보여줍니다.

MongoDB가 있는 참조 아키텍처

그림 3. 벡터 검색을 통해 MongoDB Atlas에 데이터 저장

6

이 솔루션은 오케스트레이션 계층 을 사용하여 솔루션의 다양한 서비스를 조정하고 복잡한 워크플로를 관리 . 오케스트레이션 계층은 솔루션의 GitHub 리포지토리에서 찾을 수 있는 다음 클래스로 구성됩니다.

  • VideoServiceFacade: VideoService, SearchService, VideoProcessResult 클래스의 코디네이터 역할을 합니다. 이 시스템은 스크립트 생성 및 요약에 대한 사용자 프롬프트와 요청을 처리합니다.

  • VideoService: 스크립트 요약을 수행합니다.

  • VideoProcessResult: 메타데이터, 가능한 조치, 최적의 검색 쿼리 를 포함하여 처리된 동영상 결과를 캡슐화합니다.

  • SearchService: MongoDB Atlas 에서 검색 수행합니다.

7

다음 명령을 실행하여 벡터화된 정보를 쿼리 .

python main.py --searchFor "your_search_query_here"
  • 언어 검색 지원하는 Atlas Vector Search: 이 솔루션은 Atlas Vector Search 에서 벡터 인덱스를 생성 및 저장하고, LLM에서 생성된 임베딩 및 출력을 MongoDB Atlas 에 저장합니다. 이를 통해 사용자는 한 플랫폼에서 정확히 일치하는 키워드가 없을 수 있는 관련성이 있고 이전에는 구조화되지 않은 정보를 검색 할 수 있습니다.

  • LangChain은 AI 기반 애플리케이션을 용이하게 합니다: LangChain은 MongoDB 와 원활하게 통합되어 강력한 AI 기반 플랫폼을 구축합니다.

  • Fabio Falavinha, MongoDB

  • David Macias, MongoDB

  • 시맨틱 비디오 검색으로 미디어 경험 향상

  • 생성형 인공지능을 사용한 텍스트-오디오 뉴스 변환

  • MongoDB와 벡터 검색을 통한 AI 기반 미디어 개인화

돌아가기

Gen AI 사용한 편집 워크플로

이 페이지의 내용