KR102801836B1 - Method and apparatus for automatically generating enterprise-related videos that reflects references and recommends expression - Google Patents
Method and apparatus for automatically generating enterprise-related videos that reflects references and recommends expression Download PDFInfo
- Publication number
- KR102801836B1 KR102801836B1 KR1020240116580A KR20240116580A KR102801836B1 KR 102801836 B1 KR102801836 B1 KR 102801836B1 KR 1020240116580 A KR1020240116580 A KR 1020240116580A KR 20240116580 A KR20240116580 A KR 20240116580A KR 102801836 B1 KR102801836 B1 KR 102801836B1
- Authority
- KR
- South Korea
- Prior art keywords
- video
- content
- information
- corporate
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/732—Query formulation
- G06F16/7343—Query language or query format
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/738—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26603—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for automatically generating descriptors from content, e.g. when it is not made available by its provider, using content analysis techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Tourism & Hospitality (AREA)
- Life Sciences & Earth Sciences (AREA)
- Economics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
동영상 자동 생성 장치의 동작 방법은, 기업 컨텐츠를 수신하는 단계; 상기 기업 컨텐츠로부터 기업 데이터를 추출하는 단계; 사용자 쿼리를 수신하고 쿼리 데이터를 추출하는 단계; 사용자의 과거 행동 데이터를 추출하는 단계; 및 상기 기업 데이터를 입력으로 학습된 동영상 생성 모델을 이용하여, 상기 쿼리 데이터 및 상기 과거 행동 데이터에 기초하여, 참조 동영상 정보를 생성하여 사용자 디바이스로 송신하는 단계를 포함할 수 있다.The operating method of the automatic video generation device may include: a step of receiving corporate content; a step of extracting corporate data from the corporate content; a step of receiving a user query and extracting query data; a step of extracting past behavioral data of the user; and a step of generating reference video information based on the query data and the past behavioral data using a video generation model learned with the corporate data as input, and transmitting the generated reference video information to a user device.
Description
본 개시의 다양한 실시예들에 따르면, 기업 정보에 기초한 기업 관련 동영상 자동 생성 방법 및 장치가 개시된다. 나아가 본 개시의 다양한 실시예들에 따르면 사용자가 제공하는 레퍼런스를 영상 생성에 반영하고, 표현 방식을 추천하여 기업 영상을 생성하는 방법 및 장치가 개시된다.According to various embodiments of the present disclosure, a method and device for automatically generating a corporate video based on corporate information are disclosed. Furthermore, according to various embodiments of the present disclosure, a method and device for generating a corporate video by reflecting a reference provided by a user in video generation and recommending an expression method are disclosed.
현대 사회에서는, 스마트 디바이스의 보급으로 인해, 정보의 소비 방식이 변화하고 있다. 특히, 기업의 대상 소비자나 기업의 근로자들의 주의력이 점차 감소함에 따라, 긴 글 형태의 텍스트 컨텐츠나, 재생 시간이 긴 동영상 컨텐츠와 같은 경우, 선호도가 많이 떨어지고 있으며, 예를 들어, 숏폼(Short-form)과 같은 재생 시간이 짧은 동영상 컨텐츠의 선호도가 증가하고 있다.In modern society, the way information is consumed is changing due to the spread of smart devices. In particular, as the attention span of target consumers and employees of companies gradually decreases, preference for long text content or long-running video content is decreasing significantly, and preference for short-form video content with short run times is increasing.
이처럼, 개인의 정보 소비 방식이 변화함에 따라, 기업의 비즈니스 활동에도 변화가 요구되고 있다. 기업들은, 빠르게 변화하는 시장/경제/규제 속에서, 소비자나 근로자와 같은 개인과 빠른 의사소통 및 의사 결정을 위해, 효과적으로 소통하거나 정보를 개인에게 인지시킬 수 있는 핵심적인 영상을 제작하여 배포할 것이 요구되는 실정이다.In this way, as the way individuals consume information changes, changes are also required in the business activities of companies. In a rapidly changing market/economy/regulation, companies are required to produce and distribute core videos that can effectively communicate or inform individuals of information in order to quickly communicate and make decisions with individuals such as consumers or workers.
현대 사회의 기업들은, 방대한 양의 기업 정보를 가지고 있으므로, 빠르게 변화하는 시장 상황 속에서, 기업 정보를 효과적으로 반영하여 기업의 비즈니스 특성에 상응하는 영상을 자동으로 생성하는 인공지능(AI) 시스템이 요구되고 있는 실정이다.In modern society, companies have a vast amount of corporate information, so in rapidly changing market conditions, an artificial intelligence (AI) system that effectively reflects corporate information and automatically generates images that match the characteristics of the company's business is required.
상술한 정보는 본 개시에 대한 이해를 돕기 위한 목적으로 하는 배경 기술(related art)로 제공될 수 있다. 상술한 내용 중 어느 것도 본 개시와 관련된 종래 기술(prior art)로서 적용될 수 있는지에 대하여 어떠한 주장이나 결정이 제기되지 않는다.The above information may be provided as related art for the purpose of assisting in understanding the present disclosure. No claim or determination is made as to whether any of the above is applicable as prior art related to the present disclosure.
인공지능 기반의 영상 생성 기술은 최근 획기적으로 발전되어 별다른 양식없이 자연어 형태의 요청 사항을 전달하면, 동영상 생성 파운데이션 모델이 요청사항을 반영하여 영상을 생성할 수 있다. AI-based video generation technology has recently made groundbreaking progress, so that if you send a request in natural language without any special format, the video generation foundation model can generate a video by reflecting the request.
그러나 실무에서는 파운데이션 모델로 생성된 영상을 바로 비즈니스에 적용하기보다는 추가적인 검토, 편집, 맞춤화 과정이 필요한 경우가 많다. 이는 파운데이션 모델이 비즈니스 특정 컨텍스트나 전문 지식의 반영이 부족하거나 특정 비즈니스 요구사항에 맞게 세밀하게 조정하기 어렵기 때문이다. 예를 들어 특정 기업의 광고 영상을 생성하는 경우, 광고 영상에는 기업의 고유한 브랜드 특성이 반영되어야 하고, 기업이 원하는 톤앤매너, 비주얼 스타일이 적용되어야 하는데 이러한 사항을 파운데이션 모델에 모두 지정할 수 없기 때문이다. However, in practice, rather than directly applying the video created with the foundation model to the business, additional review, editing, and customization processes are often required. This is because the foundation model lacks reflection of business-specific context or expertise, or is difficult to fine-tune to specific business requirements. For example, when creating an advertising video for a specific company, the advertising video must reflect the company's unique brand characteristics, and the company's desired tone, manner, and visual style must be applied, but these cannot all be specified in the foundation model.
특히 기업 영상에서, 각기 다른 비즈니스 도메인(예: 보험, 금융, 의료, IT 등)에 맞춘 특화된 메시지 전달이 요구된다. 그러나 각 비즈니스 도메인의 특성을 반영하여 고유한 컨텐츠를 제작하는 것은 전문적인 지식과 기술이 요구되며, 이를 수작업으로 수행하는 데에는 한계가 있다. Especially in corporate videos, specialized message delivery tailored to each business domain (e.g., insurance, finance, medical, IT, etc.) is required. However, producing unique content that reflects the characteristics of each business domain requires specialized knowledge and skills, and there are limits to doing this manually.
아울러, 현대의 기업들은 다양한 형태의 데이터를 생성하고 수집하며, 이러한 데이터들은 텍스트, 이미지, 비디오 등 여러 형태로 존재할 수 있다. 그러나 이러한 다양한 데이터를 종합적으로 처리하고 분석하는 것은 기술적으로 복잡하며, 특히 비즈니스 인텔리전스와 비즈니스 도메인에 맞춘 영상 컨텐츠로 변환하는 과정에서는 더욱 어려운 문제로 작용할 수 있다.In addition, modern companies generate and collect various types of data, and these data can exist in various forms such as text, images, and videos. However, comprehensively processing and analyzing these various data is technically complex, and can be an even more difficult problem in the process of converting them into business intelligence and business domain-specific video content.
또한, 현대의 기업들에게, 영상 컨텐츠 제작 과정에서 사용자가 어떤 표현 방식을 선택해야 할지에 대한 결정은 어려운 문제일 수 있다. 특히, 비즈니스 인텔리전스나 비즈니스 도메인에 맞춘 정확한 메시지를 전달하려면, 적절한 표현 방식을 선택하는 것이 중요할 수 있다.Also, for modern businesses, deciding which presentation method to use in the video content creation process can be a difficult problem. In particular, choosing the appropriate presentation method can be important in order to convey the right message for business intelligence or business domain.
본 개시의 다양한 실시예들에 따르면, 레퍼런스를 반영하고, 표현 방식을 추천하며, 기업 니즈에 최적화된 영상 컨텐츠를 자동으로 생성함으로써, 기업이 보다 효과적으로 자신의 전문성과 고유성을 전달할 수 있도록 지원하는, 기업 관련 정보에 기초한 기업 관련 동영상 자동 생성 방법 및 장치를 제공하고자 함이다.According to various embodiments of the present disclosure, an object is to provide a method and device for automatically generating a corporate video based on corporate information, which supports a corporate to more effectively convey its expertise and uniqueness by reflecting references, recommending expression methods, and automatically generating video content optimized for corporate needs.
본 개시의 다양한 실시예들에 따르면, 멀티모달리티 검색 기능을 통해 다양한 형태의 데이터를 동시에 분석하고 활용함으로써, 기업에 적합한 영상 컨텐츠를 효율적으로 생성하는, 기업 관련 정보에 기초한 기업 관련 동영상 자동 생성 방법 및 장치를 제공하고자 함이다.According to various embodiments of the present disclosure, an object is to provide a method and device for automatically generating a corporate video based on corporate information, which efficiently generates video content suitable for a corporate entity by simultaneously analyzing and utilizing various forms of data through a multimodality search function.
본 개시의 다양한 실시예들에 따르면, 사용자가 기업 관련 정보에 기초한 기업 관련 영상 컨텐츠를 제작할 때, 기업의 특성과 목표에 부합하는 최적의 영상 표현 방식을 추천해 줌으로써, 그 의도하고자 한 영상의 제작 취지에 부합하면서도 동영상 컨텐츠 제작 시간을 단축하는 데 기여할 수 있는, 기업 관련 정보에 기초한 기업 관련 동영상 자동 생성 방법 및 장치를 제공하고자 함이다.According to various embodiments of the present disclosure, when a user produces corporate video content based on corporate information, an optimal video expression method that matches the characteristics and goals of the company is recommended, thereby contributing to shortening the video content production time while matching the intended production purpose of the video, thereby providing a method and device for automatically producing a corporate video based on corporate information.
다만, 본 개시에서 해결하고자 하는 과제는 상기 언급된 과제에 한정되는 것은 아니며, 본 개시의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the problem to be solved in the present disclosure is not limited to the problem mentioned above, and may be expanded in various ways without departing from the spirit and scope of the present disclosure.
본 개시의 다양한 실시예들에 따르면, 동영상 자동 생성 장치의 동작 방법은, 기업 정보를 수신하는 단계; 상기 기업 정보로부터 기업 데이터를 추출하는 단계; 사용자 쿼리를 수신하고 쿼리 데이터를 추출하는 단계; 사용자의 과거 행동 데이터를 추출하는 단계; 및 상기 기업 데이터를 입력으로 학습된 동영상 생성 모델을 이용하여, 상기 쿼리 데이터 및 상기 과거 행동 데이터에 기초하여, 참조 동영상 정보를 생성하여 사용자 디바이스로 송신하는 단계를 포함할 수 있다.According to various embodiments of the present disclosure, a method of operating an automatic video generation device may include: receiving corporate information; extracting corporate data from the corporate information; receiving a user query and extracting query data; extracting past behavioral data of the user; and generating reference video information based on the query data and the past behavioral data by using a video generation model learned with the corporate data as input, and transmitting the generated reference video information to a user device.
상기 참조 동영상 정보는, 동영상 템플릿에 대한 정보, 및 동영상 컨텐츠 스타일에 대한 정보를 포함할 수 있다.The above reference video information may include information about a video template and information about a video content style.
상기 참조 동영상 정보는, 샘플 동영상 컨텐츠에 대한 정보를 더 포함할 수 있다.The above reference video information may further include information about sample video content.
상기 쿼리 데이터와 상기 과거 행동 데이터의 유사도가 지정된 임계 값 이상인 경우, 상기 참조 동영상 정보는, 상기 과거 행동 데이터에 포함된 참조 동영상 정보를 포함할 수 있다.If the similarity between the above query data and the above past behavior data is greater than a specified threshold value, the above reference video information may include reference video information included in the above past behavior data.
상기 동영상 자동 생성 장치의 동작 방법은, 상기 쿼리 데이터에 기초하여, 프롬프트를 생성하는 단계; 사용자에 의해 선택된 참조 동영상 정보에 기초하여, 컨텍스트를 생성하는 단계; 및 상기 프롬프트, 상기 쿼리 데이터, 및 상기 컨텍스트에 기초하여, 동영상 스크립트를 생성하는 단계를 포함할 수 있다.The operating method of the above video automatic generation device may include a step of generating a prompt based on the query data; a step of generating a context based on reference video information selected by a user; and a step of generating a video script based on the prompt, the query data, and the context.
동영상 자동 생성 장치의 동작 방법은, 상기 동영상 스크립트에 기초하여, 동영상 컨텐츠를 생성하는 단계; 상기 동영상 컨텐츠롤 사용자 디바이스로 송신하는 단계; 및 사용자에 의해 입력된 완결 정보 또는 수정 정보를 수신하는 단계를 더 포함할 수 있다.The operating method of the automatic video generation device may further include a step of generating video content based on the video script; a step of transmitting the video content to a user device; and a step of receiving completion information or modification information input by the user.
동영상 자동 생성 장치의 동작 방법은, 상기 사용자에 의해 수정 정보를 수신하는 경우, 수정 정보에 기초하여, 동영상 컨텐츠의 객체 정보 및 배경 정보 중 적어도 하나를 수정하여 동영상 컨텐츠를 재생산하여 사용자 디바이스로 송신하는 단계를 더 포함할 수 있다.The operating method of the automatic video generation device may further include, when receiving modification information by the user, a step of modifying at least one of object information and background information of the video content based on the modification information to reproduce the video content and transmitting the reproduced video content to the user device.
동영상 자동 생성 장치는, 적어도 하나의 프로세서; 및 인스트럭션들을 저장하는 메모리를 포함하고, 상기 인스트럭션들은, 상기 적어도 하나의 프로세서에 의해 개별적으로 또는 집합적으로 실행될 때, 상기 프로세서로 하여금: 기업 정보를 수신하고, 상기 기업 정보로부터 기업 데이터를 추출하고, 사용자 쿼리를 수신하고 쿼리 데이터를 추출하고, 사용자의 과거 행동 데이터를 추출하고, 상기 기업 데이터를 입력으로 학습된 동영상 생성 모델을 이용하여, 상기 쿼리 데이터 및 상기 과거 행동 데이터에 기초하여, 참조 동영상 정보를 생성하여 사용자 디바이스로 송신하게 할 수 있다.A video automatic generation device comprises at least one processor; and a memory storing instructions, wherein the instructions, when individually or collectively executed by the at least one processor, cause the processor to: receive business information, extract business data from the business information, receive a user query and extract query data, extract past behavior data of the user, and generate reference video information based on the query data and the past behavior data by using a video generation model learned with the business data as input, and transmit the generated reference video information to a user device.
컴퓨터 프로그램은, 하드웨어와 결합되어, 제1 항 내지 제7 항 중 어느 한 항의 동영상 자동 생성 장치의 동작 방법을 수행하기 위해 컴퓨터 판독 가능한 기록매체에 저장될 수 있다.A computer program may be stored in a computer-readable recording medium to perform the operating method of the automatic video generation device according to any one of claims 1 to 7, in combination with hardware.
동영상 자동 생성 시스템은, 사용자 쿼리를 입력 받는 사용자 디바이스; 및 동영상 자동 생성 장치를 포함하고, 상기 동영상 자동 생성 장치는, 상기 기업 정보로부터 기업 데이터를 추출하고, 사용자 쿼리를 수신하고 쿼리 데이터를 추출하고, 사용자의 과거 행동 데이터를 추출하고, 상기 기업 데이터를 입력으로 학습된 동영상 생성 모델을 이용하여, 상기 쿼리 데이터 및 상기 과거 행동 데이터에 기초하여, 참조 동영상 정보를 생성하여 사용자 디바이스로 송신할 수 있다.The video automatic generation system comprises a user device for inputting a user query; and a video automatic generation device, wherein the video automatic generation device extracts corporate data from the corporate information, receives a user query and extracts query data, extracts past behavior data of the user, and generates reference video information based on the query data and the past behavior data using a video generation model learned with the corporate data as input, and transmits the generated reference video information to the user device.
본 개시의 다양한 실시예들에 따르면, 기업의 비즈니스 인텔리전스 데이터를 기반으로 레퍼런스가 반영되고, 그 기업의 전략적 목표와 일치하는 맞춤형 영상 콘텐츠를 자동으로 생성할 수 있으므로, 기업은 신속하고 일관된 메시지를 전달할 수 있으며, 보다 효과적인 의사소통이 가능해질 수 있다. 또한, 이는 기업의 마케팅 효율성을 높이고, 타겟 소비자에게 강렬한 인상을 남길 수 있는 동영상 컨텐츠를 제공할 수 있다.According to various embodiments of the present disclosure, customized video content that reflects references based on the business intelligence data of the company and matches the strategic goals of the company can be automatically generated, so that the company can deliver messages quickly and consistently and communicate more effectively. In addition, this can increase the marketing efficiency of the company and provide video content that can leave a strong impression on target consumers.
본 개시의 다양한 실시예들에 따르면, 기업의 비즈니스 도메인에 최적화된 표현방식이 추천됨으로써, 기업의 전문성과 신뢰성을 제고할 수 있고, 이에 따라 기업은 비즈니스 도메인의 특성을 반영한 맞춤형 콘텐츠를 손쉽게 제작할 수 있으며, 경쟁력 있는 콘텐츠로 시장에서의 입지를 강화할 수 있다.According to various embodiments of the present disclosure, by recommending an expression method optimized for the business domain of the company, the company's expertise and reliability can be improved, and accordingly, the company can easily produce customized content reflecting the characteristics of the business domain and strengthen its position in the market with competitive content.
본 개시의 다양한 실시예들에 따르면, 텍스트, 이미지, 오디오, 또는 비디오 등 다양한 형태의 데이터를 종합적으로 분석하고 처리할 수 있는 멀티모달리티 검색 기능을 지원함으로써, 방대한 양의 데이터를 효율적으로 활용할 수 있으며, 데이터의 다양한 측면을 반영한 영상 콘텐츠를 생성함으로써 정보 전달의 정확성과 포괄성을 극대화할 수 있다.According to various embodiments of the present disclosure, by supporting a multimodality search function capable of comprehensively analyzing and processing various forms of data such as text, images, audio, or video, a large amount of data can be efficiently utilized, and by generating image content reflecting various aspects of the data, the accuracy and comprehensiveness of information transmission can be maximized.
본 개시의 다양한 실시예들에 따르면, 사용자가 기업 관련 동영상 컨텐츠를 제작할 때, 기업의 비즈니스 인텔리전스 및 비즈니스 도메인에 최적화된 표현 방식을 추천해 줌으로써, 콘텐츠 제작 과정의 효율성을 향상시킬 수 있다. 이에 따라, 본 개시는 사용자가 보다 적은 시간과 노력으로 최적의 동영상 컨텐츠를 제작할 수 있도록 도울 수 있고, 기업의 마케팅 및 커뮤니케이션 전략을 보다 효과적으로 수행할 수 있게 할 수 있다.According to various embodiments of the present disclosure, when a user creates a corporate video content, the efficiency of the content creation process can be improved by recommending an expression method optimized for the corporate business intelligence and business domain. Accordingly, the present disclosure can help the user create optimal video content with less time and effort, and can enable the corporate marketing and communication strategy to be carried out more effectively.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable from the present disclosure are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by a person skilled in the art to which the present disclosure belongs from the description below.
도 1은 본 개시의 다양한 실시예들에 따른, 기업 정보에 기초한 기업 관련 동영상 자동 생성 장치를 설명하기 위한 개념도이다.
도 2는 본 개시의 다양한 실시예들에 따른, 기업 정보에 기초한 기업 관련 동영상 자동 생성 방법을 설명하기 위한 흐름도이다.
도 3은 본 개시의 다양한 실시예들에 따른, 동영상 생성 장치의 구성들을 나타낸 블록도이다.
도 4는 본 개시의 다양한 실시예들에 따른, 동영상 생성 장치의 구성들을 나타낸 블록도이다.
도 5는 본 개시의 다양한 실시예들에 따른 서비스 서버에서 컨텐츠 블록 및 컨텐츠 블록에 대한 캡션을 생성하고, 캡션을 이용하여 사용자 질의에 대한 후보 컨텐츠 블록을 추출하는 방법을 설명하기 위한 순서도이다.
도 7 내지 도 9은, 본 개시의 다양한 실시예들에 따른, 동영상 자동 생성 장치의 동작 방법을 설명하기 위한 흐름도들이다.
도 12은 본 개시의 다양한 실시예들에 따른, 사용자 디바이스를 설명하기 위한 블록도이다.FIG. 1 is a conceptual diagram illustrating a device for automatically generating a corporate-related video based on corporate information according to various embodiments of the present disclosure.
FIG. 2 is a flowchart illustrating a method for automatically generating a corporate-related video based on corporate information according to various embodiments of the present disclosure.
FIG. 3 is a block diagram illustrating configurations of a video generation device according to various embodiments of the present disclosure.
FIG. 4 is a block diagram illustrating configurations of a video generation device according to various embodiments of the present disclosure.
FIG. 5 is a flowchart illustrating a method of generating a content block and a caption for the content block in a service server according to various embodiments of the present disclosure, and extracting a candidate content block for a user query using the caption.
FIGS. 7 to 9 are flowcharts for explaining an operation method of an automatic video generation device according to various embodiments of the present disclosure.
FIG. 12 is a block diagram illustrating a user device according to various embodiments of the present disclosure.
이하에서는 도면을 참조하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 도면의 설명과 관련하여, 동일하거나 유사한 구성요소에 대해서는 동일하거나 유사한 참조 부호가 사용될 수 있다. 또한, 도면 및 관련된 설명에서는, 잘 알려진 기능 및 구성에 대한 설명이 명확성과 간결성을 위해 생략될 수 있다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings so that those skilled in the art can easily implement the present disclosure. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein. In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components. In addition, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and conciseness.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.It should be understood that the various embodiments of this document and the terminology used herein are not intended to limit the technical features described in this document to specific embodiments, but include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly dictates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase, or all possible combinations thereof. Terms such as "first", "second", or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.
본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.The term "module" used in various embodiments of this document may include a unit implemented in hardware, software or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example. A module may be an integrally configured component or a minimum unit of the component or a part thereof that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
본 문서의 다양한 실시예들은 기기(machine) 또는 장치에 의해 읽을 수 있는 저장 매체(storage medium)(예: 메모리)에 저장된 하나 이상의 명령어들(instructions)을 포함하는 소프트웨어(예: 프로그램)로서 구현될 수 있다. 예를 들면, 기기 또는 장치의 프로세서는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of the present document may be implemented as software (e.g., a program) including one or more instructions stored in a storage medium (e.g., a memory) readable by a machine or device. For example, a processor of the machine or device may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one instruction called. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' only means that the storage medium is a tangible device and does not include a signal (e.g., electromagnetic waves), and this term does not distinguish between cases where data is stored semi-permanently and cases where it is stored temporarily in the storage medium.
일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to various embodiments disclosed in the present document may be provided as included in a computer program product. The computer program product may be traded between a seller and a buyer as a commodity. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., a compact disc read only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) through an application store or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a part of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as a memory of a manufacturer's server, a server of an application store, or an intermediary server.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (e.g., a module or a program) of the above-described components may include a single or multiple entities, and some of the multiple entities may be separately arranged in other components. According to various embodiments, one or more components or operations of the above-described corresponding components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, the multiple components (e.g., a module or a program) may be integrated into one component. In such a case, the integrated component may perform one or more functions of each of the multiple components identically or similarly to those performed by the corresponding component of the multiple components before the integration. According to various embodiments, the operations performed by the module, program, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
본 개시에서의 프로세서(processor)는, 본 명세서에서 설명되는 각 명칭에 따른 기능과 동작을 수행할 수 있는 하드웨어를 의미할 수도 있고, 특정 기능과 동작을 수행할 수 있는 컴퓨터 프로그램 코드를 의미할 수도 있고, 또는 특정 기능과 동작을 수행시킬 수 있는 컴퓨터 프로그램 코드가 탑재된 전자적 기록 매체를 의미할 수 있다. 실시예에 따르면, 프로세서의 동작은, 동영상 생성 장치의 동작으로 정의 및/또는 해석될 수 있으나, 이에 제한되지 않는다. 프로세서는 본 개시의 기술적 사상을 수행하기 위한 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적 및/또는 구조적 결합을 의미할 수 있다.The processor in the present disclosure may mean hardware capable of performing functions and operations according to each name described in the present specification, may mean computer program code capable of performing specific functions and operations, or may mean an electronic recording medium loaded with computer program code capable of performing specific functions and operations. According to an embodiment, the operation of the processor may be defined and/or interpreted as the operation of a video generation device, but is not limited thereto. The processor may mean a functional and/or structural combination of hardware for performing the technical idea of the present disclosure and/or software for driving the hardware.
본 개시에서의 대규모 언어 모델(Large Language Model; LLM)(이하, 'LLM'이라 지칭함)은 자연어 처리(Natural Language Processing; NLP) 작업을 수행할 수 있는 언어 모델일 수 있다. The large language model (LLM) (hereinafter referred to as 'LLM') in the present disclosure may be a language model capable of performing natural language processing (NLP) tasks.
본 개시에서 파운데이션 모델 (Foundation model) 또는 동영상 생성 모델은 인공지능 기술을 활용하여 동영상을 생성하는 대규모 모델일 수 있다. 파운데이션 모델은 텍스트 설명, 이미지, 또는 다른 입력을 기반으로 동영상을 생성할 수 있다. In the present disclosure, the foundation model or video generation model may be a large-scale model that generates a video using artificial intelligence technology. The foundation model may generate a video based on text descriptions, images, or other inputs.
본 개시에서의 동영상 자동 생성 장치는, 서비스 서버로 정의 및/또는 지칭될 수 있고, 이는 하나의 물리적으로 독립된 서버를 의미할 수 있으나, 이에 제한되지 않고, 하나의 가상 머신일 수도 있으며, 하나의 가상 또는 물리 머신에서 동작하는 하나의 모듈 또는 프로그램 또는 도커를 모두 포괄하도록 구성될 수 있다.The video automatic generation device in the present disclosure may be defined and/or referred to as a service server, which may mean one physically independent server, but is not limited thereto, and may also be one virtual machine, and may be configured to encompass one module or program or docker operating on one virtual or physical machine.
도 1은 본 개시의 다양한 실시예들에 따른, 기업 정보에 기초한 기업 관련 동영상 자동 생성 장치를 설명하기 위한 개념도이다.FIG. 1 is a conceptual diagram illustrating a device for automatically generating a corporate-related video based on corporate information according to various embodiments of the present disclosure.
도 1의 실시예는, 도 2 내지 도 11의 실시예들과 결합될 수 있다.The embodiment of Fig. 1 can be combined with the embodiments of Figs. 2 to 11.
이하, 기업 정보에 기초한 기업 관련 동영상 자동 생성 장치(100)는, 동영상 자동 생성 장치(100)로 지칭될 수 있다.Hereinafter, a device (100) for automatically generating a corporate-related video based on corporate information may be referred to as an automatic video generation device (100).
도 1을 참조하면, 동영상 자동 생성 장치(100)는, 프로세서(110) 및 메모리(120)를 포함할 수 있다.Referring to FIG. 1, the video automatic generation device (100) may include a processor (110) and a memory (120).
도시되지는 않았지만, 동영상 자동 생성 장치(100)는, 사용자 디바이스(200) 또는 데이터 베이스(300)와 무선 통신 또는 유선 통신을 통해, 통신적으로 연결되기 위한 통신 모듈을 더 포함할 수 있다. 통신 모듈은, 통신 회로(communication circuitry)를 포함할 수 있다.Although not shown, the video automatic generation device (100) may further include a communication module for being communicatively connected to a user device (200) or a database (300) via wireless or wired communication. The communication module may include communication circuitry.
동영상 자동 생성 장치(100)는, 서비스 서버로 구현될 수 있으나, 이에 제한되지 않는다. 예를 들어, 동영상 자동 생성 장치(100)는, 동영상 생성 모델을 포함하는 별도의 서비스 서버와 연결된 독립적인 서비스 서버 또는 독립적인 물리적 디바이스로 제공될 수 있다. 이하, 동영상 자동 생성 장치(100)가 동영상 생성 모델(111)을 포함하는 서비스 서버로 제공되는 경우를 예로 들어 설명한다. 실시예에 따라, 동영상 자동 생성 장치(100)와 사용자 디바이스(200)는, 동영상 자동 생성 시스템에 포함되는 것으로 해석될 수 있다.The automatic video generation device (100) may be implemented as a service server, but is not limited thereto. For example, the automatic video generation device (100) may be provided as an independent service server or an independent physical device connected to a separate service server including a video generation model. Hereinafter, a case in which the automatic video generation device (100) is provided as a service server including a video generation model (111) will be described as an example. According to an embodiment, the automatic video generation device (100) and the user device (200) may be interpreted as being included in the automatic video generation system.
동영상 자동 생성 장치(100)는, 기업 정보(information on enterprise)를 포함하는 데이터 베이스(300)로부터 기업 정보를 수집할 수 있다. 예를 들어, 기업 정보는, 사용자에 의해 제공되는 웹페이지, 문서(예: PDF 등), 이미지, 동영상 또는 오디오 등을 포함할 수 있으나, 이에 제한되지 않는다.The video automatic generation device (100) can collect enterprise information from a database (300) containing enterprise information. For example, the enterprise information can include, but is not limited to, web pages, documents (e.g., PDF, etc.), images, videos, or audio provided by a user.
기업 정보라 함은, 기업의 브랜드 아이덴티티 (brand identity; BI)(이하, 'BI'라 지칭함)에 대한 정보, 또는 기업의 비즈니스 도메인(business domain)에 대한 정보를 포함할 수 있다.Corporate information may include information about the company's brand identity (BI) (hereinafter referred to as 'BI') or information about the company's business domain.
일 예로서, 기업의 BI 정보라 함은, 데이터는, 기업을 상징하는 로고, 브랜드와 연관된 고유한 색상 조합, 미리 설정된 글꼴과 서체, 그래픽, 아이콘, 패턴을 포함하는 디자인 요소, 브랜드 개성, 핵심가치, 미션과 비전, 포지셔닝, 브랜드 스토리, 커뮤니케이션 스타일에 대한 텍스트 데이터 중 적어도 하나를 포함할 수 있으나, 이에 제한되지 않는다. 예시적으로서, 기업의 BI 정보는, 기업이 설정한 톤앤매너에 대한 정보, 기업의 스토리텔링 정보, 기업의 제품 서비스에 대한 정보, 마케팅 채널에서 사용되는 브랜드 메시지 및 컨셉에 대한 데이터를 포함할 수 있다.For example, the BI information of a company may include at least one of, but is not limited to, data on a logo symbolizing the company, a unique color combination associated with the brand, preset fonts and typefaces, design elements including graphics, icons, and patterns, and text data on brand personality, core values, mission and vision, positioning, brand story, and communication style. For example, the BI information of a company may include information on a tone and manner set by the company, information on the company's storytelling, information on the company's products and services, and data on brand messages and concepts used in marketing channels.
일 예로서, 기업의 비즈니스 도메인에 대한 정보라 함은, 해당 기업이 속하는 산업 분야에 대한 정보를 포함할 수 있으나, 이에 제한되지 않는다. 예시적으로서, 기업의 비즈니스 도메인에 대한 정보는, 해당 기업이 속한 비즈니스 도메인의 규제 상황(예: 법적 규제)에 대한 데이터, 시장 동향에 대한 데이터, 기술적 요구사항에 데이터, 또는 해당 비즈니스 도메인의 고유한 특성에 대한 데이터를 포함할 수 있다.For example, information about a company's business domain may include, but is not limited to, information about the industry sector to which the company belongs. For example, information about a company's business domain may include data about the regulatory situation (e.g., legal regulations) of the business domain to which the company belongs, data about market trends, data about technical requirements, or data about unique characteristics of the business domain.
동영상 자동 생성 장치(100)는, 데이터 베이스(300)로부터 기업의 BI 정보 또는 기업의 비즈니스 도메인 정보를 포함하는 기업 정보를 수집할 수 있고, 이는 미리 설정된 주기마다 수집하거나 또는 신규 정보(신규 데이터)가 발생될 때마다 수집할 수 있다.The video automatic generation device (100) can collect corporate information including corporate BI information or corporate business domain information from a database (300), and can collect this information at preset intervals or whenever new information (new data) is generated.
동영상 자동 생성 장치(100)의 동영상 생성 모델(111)은, 수집된 기업 정보를 전처리하여 획득된 기업 BI 데이터(예: 벡터 데이터), 또는 기업 비즈니스 도메인 데이터(예: 벡터 데이터)를 통해 학습을 수행함으로써, 인공지능 기반의 학습 모델을 구현할 수 있다.The video generation model (111) of the video automatic generation device (100) can implement an artificial intelligence-based learning model by performing learning through corporate BI data (e.g., vector data) or corporate business domain data (e.g., vector data) obtained by preprocessing collected corporate information.
프로세서(110)는, 동영상 생성 모델(111)을 포함할 수 있다. 프로세서(110)는, 동영상 생성 모델(111)을 이용하여, 사용자 디바이스(200)로부터 입력된 사용자 쿼리에 기초하여, 기업 관련 동영상을 생성할 수 있다.The processor (110) may include a video generation model (111). The processor (110) may generate a business-related video based on a user query input from a user device (200) using the video generation model (111).
프로세서(110)는, 일 예로서, 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티 프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), 또는 FPGA(Field Programmable Gate Array) 중 적어도 하나를 포함할 수 있으나, 이에 제한되지 않는다.The processor (110) may include, but is not limited to, at least one of a microprocessor, a central processing unit, a processor core, a multi-core processor, a multiprocessor, an ASIC (Application-Specific Integrated Circuit), or an FPGA (Field Programmable Gate Array), for example.
동영상 생성 모델(111)은, 프로세서(110)의 일부로 구현될 수 있으나, 이에 제한되지 않는다. 예를 들어, 동영상 생성 모델(111)이나, 프로세서(110) 및/또는 동영상 자동 생성 장치(100)의 동작을 야기하는 적어도 하나의 인스트럭션은, 메모리(120)에 저장될 수 있다.The video generation model (111) may be implemented as part of the processor (110), but is not limited thereto. For example, the video generation model (111), or at least one instruction causing the operation of the processor (110) and/or the automatic video generation device (100), may be stored in the memory (120).
메모리(120)는, 프로세서(110)에 의해 실행 가능한 인스트럭션들(또는 프로그램들)을 저장할 수 있다. 메모리(120)는, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다.The memory (120) can store instructions (or programs) executable by the processor (110). The memory (120) can include volatile memory or non-volatile memory.
휘발성 메모리는 DRAM(dynamic random access memory), SRAM(static random access memory), T-RAM(thyristor RAM), Z-RAM(zero capacitor RAM), 또는 TTRAM(Twin Transistor RAM)으로 구현될 수 있다.Volatile memory can be implemented as dynamic random access memory (DRAM), static random access memory (SRAM), thyristor RAM (T-RAM), zero capacitor RAM (Z-RAM), or twin transistor RAM (TTRAM).
불휘발성 메모리는 EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시(flash) 메모리, MRAM(Magnetic RAM), 스핀전달토크 MRAM(Spin-Transfer Torque(STT)-MRAM), Conductive Bridging RAM(CBRAM), FeRAM(Ferroelectric RAM), PRAM(Phase change RAM), 저항 메모리(Resistive RAM(RRAM)), 나노 튜브 RRAM(Nanotube RRAM), 폴리머 RAM(Polymer RAM(PoRAM)), 나노 부유 게이트 메모리(Nano Floating Gate Memory(NFGM)), 홀로그래픽 메모리(holographic memory), 분자 전자 메모리 소자(Molecular Electronic Memory Device), 또는 절연 저항 변화 메모리(Insulator Resistance Change Memory)로 구현될 수 있다.Nonvolatile memory can be implemented as Electrically Erasable Programmable Read-Only Memory (EEPROM), flash memory, Magnetic RAM (MRAM), Spin-Transfer Torque (STT)-MRAM, Conductive Bridging RAM (CBRAM), Ferroelectric RAM (FeRAM), Phase change RAM (PRAM), Resistive RAM (RRAM), Nanotube RRAM, Polymer RAM (PoRAM), Nano Floating Gate Memory (NFGM), holographic memory, Molecular Electronic Memory Device, or Insulator Resistance Change Memory.
사용자 디바이스(200)는, 사용자(예: 기업 관리자 또는 기업 근로자)가 사용하는 디바이스로 정의될 수 있고, 사용자는 사용자 디바이스(200)를 통해 동영상 생성 장치(200)와 통신적으로 연결될 수 있다. 사용자 디바이스(200)는, 스마트 디바이스(예: 스마트폰), PC(personal computer) 또는 휴대용 랩탑 컴퓨터 등과 같은 디바이스로서, 어플리케이션(210)(또는 프로그램)을 포함할 수 있는 다양한 디바이스를 포함할 수 있다.The user device (200) may be defined as a device used by a user (e.g., a corporate manager or corporate worker), and the user may be communicatively connected to the video generation device (200) through the user device (200). The user device (200) may include various devices such as a smart device (e.g., a smart phone), a personal computer (PC), or a portable laptop computer, which may include an application (210) (or program).
사용자는, 사용자 디바이스(200)에 내장된 어플리케이션(210)을 통해, 동영상 생성 장치(100)로 사용자 쿼리(예: 동영상 생성에 대한 정보 등)를 입력할 수 있고, 동영상 생성 장치(100)로부터 생성된 기업 관련 동영상을 수신할 수 있다.A user can input a user query (e.g., information about video creation, etc.) into a video creation device (100) through an application (210) built into a user device (200) and receive a company-related video created from the video creation device (100).
도 2는 본 개시의 다양한 실시예들에 따른, 기업 정보에 기초한 기업 관련 동영상 자동 생성 방법을 설명하기 위한 흐름도이다.FIG. 2 is a flowchart illustrating a method for automatically generating a corporate-related video based on corporate information according to various embodiments of the present disclosure.
도 2의 실시예는, 도 1의 실시예, 또는 도 3 내지 도 11의 실시예들과 결합될 수 있다.The embodiment of Fig. 2 can be combined with the embodiment of Fig. 1, or the embodiments of Figs. 3 to 11.
도 2를 참조하여 설명되는 기업 관련 동영상 자동 생성 방법(이하, '동영상 자동 생성 방법'이라 함)은, 도 1의 동영상 생성 모델(111), 프로세서(120) 또는 동영상 생성 장치(100)에 의해 수행되는 방법으로 정의될 수 있으나, 이에 제한되지 않는다.The method for automatically generating a corporate-related video (hereinafter referred to as the “automatic video generation method”) described with reference to FIG. 2 may be defined as a method performed by the video generation model (111), processor (120), or video generation device (100) of FIG. 1, but is not limited thereto.
동영상 자동 생성 방법은, 기업 컨텐츠를 수신하는 단계(S110)를 포함할 수 있다.The method for automatically generating a video may include a step (S110) of receiving corporate content.
기업 컨텐츠는, 기업 BI 정보 또는 기업 비즈니스 도메인 정보를 포함하는 기업 정보를 포함할 수 있다. 예를 들어, 동영상 생성 모델(111)은, 데이터 베이스(300)로부터 기업의 웹페이지, 기업의 보유 문서(예: PDF 등), 기업과 관련된 이미지, 기업과 관련된 동영상 또는 기업과 관련된 오디오 등을 수집할 수 있다.The corporate content may include corporate information including corporate BI information or corporate business domain information. For example, the video generation model (111) may collect corporate web pages, corporate documents (e.g., PDF, etc.), corporate-related images, corporate-related videos, or corporate-related audio from the database (300).
기업 컨텐츠 또는 기업 정보는, 기업에서 제공하는 다양한 데이터 소스로 정의될 수 있으나, 이에 제한되지 않는다. 예를 들어, 기업 컨텐츠 또는 기업 정보는, 기업의 사용자로부터 허가 받은 동영상 자동 생성 장치(100)의 관리자가 직접적으로 수집한 데이터로 정의될 수도 있다. 실시예에 따라, 기업 컨텐츠 또는 기업 정보는, 동영상 자동 생성 장치(100)가 인터넷 상에서 무작위하게 추출한 데이터 중에서, 기업의 사용자와 관련된 정보(예를 들어, 동종 기업에 대한 정보 포함)를 포함할 수 이도 있다.The corporate content or corporate information may be defined as various data sources provided by the company, but is not limited thereto. For example, the corporate content or corporate information may be defined as data directly collected by the administrator of the automatic video generation device (100) with permission from the company's users. According to an embodiment, the corporate content or corporate information may include information related to the company's users (for example, including information on similar companies) among data randomly extracted from the Internet by the automatic video generation device (100).
동영상 자동 생성 방법은, 기업 컨텐츠를 임베딩하는 단계(S120)를 포함할 수 있다.The method for automatically generating a video may include a step of embedding corporate content (S120).
기업 컨텐츠를 임베딩하는 단계(S120)는, 수집된 기업 컨텐츠 또는 기업 정보를 형식별로 분류하는 단계를 포함할 수 있다. 예를 들어, 임베딩하는 단계(S120)는, 수집된 기업 컨텐츠들의 형식을 분석하여, 이를 웹페이지 모달리티, 텍스트 모달리티, 이미지 모달리티, 오디오 모달리티, 또는 비디오 모달리티 등과 같은 다양한 형식의 멀티 모달리티들로 분류할 수 있다.The step of embedding corporate content (S120) may include a step of classifying the collected corporate content or corporate information by format. For example, the step of embedding (S120) may analyze the format of the collected corporate content and classify it into various multi-modalities such as web page modality, text modality, image modality, audio modality, or video modality.
기업 컨텐츠를 임베딩하는 단계(S120)는, 동영상 생성 모델(111)의 VLM(visual-language model)을 이용하여, 상기 다양한 형식의 멀티 모달리티들을 벡터화 처리할 수 있다. 즉, 각각의 기업 컨텐츠들은, 분류된 모달리티에 포함된 정보들을 벡터 표현으로 변환될 수 있다. 상기 벡터 표현들은, 임베딩이 완료된 기업 임베딩 데이터로 정의 및/또는 지칭될 수 있다.Step (S120) of embedding corporate content can vectorize and process the various types of multi-modality using the VLM (visual-language model) of the video generation model (111). That is, each corporate content can be converted into vector representations of information included in the classified modality. The vector representations can be defined and/or referred to as corporate embedding data for which embedding is complete.
기업 임베딩 데이터는, 모달리티에 포함된 기업 BI 정보에 대한 벡터를 포함하는 기업 BI 정보를 포함하는 벡터(예: 기업 BI 데이터), 또는 기업 비즈니스 도메인 정보를 포함하는 벡터(예: 기업 비즈니스 도메인 데이터)를 포함할 수 있다.Enterprise embedding data may include vectors containing enterprise BI information (e.g., enterprise BI data) that include vectors for enterprise BI information included in the modality, or vectors containing enterprise business domain information (e.g., enterprise business domain data).
일 실시예에서, 기업 컨텐츠를 임베딩하는 단계(S120)는, 다양한 형식의 멀티 모달리티들을 벡터화 처리하여 벡터 표현으로 변환하는 단계, 및 다양한 형식의 멀티 모달리티들의 컨텐츠 블록(예: 각 콘텐츠의 특정 부분이나 특정 단위)에 캡션 정보를 삽입 또는 기록하는 단계를 포함할 수 있다.In one embodiment, the step of embedding corporate content (S120) may include a step of converting various formats of multi-modality into vector representations by vectorizing them, and a step of inserting or recording caption information into content blocks of various formats of multi-modality (e.g., a specific part or unit of each content).
각 모달리티의 단위 컨텐츠 블록은, 다양한 형식의 멀티 모달리티들의 각각의 대한 캡션 정보를 포함할 수 있다. 캡션 정보는, 메타 데이터로서, 컨텐츠 블록에 포함된 기업 컨텐츠의 대표 이미지 정보, 타이틀 정보, 또는 요약 정보 등을 포함하는 텍스트 정보일 수 있으나, 이에 제한되지 않는다.The unit content block of each modality may include caption information for each of the various formats of multi-modality. The caption information may be text information including, but not limited to, representative image information, title information, or summary information of the corporate content included in the content block as metadata.
동영상 자동 생성 방법은, 기업 임베딩 데이터를 DB에 저장하는 단계(S130)를 포함할 수 있다.The method for automatically generating a video may include a step (S130) of storing corporate embedding data in a DB.
기업 임베딩 데이터를 DB에 저장하는 단계(S130)는, VLM을 통해, 벡터 처리된 모달리티 정보들의 특성을 반영하여, 각각의 벡터 정보들을 동일한 벡터 공간에 포함될 수 있도록 조정하는 단계를 포함할 수 있다. 예를 들어, 웹페이지, 텍스트, 이미지, 오디오, 또는 비디오와 같은 서로 다른 형식의 멀티 모달리티들의 각각의 벡터 표현들이, 조정되어 하나의 고차원 벡터(이하, '통합 벡터'라 함)에 통합될 수 있다.The step (S130) of storing corporate embedding data in a DB may include a step of adjusting each vector information to be included in the same vector space by reflecting the characteristics of the vector-processed modality information through VLM. For example, each vector expression of different formats of multi-modality such as web pages, text, images, audio, or video may be adjusted and integrated into a single high-dimensional vector (hereinafter referred to as an 'integrated vector').
기업 임베딩 데이터를 DB에 저장하는 단계(S130)는, 하나의 고차원 벡터로 통합된 데이터를 메모리(130)나 외부 서버에 저장하는 단계를 포함할 수 있다.The step (S130) of storing corporate embedding data in a DB may include a step of storing data integrated into a single high-dimensional vector in a memory (130) or an external server.
기업 임베딩 데이터를 DB에 저장하는 단계(S130)는, 캡션 블록화되어 캡션 정보를 포함하는 모달리티 정보들을 메모리(130)나 외부 서버에 저장하는 단계를 포함할 수 있다.The step (S130) of storing corporate embedding data in a DB may include a step of storing modality information including caption information by being caption-blocked in a memory (130) or an external server.
기업 임베딩 데이터를 DB에 저장하는 단계(S130)에서, 또는 기타 단계에서, 동영상 생성 모델(Foundation model) 또는 LLM(대규모 언어 모델)은, 상기 기업 임베딩 데이터를 통해 학습되고, 사용자의 요청에 따라 기업 관련 동영상을 생성하여 출력하도록 학습될 수 있다. 예를 들어, 기업 임베딩 데이터는 기업 정보에 기초하여 추출된 텍스트 데이터, 이미지 데이터, 오디오 데이터 및 영상 데이터 중 적어도 하나 또는 적어도 2개 이상의 데이터를 이용하여 멀티 모달 분석을 수행하여 생성된 정보 또는 데이터일 수 있다.In the step (S130) of storing corporate embedding data in a DB, or in other steps, a video generation model (Foundation model) or an LLM (Large-Scale Language Model) may be trained through the corporate embedding data and trained to generate and output a corporate-related video according to a user's request. For example, the corporate embedding data may be information or data generated by performing a multi-modal analysis using at least one or at least two or more of text data, image data, audio data, and video data extracted based on corporate information.
도 2에 도시된 것은 아니지만, 동영상 자동 생성 방법은, 기업 컨텐츠로부터 기업 비즈니스 도메인 정보를 추출하고 이를 지식 그래프로 생성하는 단계를 포함할 수 있다. Although not illustrated in FIG. 2, the method for automatically generating a video may include a step of extracting corporate business domain information from corporate content and generating the same into a knowledge graph.
예를 들어, 기업 컨텐츠로부터 도메인 특화 용어를 추출하고, 추출한 용어를 기초로 엔터티를 정의하고, 엔터티 사이의 관계를 연결하여 기업이 속한 비즈니스 도메인 특화 정보에 대한 지식 그래프를 생성할 수 있다. For example, domain-specific terms can be extracted from corporate content, entities can be defined based on the extracted terms, and relationships between entities can be connected to create a knowledge graph of information specific to the business domain to which the corporate belongs.
이러한 기업 도메인 특화 데이터 및 도메인 특화 데이터에 대한 지식 그래프는 시나리오를 생성하는 LLM의 학습에 사용될 수 있다. 보다 구체적으로 LLM은 기업 도메인 특화 데이터를 학습하여 금융 비즈니스, 보험 비즈니스, 교육 비즈니스 또는 철강 비즈니스에 특화된 시나리오 생성 LLM으로 파인튜닝될 수 있다. These enterprise domain-specific data and knowledge graphs for domain-specific data can be used to train LLMs that generate scenarios. More specifically, LLMs can be fine-tuned to generate scenarios specialized for financial business, insurance business, education business, or steel business by learning enterprise domain-specific data.
동영상 자동 생성 방법은, 사용자 쿼리를 수신하는 단계(S140)를 포함할 수 있다.The method for automatically generating a video may include a step (S140) of receiving a user query.
사용자 쿼리를 수신하는 단계는, 사용자 디바이스(200)의 어플리케이션(210)에 입력된 사용자의 동영상 생성을 위한 쿼리 정보를 수신하는 단계를 포함할 수 있다. 예를 들어, 상기 어플리케이션(210)은, 동영상 생성 어플리케이션을 포함할 수 있다. 쿼리 정보는, 사용자에 의해 입력된 정보로서, 쿼리 정보는 텍스트 정보, 음성 정보, 이미지 정보 또는 기타 데이터 정보를 포함할 수 있다. 일 예로서, 사용자는 "우리 회사의 신제품에 대한 20초짜리 홍보 영상을 만들어줘"와 같은 텍스트를 입력하여, 상기 텍스트 정보가 쿼리 정보로서 동영상 자동 생성 장치(100)로 전달될 수 있다.The step of receiving a user query may include a step of receiving query information for video generation by a user inputted into an application (210) of a user device (200). For example, the application (210) may include a video generation application. The query information is information inputted by the user, and the query information may include text information, voice information, image information, or other data information. As an example, the user may input text such as "Make a 20-second promotional video for our company's new product," and the text information may be transmitted as query information to the automatic video generation device (100).
동영상 자동 생성 방법은, 수신된 사용자 쿼리를 임베딩하는 단계(S150)를 포함할 수 있다.The method for automatically generating a video may include a step (S150) of embedding a received user query.
사용자 쿼리를 임베딩하는 단계(S150)는, 사용자 쿼리를 벡터 표현으로 변환하는 단계 및 벡터 표현으로 변환된 사용자 쿼리 정보를 모달리티 조정하는 단계를 포함할 수 있다. 모달리티 조정된 벡터 표현을 포함하는 사용자 쿼리 정보는, 멀티 모달리티들의 통합 벡터와 동일한 벡터 공간 내 위치 가능할 수 있다.The step of embedding a user query (S150) may include a step of converting a user query into a vector representation and a step of modality-adjusting the user query information converted into the vector representation. The user query information including the modality-adjusted vector representation may be positioned within the same vector space as the integrated vector of multi-modalities.
모달리티 조정된 벡터 표현을 포함하는 사용자 쿼리 정보는, 쿼리 임베딩 데이터로 정의 및/또는 지칭될 수 있다.User query information including modality-adjusted vector representations may be defined and/or referred to as query embedding data.
동영상 자동 생성 방법은, 쿼리 임베딩 데이터와 유사한 기업 임베딩 데이터를 검색하는 단계(S160)를 포함할 수 있다.The method for automatically generating a video may include a step (S160) of searching for corporate embedding data similar to query embedding data.
쿼리 임베딩 데이터와 유사한 기업 임베딩 데이터를 검색하는 단계(S160)는, 기업 임베딩 데이터들이 저장된 메모리(130)나 외부 서버에서 유사한 기업 임베딩 데이터를 검색하는 단계를 포함할 수 있다. 이는, 쿼리 임베딩 데이터와 기업 임베딩 데이터들의 유사도 점수를 계산하여, 유사도 검색 결과를 추출하는 동작으로 수행될 수 있다. 유사도 검색 결과는, 쿼리 임베딩 데이터와 기업 임베딩 데이터들의 유사도 점수를 계산하여 산출된 유사도 점수들에 대한 정보를 포함할 수 있다.The step (S160) of searching for similar corporate embedding data to the query embedding data may include a step of searching for similar corporate embedding data from a memory (130) or an external server where corporate embedding data are stored. This may be performed by calculating a similarity score between the query embedding data and the corporate embedding data and extracting a similarity search result. The similarity search result may include information about similarity scores calculated by calculating the similarity scores between the query embedding data and the corporate embedding data.
동영상 자동 생성 방법은, 산출된 유사도 검사 결과에 기초하여 후보셋을 추출하는 단계(S170)를 포함할 수 있다.The method for automatically generating a video may include a step (S170) of extracting a candidate set based on the generated similarity test results.
유사도 검색 결과에 기초하여 후보셋을 추출하는 단계(S170)는, 산출된 유사도 검사 결과에 기초하여, 유사도 점수가 높은 순서대로, 예를 들어, 관련성이 높은, 적어도 하나의 기업 임베딩 데이터를 추출하는 단계로 동작될 수 있다.The step (S170) of extracting a candidate set based on the similarity search result may be operated as a step of extracting, for example, at least one corporate embedding data with high relevance, in order of high similarity score based on the calculated similarity test result.
일 실시예에서, 후보셋을 추출하는 단계(S170)는, 유사도 점수가 임계 값 이상인 복수 개의 기업 임베딩 데이터들에서, 사용자나 관리자에 의해 설정된 가중 치를 부여하여, 가중치가 적용된 유사도 점수가 가장 높은 기업 임베딩 데이터를 최종 후보셋으로 선정하는 동작을 포함할 수 있다. 상기 최종 후보셋에 선정된 기업 임베딩 데이터는, 동영상 생성 과정에 참조되어, 사용자가 요청한 기업 관련 동영상을 생성하는데 활용될 수 있다.In one embodiment, the step (S170) of extracting a candidate set may include an operation of selecting the corporate embedding data having the highest weighted similarity score as the final candidate set by applying a weight set by a user or an administrator to a plurality of corporate embedding data having a similarity score greater than or equal to a threshold value. The corporate embedding data selected as the final candidate set may be referenced in the video generation process and utilized to generate a corporate-related video requested by the user.
다른 실시예에서, 후보셋을 추출하는 단계(S170)는, 유사도 점수가 임계 값 이상인 복수 개의 기업 임베딩 데이터들, 또는 가중치가 부여된 유사도 점수가 임계 값 이상인 복수 개의 기업 임베딩 데이터들을 모두 최종 후보셋으로 선정하는 동작을 포함할 수 있다. 상기 최종 후보셋으로 선정된 복수 개의 기업 임베딩 데이더들은, 각각 복수 개의 동영상 생성 과정에 참조되어, 사용자가 요청한 기업 관련 동영상이 복수 개로 생성될 수 있다. 이에 따라, 사용자는 동영상 자동 생성 장치로부터 제공된 복수 개의 동영상들 중에서, 사용자의 선호도에 맞는 동영상을 선택할 수 있다.In another embodiment, the step (S170) of extracting a candidate set may include an operation of selecting all of a plurality of corporate embedding data having a similarity score greater than or equal to a threshold value, or a plurality of corporate embedding data having a weighted similarity score greater than or equal to a threshold value, as a final candidate set. The plurality of corporate embedding data selected as the final candidate set may be referred to in a plurality of video generation processes, respectively, so that a plurality of corporate-related videos requested by the user may be generated. Accordingly, the user may select a video that matches the user's preference from among a plurality of videos provided from an automatic video generation device.
동영상 자동 생성 방법은, LLM(대규모 언어 모델)에 프롬프트, 쿼리 임베딩 데이터, 및 컨텍스트를 전달하는 단계(S180)를 포함할 수 있다.The method for automatically generating a video may include a step (S180) of passing a prompt, query embedding data, and context to an LLM (large-scale language model).
프롬프트는, 쿼리 임베딩 데이터에 기초하여, 생성될 수 있다. 예를 들어, 쿼리 임베딩 데이터가 "우리 회사의 신제품에 대한 20초짜리 홍보 영상을 만들어줘"라는 정보를 포함하고 있다면, 프롬프트는, 일 예로서, LLM에게 해당 제품에 대한 정보를 포함하는 동영상 스크립트를 작성하라는 지시를 포함할 수 있다. 동영상 자동 생성 장치(100) 또는 동영상 생성 모델(111)은, 프롬프트 생성 모듈 또는 프롬프트 생성 회로를 포함할 수 있다.The prompt can be generated based on the query embedding data. For example, if the query embedding data includes information such as "Make a 20-second promotional video about our company's new product," the prompt can include, for example, an instruction to LLM to write a video script that includes information about the product. The video automatic generation device (100) or the video generation model (111) can include a prompt generation module or a prompt generation circuit.
또한, 프롬프트는, 최종 후보셋에 선정된 기업 임베딩 데이터에 대한 정보를 포함할 수 있다.Additionally, the prompt may include information about the corporate embedding data selected for the final candidate set.
프롬프트는, 미리 설정된 프롬프트 템플릿에 의해 작성될 수 있으나, 이에 제한되지 않는다.Prompts may be created using preset prompt templates, but are not limited thereto.
쿼리 임베딩 데이터 및 컨텍스트는, 프롬프트와 함께 LLM으로 전달될 수 있다.Query embedding data and context can be passed to the LLM along with the prompt.
컨텍스트는, 쿼리 임베딩 데이터와 관련된 배경 정보나 문맥에 대한 정보를 포함할 수 있다. 예를 들어, 컨텍스트는, 쿼리 임베딩 데이터 자체의 맥락이나, 사용자가 이전에 제공한 정보 또는 관련 데이터에 대한 정보를 포함하여, LLM이 일관된 응답을 생성하도록 하게 할 수 있다. 동영상 자동 생성 장치(100) 또는 동영상 생성 모델(111)은, 컨텍스트 생성 모듈 또는 컨텍스트 생성 회로를 포함할 수 있다.The context may include background information or information about the context related to the query embedding data. For example, the context may include information about the context of the query embedding data itself, or information or related data previously provided by the user, to enable the LLM to generate a consistent response. The video automatic generation device (100) or the video generation model (111) may include a context generation module or a context generation circuit.
동영상 자동 생성 방법은, LMM에서 생성된 응답을 전달하는 단계(S190)를 포함할 수 있다.The method for automatically generating a video may include a step (S190) of transmitting a response generated from an LMM.
LLM에서 생성된 응답을 전달하는 단계(S190)는, LLM에서, 프롬프트, 쿼리 임베딩 데이터, 및 컨텍스트에 기초하여, 동영상 생성 스크립트를 생성하는 단계를 포함할 수 있다.The step of transmitting the response generated in the LLM (S190) may include a step of generating a video generation script in the LLM based on the prompt, query embedding data, and context.
LLM에서 생성된 응답을 전달하는 단계(S190)는, 동영상 생성 스크립트를 사용자 디바이스로 전달하는 단계를 포함하거나 또는 동영상 생성 모델(예: 도 3의 동영상 생성 모델(520))로 전달하는 단계를 포함할 수 있다.The step (S190) of transmitting a response generated in LLM may include a step of transmitting a video generation script to a user device or a step of transmitting it to a video generation model (e.g., the video generation model (520) of FIG. 3).
일 실시예에서, LLM에서 생성된 응답을 동영상 생성 모델로 전달하는 경우, 동영상 생성 스크립트에 기초하여 동영상 생성 모델에서 생성된 결과물(예: 사용자가 요청한 기업 관련 동영상)은, 사용자 디바이스(200) 및/또는 어플리케이션(210)으로 송신될 수 있다.In one embodiment, when passing a response generated from an LLM to a video generation model, a result generated from the video generation model based on the video generation script (e.g., a company-related video requested by a user) may be transmitted to the user device (200) and/or the application (210).
다른 실시예에서, LLM에서 생성된 응답을 사용자 디바이스로 전달하는 경우, 동영상 자동 생성 장치(100)로부터 동영상 생성 스크립트에 대한 정보 및 동영상 생성에 필요한 정보(예: 기업 임베딩 데이터 등)을 수신하여, 상기 정보들에 기초하여 동영상을 생성할 수 있다.In another embodiment, when transmitting a response generated from an LLM to a user device, information about a video generation script and information necessary for video generation (e.g., corporate embedding data, etc.) may be received from a video automatic generation device (100), and a video may be generated based on the information.
도 3은 본 개시의 다양한 실시예들에 따른, 동영상 생성 장치의 구성들을 나타낸 블록도이다.FIG. 3 is a block diagram illustrating configurations of a video generation device according to various embodiments of the present disclosure.
도 3의 실시예는, 도 1 내지 도 2의 실시예들, 또는 도 4 내지 도 11의 실시예들과 결합될 수 있다.The embodiment of FIG. 3 can be combined with the embodiments of FIGS. 1 to 2, or the embodiments of FIGS. 4 to 11.
도 3을 참조하면, 동영상 자동 생성 장치(100)는, 동영상 생성 모델(111)(예: 도 1의 동영상 생성 모델(111))을 포함할 수 있다.Referring to FIG. 3, the automatic video generation device (100) may include a video generation model (111) (e.g., the video generation model (111) of FIG. 1).
동영상 생성 모델(111)은, 어플리케이션(210)을 포함하는 사용자 디바이스(200) 또는 기업 정보가 저장된 데이터 베이스(300)와 통신적으로 및/또는 작동적으로(operatively) 연결될 수 있다.The video generation model (111) can be communicatively and/or operatively connected to a user device (200) including an application (210) or a database (300) storing corporate information.
동영상 생성 모델(111)은, 컨텐츠 블록 생성부(410), 임베딩 모듈(420), 외부 컨텐츠 인덱스(430), 벡터 DB(440), 니즈 예측부(450), 컨텐츠 블록 검색부(460), 스크립트 생성부(470), 또는 CSS 편집부(480)를 포함할 수 있다. 동영상 생성 모듈(111)은, 외부 컨텐츠 저장소(510), 동영상 생성 모델(520), 또는 LLM(530)(예: 대규모 언어모델)과 통신적으로 및/또는 작동적으로 연결될 수 있으나, 이에 제한되지 않는다. 예를 들어, 외부 컨텐츠 저장소(510), 동영상 생성 모델(520), 및 LLM(530)은, 동영상 생성 모델(111)에 포함되어, 동영상 생성 모델(111)의 일부 구성들로 정의 및/또는 해석될 수 있다.The video generation model (111) may include a content block generation unit (410), an embedding module (420), an external content index (430), a vector DB (440), a needs prediction unit (450), a content block search unit (460), a script generation unit (470), or a CSS editing unit (480). The video generation module (111) may be communicatively and/or operatively connected to an external content repository (510), a video generation model (520), or an LLM (530) (e.g., a large-scale language model), but is not limited thereto. For example, the external content repository (510), the video generation model (520), and the LLM (530) may be included in the video generation model (111) and may be defined and/or interpreted as some components of the video generation model (111).
동영상 생성 모델(111)의 구성들에 의해 수행되는 동작들은, 메모리(예: 도 1의 메모리(130))에 저장된 적어도 하나의 인스트럭션이 프로세서(예: 도 1의 프로세서(120))에 의해 실행될 때, 인스트럭션에 의해 동영상 생성 모델(111)이 수행하는 동작들로 정의될 수 있다.The operations performed by the components of the video generation model (111) can be defined as operations performed by the video generation model (111) by an instruction when at least one instruction stored in a memory (e.g., memory (130) of FIG. 1) is executed by a processor (e.g., processor (120) of FIG. 1).
컨텐츠 블록 생성부(410)는, 기업 컨텐츠를 포함하는 기업 정보, 예를 들어, 이미지나 비디오의 각 프레임에서, 주요 객체를 추출하고 의미 단위로 분할하고, 객체 추출 및 의미 단위 분할에서 획득된 정보를 기초로, VLM(visual-language model) 또는 VLM의 기능을 수행하는 LLM을 사용하여 캡션을 메타 데이터로 생성할 수 있다.The content block generation unit (410) extracts main objects from corporate information including corporate content, for example, from each frame of an image or video, divides them into semantic units, and, based on the information obtained from the object extraction and semantic unit division, generates captions as metadata using a visual-language model (VLM) or an LLM that performs the function of a VLM.
본 발명의 실시예를 따르면, 컨텐츠 블록 생성부 (410)는 임의의 컨텐츠를 분할하여 복수의 컨텐츠 블록을 생성할 수 있다. 컨텐츠 블록 생성부는 임의의 컨텐츠의 논리적 흐름, 스토리라인의 변화점을 파악하여 변화점을 기준으로 성가 컨텐츠를 분할하여 컨텐츠 블록을 생성할 수 있다. 또는 장면 전화이나 카메라 앵글의 변화율, 배경이나 설정의 변경점, 화자 또는 등장인물의 변경점, 포멧이나 스타일의 변경점을 기준으로 컨텐츠를 분할하여 컨텐츠 블록을 생성할 수 있다. 또 다른 예로 컨텐츠 블록 생성부는 상기 컨텐츠에서 영상의 분위기나 감정선이 크게 바뀌는 지점, 인트로, 본문, 결론 등 영상의 구조적인 요소가 변경되는 지점, 자막이나 오버레이 텍스트가 변경되는 지점, 배경 음악이나 사운드 효과가 바뀌는 지점을 기준으로 컨텐츠를 분할하여 컨텐츠 블록을 생성할 수 있다. According to an embodiment of the present invention, the content block generation unit (410) can divide any content into multiple content blocks. The content block generation unit can identify the logical flow of any content, the change points of the storyline, and divide the content based on the change points to generate content blocks. Alternatively, the content can be divided based on the change rate of the scene change or the camera angle, the change points of the background or the setting, the change points of the speaker or the character, the change points of the format or the style, and generate content blocks. As another example, the content block generation unit can divide the content based on the point where the mood or emotional line of the video changes significantly, the point where the structural elements of the video such as the intro, the main text, and the conclusion change, the point where the subtitle or overlay text changes, and the point where the background music or the sound effect changes to generate content blocks.
본 발명의 실시예를 따르면, 컨텐츠 블록 생성부 (410)는 VLM 또는 LLM을 이용하여 컨텐츠 블록의 캡션을 생성할 수 있다. 컨텐츠 블록 캡션은 영상의 각 세그먼트나 블록에 대한 간단한 설명 또는 요약을 제공하는 텍스트를 포함할 수 있다. According to an embodiment of the present invention, the content block generation unit (410) can generate a caption of a content block using VLM or LLM. The content block caption can include text that provides a brief description or summary of each segment or block of the video.
컨텐츠 블록 생성부 (410)는 컨텐츠 블록의 대표 이미지 또는 컨텐츠 블록의 대표 이미지 특징을 추출하고, LLM이 컨텐츠 블록에 대한 데이터 주석을 생성하도록 제어할 수 있다. The content block generation unit (410) can extract a representative image of a content block or a representative image feature of a content block and control the LLM to generate a data annotation for the content block.
보다 구체적으로, 컨텐츠 블록 생성부 (410)는 컨텐츠 블록 및 컨텐츠 블록의 대표 이미지를 이미지 또는 영상을 이해하도록 학습된 LLM에 전달하면서, “컨텐츠 블록에 대해 질문을 생성하고 상기 질문에 대한 응답을 단계적 방식으로 생성하라”는 제 1 프롬프트를 적용할 수 있다. More specifically, the content block generation unit (410) may apply a first prompt of “generate a question about the content block and generate a response to the question in a step-by-step manner” while transmitting the content block and a representative image of the content block to the LLM trained to understand the image or video.
예를 들어 컨텐츠 블록 생성부 (410)는 요리 튜토리얼 컨텐츠 블록과 함께 상기 프롬프트를 상기 LLM에 적용할 수 있다. LLM은 “상기 컨텐츠 블록을 요약하시오”라는 질문을 생성하고, 상기 질문에 대한 응답을 생성하기 위해, “상기 컨텐츠 블록은 무엇을 주제로 합니까” 라는 제 1 질문을 생성하고, 제 1 응답으로 “요리 레서피입니다”라는 제 1 응답을 생성할 수 있다. 이후 LLM은 제 1 응답을 참고하여 제 2 질문으로, “상기 컨텐츠 블록에서 다루는 요리 레서피는 무엇에 대한 것입니까?”을 생성하고, 제 2 응답으로 “카르보나라 파스타입니다”라는 제 2 응답을 생성할 수 있다. 이후 LLM은 제 2 응답을 참고하여 제 3 질문으로 “카르보나라 파스타를 만들기 위한 재료는 무엇입니까?”를 생성하고, 제 3 질문으로 “파스타면, 계란, 치즈입니다”For example, the content block generation unit (410) may apply the above prompt to the LLM together with the cooking tutorial content block. The LLM may generate a question, “Summarize the above content block,” and generate a first question, “What is the subject of the above content block?” to generate a response to the question, and generate a first response, “It is a cooking recipe.” Then, the LLM may generate a second question, “What is the cooking recipe covered in the above content block?” with reference to the first response, and generate a second response, “It is a carbonara pasta.” Then, the LLM may generate a third question, “What are the ingredients for making a carbonara pasta?” with reference to the second response, and generate a third question, “It is pasta, eggs, and cheese.”
라는 제 3 응답을 생성할 수 있다. 이후 LLM은 제 3 응답을 참고하여 제 4 질문으로 “파스타면, 계란, 치즈의 요리 순서는 무엇입니까?”를 생성하고 이에 대한 제 4 응답을 생성할 수 있다.can generate a third response called “What is the cooking order of pasta, eggs, and cheese?” Then, LLM can generate a fourth question with reference to the third response, “What is the cooking order of pasta, eggs, and cheese?” and generate a fourth response to it.
이후 컨텐츠 블록 생성부 (410)는 “생성된 질의 응답 세트를 이용하여 상기 컨텐츠 블록의 캡션을 생성하라”는 제 2 프롬프트를 LLM에 적용할 수 있다. Thereafter, the content block generation unit (410) can apply a second prompt to the LLM: “Generate a caption for the content block using the generated question-answer set.”
요리 튜토리어 컨텐츠 블록에 대한 앞의 예에서, LLM은 “주제는 요리 레서피입니다”, “요리 레서피는 카르보나라 파스타에 대한 것입니다”, “카르보나라 파스타를 만들기 위한 재료는 파스타면, 계란, 치즈입니다” 등의 컨텐츠 블록에 대한 캡션 문장을 생성할 수 있다. In the previous example for the Cooking Tutorial content block, LLM could generate caption sentences for the content blocks such as “The topic is a cooking recipe”, “The cooking recipe is about pasta carbonara”, and “The ingredients for making pasta carbonara are pasta, eggs, and cheese”.
이렇게 생성된 컨텐츠 블록에 대한 캡션은 컨텐츠 블록에 대한 메타데이터로 컨텐츠 블록과 연결되어 저장되며, 컨텐츠 블록에 대한 검색에 활용될 수 있다. The caption for the content block generated in this way is stored as metadata for the content block and linked to the content block, and can be utilized for searching the content block.
한편, 컨텐츠 블록 생성부(410)는, 생성된 캡션과 추출된 객체를 조합하여 하나의 컨텐츠 블록을 생성할 수 있다. 컨텐츠 블록은, 시각적 콘텐츠와 텍스트 설명(예: 메타 데이터로 생성된 시각적 콘텐츠 또는 이의 주요 객체에 대한 설명)을 통합한 결과물일 수 있다. 컨텐츠 블록은, 동영상 생성 모델(520)에서 동영상 생성 작업에 활용되거나 또는 컨텐츠 블록 검색부(460)에서 동영상 컨텐츠 블록을 검색하는데 활용될 수 있다.Meanwhile, the content block generation unit (410) can generate one content block by combining the generated caption and the extracted object. The content block can be a result of integrating visual content and text description (e.g., visual content generated as metadata or description of its main object). The content block can be utilized in the video generation task in the video generation model (520) or can be utilized in searching for a video content block in the content block search unit (460).
추출된 주요 객체는, 동영상의 대표 이미지, 동영상의 타이틀, 동영상의 요약 또는 동영상의 특징 객체일 수 있으나, 이에 제한되지 않는다. 생성된 캡션은, 동영상 대표 이미지에 대한 캡션, 동영상 타이틀에 대한 캡션, 동영상의 요약에 대한 캡션, 또는 동영상의 특징 객체 대한 캡션을 포함할 수 있으나, 이에 제한되지 않는다. 캡션은, 외부 컨텐츠 인덱스(430)의 메타 데이터를 통해 생성될 수 있으나, 이에 제한되지 않는다.The extracted main object may be, but is not limited to, a representative image of the video, a title of the video, a summary of the video, or a feature object of the video. The generated caption may include, but is not limited to, a caption for a representative image of the video, a caption for a title of the video, a caption for a summary of the video, or a caption for a feature object of the video. The caption may be generated through metadata of an external content index (430), but is not limited to this.
생성된 컨텐츠 블록은, 컨텐츠, 또는 캡션과 함께 외부 컨텐츠 저장소(510)에 저장될 수 있으나, 이에 제한되지 않는다.The generated content block may be stored in an external content storage (510) along with the content or caption, but is not limited thereto.
생성된 컨텐츠 블록은, 임베딩 모듈(420)에 의해 고차원 벡터 처리되어, 벡터 DB(440)에 저장될 수도 있다.The generated content block may be processed into a high-dimensional vector by the embedding module (420) and stored in the vector DB (440).
임베딩 모듈(420)은, 데이터 베이스(300)로부터 수집된 기업 컨텐츠의 다양한 모달리티들(예: 웹페이지, 문서, 이미지, 영상 또는 오디오 등)의 데이터들을 CNN 기반 모델의 추출기를 통해 분석하고, 임베딩하여 이를 벡터로 변환할 수 있다. 임베딩 모듈(420)은, 각각의 모달리티들의 벡터들을 모달리티 조정을 통해, 동일한 벡터 공간으로 변환할 수 있다. 즉, 각각의 모달리티들의 벡터들의 크기 또는 스케일 등을 조정하여, 각각의 모달리티들의 조정된 벡터들이 동일한 벡터 공간에 하나의 통합 벡터로 결합될 수 있다. 이에 따라, 서로 다른 모달리티의 벡터들을 종합적으로 고려한 유사도 검색이 가능해질 수 있다. 통합 벡터는, 벡터 DB(데이터 베이스)(440)에 저장될 수 있다. 또한, 동영상 생성 모델(520)(Foundation model) 또는 LLM(530)(대규모 언어 모델)은, 통합 벡터를 학습할 수 있다.The embedding module (420) can analyze data of various modalities (e.g., web pages, documents, images, videos, or audios, etc.) of corporate content collected from the database (300) through an extractor of a CNN-based model, embed them, and convert them into vectors. The embedding module (420) can convert vectors of each modality into the same vector space through modality adjustment. That is, by adjusting the size or scale of vectors of each modality, the adjusted vectors of each modality can be combined into one integrated vector in the same vector space. Accordingly, a similarity search that comprehensively considers vectors of different modalities can be enabled. The integrated vector can be stored in a vector DB (database) (440). In addition, a video generation model (520) (Foundation model) or an LLM (530) (large-scale language model) can learn the integrated vector.
임베딩 모듈(420)은, 사용자가 사용자 디바이스(200) 및 어플리케이션(210)을 통해 입력한 사용자 쿼리가 전처리 모듈에 의해 전처리되어 전달되면, 전처리된 사용자 쿼리를 임베딩하여 이를 고차원 벡터로 변환할 수 있다.The embedding module (420) can embed the preprocessed user query and convert it into a high-dimensional vector when the user query entered by the user through the user device (200) and application (210) is preprocessed by the preprocessing module and transmitted.
컨텐츠 블록 검색부(460)는, 사용자 쿼리 벡터를 분석하여 그 인텐트(intent)를 파악할 수 있다. 예를 들어, 사용자가 "우리 회사의 신제품을 소개하는 20초 길이의 동영상을 만들어줘"라는 쿼리를 입력했다면, 컨텐츠 블록 검색부(460)는 쿼리의 인텐트를 이해하고, 쿼리에서 관련된 컨텐츠 블록을 검색하기 위한 정보를 추출할 수 있다. 컨텐츠 블록 검색부(460)는, 쿼리를 분석하여 사용자가 원하는 컨텐츠의 종류와 관련된 컨텐츠 블록을 검색할 수 있다. 이는, 사용자의 쿼리와 가장 유사한 벡터를 가진 컨텐츠 블록을 검색하는 동작으로 수행될 수 있다. 컨텐츠 블록 검색부(460)는, 유사도 검색 결과에 기초하여, 사용자의 쿼리에 가장 적합한 컨텐츠 블록들을 선택하여 사용자에게 제공할 수 있다. 사용자는, 제공된 컨텐츠 블록들을 확인하고, 필요한 경우 이를 기반으로 더욱 구체화된 사용자 쿼리를 작성하여 다시 입력할 수 있다.The content block search unit (460) can analyze a user query vector to identify its intent. For example, if a user inputs a query such as “Make a 20-second long video introducing our company’s new product,” the content block search unit (460) can understand the intent of the query and extract information for searching for content blocks related to the query. The content block search unit (460) can analyze the query to search for content blocks related to the type of content desired by the user. This can be performed by an operation of searching for a content block having a vector most similar to the user’s query. The content block search unit (460) can select content blocks most suitable for the user’s query based on the similarity search results and provide them to the user. The user can check the provided content blocks and, if necessary, create a more detailed user query based on the provided content blocks and re-enter it.
니즈 예측부(450)는, 사용자의 과거 사용 이력에 기초하여, 과거 행동 데이터를 추출할 수 있다. 니즈 예측부(450)는, 사용자의 쿼리 벡터와 과거 행동 데이터를 분석하여, 사용자에게 개인화된 동영상 템플릿과 동영상 컨텐츠 스타일을 선택 가능한 정보 형태로 추천 제공할 수 있다. 예를 들어, 동영상 템플릿은, 생성될 동영상 컨텐츠가 어떻게 구성될 것인지에 대한 틀을 제공할 수 있다. 동영상 컨텐츠 스타일은, 동영상 레이아웃, 동영상 배경 색상, 동영상에 포함된 텍스트의 서체 등에 관한 정보를 포함할 수 있다. 예를 들어, 니즈 예측부(450)는, 쿼리 벡터 및 과거 행동 데이터에 기초하여, 사용자가 선호하는 동영상 템플릿, 또는 동영상 컨텐츠 스타일을 추천할 수 있다. 예를 들어, 쿼리 벡터에 포함된 쿼리와 실질적으로 유사한 과거 행동 데이터가 있는 경우(예를 들어, 양자 사이의 유사도가 지정된 임계 값 이상인 경우), 과거 행동 데이터에 포함된 동영상 템플릿에 대한 정보 및 동영상 컨텐츠 스타일에 대한 정보를 추천할 수 있다.The needs prediction unit (450) can extract past behavior data based on the user's past usage history. The needs prediction unit (450) can analyze the user's query vector and past behavior data to recommend a personalized video template and video content style to the user in the form of selectable information. For example, the video template can provide a framework for how the video content to be generated will be structured. The video content style can include information about the video layout, the video background color, the font of the text included in the video, etc. For example, the needs prediction unit (450) can recommend a video template or video content style preferred by the user based on the query vector and past behavior data. For example, if there is past behavior data that is substantially similar to a query included in the query vector (for example, if the similarity between the two is greater than a specified threshold value), information about the video template included in the past behavior data and information about the video content style can be recommended.
니즈 예측부(450)는, 개인화된 동영상 템플릿 정보 및 개인화된 동영상 스타일 정보에 기초하여, 샘플 동영상 컨텐츠를 생성할 수 있다. 생성된 샘플 동영상 컨텐츠는, 사용자에게 제공될 수 있고, 사용자는 니즈 예측부(450)에서 제공하는 샘플 동영상 컨텐츠를 확인하고 이에 기초하여 해당 동영상 템플릿 정보 및 동영상 컨텐츠 스타일 정보에 기초하여, 동영상을 생성할지 또는 동영상 템플릿이나 컨텐츠 스타일을 수정할지를 선택할 수 있다. The needs prediction unit (450) can generate sample video content based on personalized video template information and personalized video style information. The generated sample video content can be provided to a user, and the user can check the sample video content provided by the needs prediction unit (450) and, based on the video template information and video content style information, select whether to generate a video or modify the video template or content style.
샘플 동영상 컨텐츠는, 기업과 관련된 레퍼런스 정보가 반영된 동영상 컨텐츠를 포함할 수 있다. 예를 들어, 기업과 관련된 레퍼런스 정보는, 기업의 BI 정보 또는 기업의 비즈니스 도메인 정보를 포함할 수 있다. 이에 따라, 사용자에게 제공되는 샘플 동영상 컨텐츠는, 사용자의 기업의 BI 정보나 비즈니스 도메인 정보가 반영되어, 기업의 전략적 목표나 기업이 속한 산업의 특수성을 반영한 샘플 동영상 컨텐츠 또는 사용자 쿼리에 따라 생성되는 최종 동영상 컨텐츠가 생성될 수 있다. 이에 따라, 사용자는 더 맞춤 되고 관련성 높은 동영상 컨텐츠를 제공받을 수 있으며, 이는 고객 참여를 증진하거나 기업의 비즈니스 목표를 효과적으로 지원할 수 있다. 이에 따라, 관련성 높은 동영상 컨텐츠를 통해, 기업의 마케팅, 내부 커뮤니케이션 또는 경쟁력 강화에서 이점을 가질 수 있다.The sample video content may include video content that reflects reference information related to the company. For example, the reference information related to the company may include BI information of the company or business domain information of the company. Accordingly, the sample video content provided to the user may reflect the BI information or business domain information of the user's company, and may be sample video content that reflects the strategic goals of the company or the specificity of the industry to which the company belongs, or final video content generated according to the user's query. Accordingly, the user may be provided with more customized and relevant video content, which may promote customer participation or effectively support the business goals of the company. Accordingly, the relevant video content may provide an advantage in the company's marketing, internal communication, or competitiveness enhancement.
스크립트 생성부(470)는, 스크립트를 작성하기 위한 프롬프트, 사용자 쿼리 벡터, 및 컨텍스트를 LLM(530)으로 전달할 수 있다. 프롬프트는, LLM(530)이 작성할 스크립트의 방향과 내용을 결정하는 가이드 라인에 대한 정보를 포함할 수 있다. 컨텍스트는, 니즈 예측부(450)에서 선택된 동영상 템플릿, 동영상 컨텐츠 스타일에 대한 정보나, 기업의 BI 정보나 기업의 비즈니스 도메인 정보를 포함할 수 있다.The script generation unit (470) can transmit a prompt for writing a script, a user query vector, and a context to the LLM (530). The prompt can include information about a guideline that determines the direction and content of the script to be written by the LLM (530). The context can include information about a video template selected by the needs prediction unit (450), information about a video content style, or BI information or business domain information of the company.
LLM(530)은, 프롬프트, 사용자 쿼리 벡터, 및 컨텍스트에 기초하여, 스크립트를 생성할 수 있다. 스크립트는, 동영상 컨텐츠의 기본 구조와 핵심 메시지를 포함할 수 있다. LLM(530)은, 기업의 BI 정보나 기업의 비즈니스 도메인 정보로부터 추출된 데이터를 통해 학습되어, LLM(530)을 통해 생성된 스크립트는, 사용자 쿼리를 통해 요청되는 사용자가 원하는 동영상 컨텐츠에 대해, 기업의 BI 특성이나 비즈니스 도메인 정보가 반영되어 관련성 높은 스크립트가 생성될 수 있다.LLM (530) can generate a script based on a prompt, a user query vector, and a context. The script can include the basic structure and core message of the video content. LLM (530) is learned through data extracted from the BI information of the company or the business domain information of the company, so that a script generated through LLM (530) can generate a highly relevant script by reflecting the BI characteristics of the company or the business domain information for the video content desired by the user requested through the user query.
스크립트 생성부(470)는, LLM(530)을 통해 생성된 응답(예: 스크립트)를 전달받고, 이를 니즈 예측부(450)에서 선택된 정보들과 기업 데이터에 맞게 최종적으로 조종하여, 최종 스크립트를 생성할 수 있다.The script generation unit (470) can receive a response (e.g., script) generated through LLM (530) and ultimately manipulate it to match the information selected by the needs prediction unit (450) and corporate data to generate a final script.
동영상 생성 모델(520)은, 최종 스크립트를 전달받고, 이를 바탕으로 사용자가 요청한 동영상 컨텐츠를 생성할 수 있다. The video generation model (520) can receive the final script and generate video content requested by the user based on it.
동영상 생성 모델(520)을 통해 생성된 동영상 컨텐츠는, 사용자 디바이스(200)로 제공되어, 사용자에게 제공될 수 있다.Video content generated through the video generation model (520) can be provided to the user through a user device (200).
어떤 실시예에서, 최종 스크립트는, 사용자 디바이스(200)의 어플리케이션(210)으로 전달될 수 있고, 사용자 디바이스(200)는 이를 바탕으로 사용자가 요청한 동영상 컨텐츠를 생성할 수도 있다.In some embodiments, the final script may be transmitted to an application (210) of the user device (200), and the user device (200) may generate video content requested by the user based on the script.
CSS(Cascading Style Sheets는) 편집부(480)는, CSS 기반 편집기를 사용하여, 생성된 동영상 컨텐츠를 사용자가 편집하도록 하게 할 수 있다. 예를 들어, 사용자는 제공된 동영상 컨텐츠를 확인 후, 동영상 컨텐츠의 프로젝트 파일, 배경 렌더링(예: 배경 이미지나 배경 색상이나 특정 시각적 효과) 또는 타임라인을 제어(예: 동영상 내의 각 시각적 요소들의 표현 시간 관리)를 제어할 수 있다. 이에 따라, 동영상 컨텐츠는 사용자의 요구에 맞는 품질을 가지도록 편집될 수 있다.The CSS (Cascading Style Sheets) editing unit (480) can allow the user to edit the generated video content using a CSS-based editor. For example, after checking the provided video content, the user can control the project file of the video content, background rendering (e.g., background image, background color, or specific visual effect), or timeline (e.g., managing the presentation time of each visual element in the video). Accordingly, the video content can be edited to have a quality that meets the user's needs.
도 4는 본 개시의 다양한 실시예들에 따른, 동영상 생성 장치의 구성들을 나타낸 블록도이다.FIG. 4 is a block diagram illustrating configurations of a video generation device according to various embodiments of the present disclosure.
도 4의 실시예는, 도 1 내지 도 3의 실시예들, 또는 도 5 내지 도 11의 실시예들과 결합될 수 있다.The embodiment of FIG. 4 can be combined with the embodiments of FIGS. 1 to 3, or the embodiments of FIGS. 5 to 11.
도 4를 참조하면, 컨텐츠 블록 생성 모듈(610)은, 데이터 베이스(300)로부터 기업 관련 컨텐츠 또는 기업 관련 정보들을 수집할 수 있다. 예를 들어, 기업 관련 컨텐츠 또는 기업 관련 정보는, 기업의 BI 정보 또는 기업의 비즈니스 도메인 정보를 포함할 수 있다. 기업 관련 컨텐츠 또는 기업 관련 정보는, 웹페이지, 문서, 이미지, 동영상 또는 오디오 등과 같은 다양한 멀티 모달리티 특성을 가지는 정보들일 수 있다.Referring to FIG. 4, the content block generation module (610) can collect corporate-related content or corporate-related information from the database (300). For example, corporate-related content or corporate-related information can include corporate BI information or corporate business domain information. Corporate-related content or corporate-related information can be information having various multi-modality characteristics such as web pages, documents, images, videos, or audio.
컨텐츠 블록 생성 모듈(610)은, 기업 관련 컨텐츠 또는 기업 관련 정보들을 기업 BI 정보, 기업 비즈니스 도메인 정보 또는 기타 기업 정보로 분류하고, 각각의 정보들에 대해 멀티 모달 분석을 통해, 객체를 추출하여 컨텐츠 블록을 생성할 수 있다.The content block creation module (610) can classify corporate-related content or corporate-related information into corporate BI information, corporate business domain information, or other corporate information, and extract objects through multi-modal analysis for each piece of information to create content blocks.
생성된 컨텐츠 블록은, 임베딩 모듈에 의해 모달리티 조정된 고차원 벡터로 변환되어, 벡터 DB(630)에 저장될 수 있다.The generated content block can be converted into a high-dimensional vector with modality adjustment by the embedding module and stored in the vector DB (630).
임베딩 모듈은, 기업 관련 컨텐츠 또는 기업 관련 정보들에서, 데이터들을 추출하여 분석하고, 모달리티 조정된 고차원 벡터로 변환하여 벡터 DB(630)에 저장할 수 있다.The embedding module can extract data from corporate content or corporate information, analyze it, convert it into a modality-adjusted high-dimensional vector, and store it in a vector DB (630).
사용자는, 영상 생성 어플리케이션(210)에 사용자 쿼리를 입력할 수 있다. 예를 들어, 사용자는 "우리 회사의 신제품에 대한 20초 길이의 홍보 영상을 만들어줘"라는 쿼리를 입력할 수 있다. 입력된 쿼리는, 동영상 자동 생성 장치(100)의 시나리오 생성 모듈(620)로 전달될 수 있다.A user may input a user query into the video generation application (210). For example, a user may input a query such as "Make a 20-second promotional video for our company's new product." The input query may be transmitted to the scenario generation module (620) of the automatic video generation device (100).
동영상 자동 생성 장치(100)의 시나리오 생성 모듈(620)은, 입력된 사용자 쿼리를 임베딩 모듈을 통해 벡터로 변환하여, 이를 기업 데이터들에 대한 벡터와 유사도 검색을 수행하고, 유사도 점수가 임계 값 이상인 복수 개의 기업 데이터들에 기초하여, 복수 개의 시나리오들을 생성할 수 있다. 복수 개의 시나리오들은, 각각 사용자 쿼리에 포함된 정보를 시각적/음향적으로 제공하기 위한 동영상 컨텐츠의 구성들(예를 들어, 영상의 흐름과 영상 속 포함되는 객체들)에 대한 정보를 포함하며, 이는 영상 어플리케이션(210)을 통해 사용자에게 제공될 수 있다.The scenario generation module (620) of the automatic video generation device (100) can convert an input user query into a vector through an embedding module, perform a similarity search for the vector with respect to corporate data, and generate a plurality of scenarios based on a plurality of corporate data having a similarity score higher than a threshold value. Each of the plurality of scenarios includes information on the configurations of video content (e.g., the flow of the video and objects included in the video) for visually/audioally providing information included in the user query, and this can be provided to the user through the video application (210).
영상 어플리케이션(210)은, 복수 개의 시나리오들을 동영상으로 변환하여 사용자에게 출력하거나 또는 복수 개의 시나리오들에 대한 텍스트 정보를 사용자에게 출력할 수 있다.The video application (210) can convert multiple scenarios into videos and output them to the user, or output text information about multiple scenarios to the user.
사용자는 영상 생성 어플리케이션(210)을 통해, 복수 개의 시나리오들 중에서 사용자의 영상 제작 취지에 가장 부합하거나 사용자가 선호하는 시나리오를 선택할 수 있고, 이에 대한 정보는 시나리오 생성 모듈(620)로 전달될 수 있다. 이 때, 사용자는 선택한 시나리오의 동영상 컨텐츠의 구성들을 편집할 수 있고, 동영상 컨텐츠의 편집된 구성들에 대한 정보가 시나리오 생성 모듈(620)로 전달될 수 있다.The user can select a scenario that best suits the user's video production purpose or that the user prefers from among multiple scenarios through the video creation application (210), and information about this can be transmitted to the scenario creation module (620). At this time, the user can edit the configurations of the video content of the selected scenario, and information about the edited configurations of the video content can be transmitted to the scenario creation module (620).
시나리오 생성 모듈(620)은, 사용자 쿼리와 사용자가 선택한 시나리오에 대한 정보를 벡터 DB(630)를 통해 LLM(640)으로 전달할 수 있다.The scenario generation module (620) can transmit information about a user query and a user-selected scenario to the LLM (640) through the vector DB (630).
LLM(640)은, 입력된 사용자 쿼리와 사용자가 선택한 시나리오에 대한 정보에 기초하여, 스크립트를 생성할 수 있다. 생성된 스크립트는, 영상 생성 어플리케이션(210)으로 전달될 수 있다. 영상 생성 어플리케이션(210)은, 스크립트에 기초하여, 동영상 컨텐츠를 생성할 수 있다.LLM (640) can generate a script based on information about an input user query and a user-selected scenario. The generated script can be transmitted to a video generation application (210). The video generation application (210) can generate video content based on the script.
도 5는 본 개시의 다양한 실시예들에 따른, 서비스 서버에서 LLM을 이용하여 컨텐츠 블록 및 컨텐츠 블록에 대한 캡션을 생성하고, 캡션을 이용하여 사용자 질의에 대한 후보 컨텐츠 블록을 추출하는 방법을 설명하기 위한 순서도이다. FIG. 5 is a flowchart illustrating a method for generating content blocks and captions for content blocks using LLM in a service server, and extracting candidate content blocks for a user query using the captions, according to various embodiments of the present disclosure.
본 발명의 실시예를 따르는 컨텐츠 생성 서비스 서버는 기업 컨텐츠를 포함하는 기업 정보, 예를 들어, 이미지나 비디오의 각 프레임에서, 주요 객체를 추출하고 의미 단위로 분할하고, 객체 추출 및 의미 단위 분할에서 획득된 정보를 기초로, VLM(visual-language model) 또는 VLM의 기능을 수행하는 LLM을 사용하여 캡션을 메타 데이터로 생성할 수 있다.A content creation service server according to an embodiment of the present invention can extract main objects from corporate information including corporate content, for example, from each frame of an image or video, divide them into semantic units, and, based on the information obtained from the object extraction and semantic unit division, create captions as metadata using a visual-language model (VLM) or an LLM that performs the function of the VLM.
도 5에 도시된 것은 아니지만, 서비스 서버는 임의의 컨텐츠를 분할하여 복수의 컨텐츠 블록을 생성할 수 있다. 컨텐츠 블록 생성부는 임의의 컨텐츠의 논리적 흐름, 스토리라인의 변화점을 파악하여 변화점을 기준으로 성가 컨텐츠를 분할하여 컨텐츠 블록을 생성할 수 있다. 또는 장면 전화이나 카메라 앵글의 변화율, 배경이나 설정의 변경점, 화자 또는 등장인물의 변경점, 포멧이나 스타일의 변경점을 기준으로 컨텐츠를 분할하여 컨텐츠 블록을 생성할 수 있다. 또 다른 예로 컨텐츠 블록 생성부는 상기 컨텐츠에서 영상의 분위기나 감정선이 크게 바뀌는 지점, 인트로, 본문, 결론 등 영상의 구조적인 요소가 변경되는 지점, 자막이나 오버레이 텍스트가 변경되는 지점, 배경 음악이나 사운드 효과가 바뀌는 지점을 기준으로 컨텐츠를 분할하여 컨텐츠 블록을 생성할 수 있다. Although not illustrated in FIG. 5, the service server may divide arbitrary content into multiple content blocks. The content block generation unit may identify the logical flow of arbitrary content, the change points of the storyline, and divide the original content based on the change points to generate content blocks. Alternatively, the content may be divided based on the rate of change of scene change or camera angle, the change points of background or setting, the change points of speakers or characters, or the change points of format or style to generate content blocks. As another example, the content block generation unit may divide the content based on the point where the mood or emotional line of the video significantly changes, the point where the structural elements of the video such as the intro, main text, and conclusion change, the point where the subtitle or overlay text changes, or the point where the background music or sound effects change to generate content blocks.
이후 서비스 서버는 VLM 또는 LLM을 이용하여 컨텐츠 블록의 캡션을 생성할 수 있다. 컨텐츠 블록 캡션은 영상의 각 세그먼트나 블록에 대한 간단한 설명 또는 요약을 제공하는 텍스트를 포함할 수 있다. The service server can then generate captions for the content blocks using VLM or LLM. Content block captions can include text that provides a brief description or summary of each segment or block of the video.
보다 구체적으로 서비스 서버는 단계 501에서, 컨텐츠 블록의 대표 이미지 또는 컨텐츠 블록의 대표 이미지 특징을 추출할 수 있다. More specifically, in step 501, the service server can extract a representative image of a content block or a representative image feature of a content block.
단계 502에서 서비스 서버는, 컨텐츠 블록에 대해 질문을 생성하고 상기 질문에 대한 응답을 단계적 방식으로 생성하라”는 제 1 프롬프트를 생성할 수 있다. 나앙가 단계 505에서 서비스 서버는, 컨텐츠 블록 및 컨텐츠 블록의 대표 이미지를 이미지 또는 영상을 이해하도록 학습된 LLM에 전달하면서, 상기 제 1 프롬프트를 LLM에 적용할 수 있다. In step 502, the service server may generate a first prompt, “Generate a question for the content block and generate a response to the question in a stepwise manner.” In step 505, the service server may apply the first prompt to the LLM, while transmitting the content block and the representative image of the content block to the LLM trained to understand images or videos.
이후 서비스 서버는 단계 507에서 “생성된 질의 응답 세트를 이용하여 상기 컨텐츠 블록의 캡션을 생성하라”는 제 2 프롬프트를 생성하고, 단계 508에서 상기 제 2 프롬프트를 LLM에 적용할 수 있다. Thereafter, the service server can generate a second prompt “Generate a caption for the content block using the generated query-response set” in step 507, and apply the second prompt to the LLM in step 508.
단계 510에서 서비스 서버는 LLM에서 생성한 컨텐츠 블록에 대한 캡션을 컨텐츠 블록에 대한 메타데이터로 컨텐츠 블록과 연결하여 데이터베이스에 저장할 수 있다. At step 510, the service server can store the caption for the content block generated by the LLM in a database by linking it with the content block as metadata for the content block.
이후 단계 520에서 서비스 서버는 사용자 질의를 수신하면, 컨텐츠 블록 캡션과 사용자 질의 벡터와의 유사도를 기반으로 후보 컨텐츠 블록을 추출할 수 있다. In step 520 thereafter, when the service server receives a user query, it can extract candidate content blocks based on the similarity between the content block caption and the user query vector.
도 5에 도시된 것은 아니지만, 서비스 서버는 추출된 후보 컨텐츠 블록을 이용하여 사용자 질의에 다른 컨텐츠를 생성할 수 있다. Although not shown in Figure 5, the service server can use the extracted candidate content blocks to generate other content in response to a user query.
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
도 7 내지 도 9은, 본 개시의 다양한 실시예들에 따른, 동영상 자동 생성 장치의 동작 방법을 설명하기 위한 흐름도들이다.FIGS. 7 to 9 are flowcharts for explaining an operation method of an automatic video generation device according to various embodiments of the present disclosure.
도 7 내지 도 9의 실시예들은, 도 1 내지 도 8의 실시예들과 결합될 수 있다.The embodiments of FIGS. 7 to 9 can be combined with the embodiments of FIGS. 1 to 8.
7 내지 도 9에 도시된 실시예들은, 다른 도면의 실시예들의 구성들에 대한 설명, 또는 구성들의 동작에 대한 설명이 준용될 수 있다.The embodiments illustrated in FIGS. 7 to 9 may be applied to the descriptions of the configurations of embodiments in other drawings, or to the descriptions of the operations of the configurations.
도 7를 참조하면, 동영상 자동 생성 장치의 동작 방법은, 기업 정보(예: 웹페이지, 문서, 이미지, 또는 동영상을 포함하는 기업 컨텐츠 정보)를 수신하는 단계(S411); 상기 기업 정보로부터 기업의 브랜드 아이덴티티 (Brand Identity) 데이터(예: 기업 BI 정보를 포함하는 벡터), 또는 기업의 비즈니스 도메인 데이터를 추출하는 단계(S412); 사용자 쿼리를 수신하고 쿼리 데이터(예: 쿼리 벡터)를 추출하는 단계(S413); 및 상기 기업의 BI 데이터를 입력으로 하는 학습된 동영상 생성 모델(예: 도 1 및 도 2의 동영상 생성 모델(111) 또는 이의 구성들)을 이용하여, 상기 쿼리 데이터 및 상기 기업의 BI 데이터를 기초로 동영상 스크립트를 생성하는 단계(S414)를 포함할 수 있다.Referring to FIG. 7, the operating method of the automatic video generation device may include a step (S411) of receiving corporate information (e.g., corporate content information including a web page, a document, an image, or a video); a step (S412) of extracting corporate brand identity data (e.g., a vector including corporate BI information) or corporate business domain data from the corporate information; a step (S413) of receiving a user query and extracting query data (e.g., a query vector); and a step (S414) of generating a video script based on the query data and the corporate BI data by using a learned video generation model (e.g., the video generation model (111) of FIGS. 1 and 2 or its components) that uses the corporate BI data as an input.
도 8을 참조하면, 동영상 자동 생성 장치의 동작 방법은, 기업 정보(예: 웹페이지, 문서, 이미지, 또는 동영상을 포함하는 기업 컨텐츠 정보)로부터 동영상 정보를 추출하는 단계(S421); 상기 동영상 정보를 분석하여 객체 정보 및 캡션 정보를 포함하는 컨텐츠 블록을 생성하는 단계(S422); 상기 컨텐츠 블록을 분석하여 컨텐츠 블록 데이터(예: 컨텐츠 블록 벡터)를 생성하는 단계(S423); 사용자 디바이스로부터 사용자 쿼리를 수신하는 단계(S424); 상기 사용자 쿼리를 분석하여 쿼리 데이터(예: 쿼리 벡터)를 생성하는 단계(S425); 상기 컨텐츠 블록 데이터를 입력으로 학습된 동영상 생성 모델(예: 도 1 및 도 2의 동영상 생성 모델(111) 또는 이의 구성들)을 이용하여, 상기 컨텐츠 블록 데이터 및 상기 쿼리 데이터에 기초하여, 유사도가 가장 높은 컨텐츠 블록을 검색하는 단계(S426); 및 검색된 상기 컨텐츠 블록에 대한 정보를 사용자 디바이스로 송신하는 단계(S427)를 포함할 수 있다.Referring to FIG. 8, the operating method of the automatic video generation device may include a step of extracting video information from corporate information (e.g., corporate content information including a web page, a document, an image, or a video) (S421); a step of analyzing the video information to generate a content block including object information and caption information (S422); a step of analyzing the content block to generate content block data (e.g., a content block vector) (S423); a step of receiving a user query from a user device (S424); a step of analyzing the user query to generate query data (e.g., a query vector) (S425); a step of searching for a content block with the highest similarity based on the content block data and the query data by using a video generation model learned with the content block data as input (e.g., the video generation model (111) of FIGS. 1 and 2 or its components) (S426); and a step of transmitting information on the searched content block to the user device (S427).
도 9을 참조하면, 동영상 자동 생성 장치의 동작 방법은, 기업 정보를 수신하는 단계(S431); 상기 기업 정보로부터 기업 데이터(예: 기업 벡터, 기업 BI 벡터 또는 기업 비즈니스 도메인 벡터)를 추출하는 단계(S432); 사용자 쿼리를 수신하고 쿼리 데이터(예: 쿼리 벡터)를 추출하는 단계(S433); 사용자의 과거 행동 데이터를 추출하는 단계(S434); 및 상기 기업 데이터를 입력으로 학습된 동영상 생성 모델(예: 도 1 및 도 2의 동영상 생성 모델(111) 또는 이의 구성들)을 이용하여, 상기 쿼리 데이터 및 상기 과거 행동 데이터에 기초하여, 참조 동영상 정보를 생성하여 사용자 디바이스로 송신하는 단계(S435)를 포함할 수 있다.Referring to FIG. 9, the operating method of the automatic video generation device may include a step of receiving corporate information (S431); a step of extracting corporate data (e.g., corporate vector, corporate BI vector, or corporate business domain vector) from the corporate information (S432); a step of receiving a user query and extracting query data (e.g., query vector) (S433); a step of extracting past user behavior data (S434); and a step of generating reference video information based on the query data and the past behavior data by using a video generation model learned with the corporate data as input (e.g., the video generation model (111) of FIGS. 1 and 2 or its components), and transmitting the generated reference video information to a user device (S435).
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
도 12은 본 개시의 다양한 실시예들에 따른, 사용자 디바이스를 설명하기 위한 블록도이다.FIG. 12 is a block diagram illustrating a user device according to various embodiments of the present disclosure.
도 12의 실시예는, 도 1 내지 도 11의 실시예들과 결합될 수 있다.The embodiment of Fig. 12 can be combined with the embodiments of Figs. 1 to 11.
도 12을 참조하면, 사용자 디바이스(200)는, 운영체제(802)를 포함하는 시스템 메모리(801), 프로세싱 유닛(803), 저장장치(804), 입력장치(805), 출력장치(806), 또는 통신장치(807)를 포함할 수 있다.Referring to FIG. 12, the user device (200) may include a system memory (801) including an operating system (802), a processing unit (803), a storage device (804), an input device (805), an output device (806), or a communication device (807).
사용자 디바이스(200)는, 컴퓨팅 장치 또는 스마트 디바이스를 포함할 수 있다.The user device (200) may include a computing device or a smart device.
시스템 메모리(801)는 RAM(Random Access Memory)을 포함할 수 있고, 운영체제와 프로그램 모듈들이 실행되는 임시 저장 공간을 제공할 수 있다. 시스템 메모리(801)는, 데이터와 인스트럭션을 임시로 저장하고, 프로세싱 유닛(803)이 데이터를 빠르게 접근하여 처리하게 하도록 할 수 있다.The system memory (801) may include a RAM (Random Access Memory) and may provide a temporary storage space where the operating system and program modules are executed. The system memory (801) may temporarily store data and instructions and allow the processing unit (803) to quickly access and process data.
운영체제(802)는, 소프트웨어를 포함할 수 있다. 운영체제는 메모리 관리, 파일 시스템 관리, 프로세서 관리, 장치 관리를 포함하며, 장치 내에서 실행되는 프로그램들을 제어할 수 있다. 운영체제(802)는, 프로그램 모듈을 포함할 수 있고, 프로그램 모듈은 특정 기능을 수행하기 위한 소프트웨어 모듈로서, 유저 인터페이스나 네트워크 등을 제공 또는 담당할 수 있다.The operating system (802) may include software. The operating system includes memory management, file system management, processor management, and device management, and may control programs running within the device. The operating system (802) may include program modules, and the program modules are software modules for performing specific functions, and may provide or be in charge of a user interface or network, etc.
프로세싱 유닛(803)은, CPU를 포함할 수 있으나, 이에 제한되지 않는다. 프로세싱 유닛(803)은, 시스템 메모리(801)에 저장된 명령어를 실행하고, 입력된 데이터를 처리하여 결과를 생성하거나 연산 작업을 할 수 있다.The processing unit (803) may include, but is not limited to, a CPU. The processing unit (803) may execute instructions stored in the system memory (801), process input data, and generate results or perform computational tasks.
저장장치(804)는, 데이터와 프로그램을 반영구적으로 저장하는 장치를 포함할 수 있다.The storage device (804) may include a device that permanently stores data and programs.
입력장치(805)는, 사용자나 다른 시스템으로부터 데이터를 입력 받는 장치로서, 키보드, 마우스, 터치스크린, 또는 터치 패널을 포함하는 디스플레이 패널 상에서 구현되는 소프티 키를 포함할 수 있다.The input device (805) is a device that receives data from a user or another system, and may include a keyboard, a mouse, a touch screen, or a soft key implemented on a display panel including a touch panel.
출력장치(806)는, 프로세싱 유닛(803)을 통해 처리된 데이터를 사용자나 다른 시스템으로 전달하는 장치로서, 모니터, 스피커, 또는 디스플레이 패널을 포함할 수 있다.The output device (806) is a device that transmits data processed through the processing unit (803) to a user or another system, and may include a monitor, speaker, or display panel.
통신장치(807)는, 사용자 디바이스(200)가 외부 네트워크나 다른 장치(예: 동영상 자동 생성 장치(100))와 통신적으로 연결되도록 할 수 있다.The communication device (807) can enable the user device (200) to be communicatively connected to an external network or another device (e.g., an automatic video generation device (100)).
본 개시의 다양한 실시예들에 따른, 동영상 자동 생성 장치는 하드웨어인 컴퓨터(또는, 컴퓨팅 장치)와 결합되어 상술한 도면들을 예로 들어 설명한 동작들을 수행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램을 포함할 수 있다.According to various embodiments of the present disclosure, an automatic video generation device may be coupled with a computer (or computing device) as hardware and may include a computer program stored in a computer-readable recording medium to perform the operations described with reference to the drawings described above as examples.
또한, 동영상 자동 생성 장치는, 메모리에 로드된 프로그램들의 명령들(instructions)을 실행하는 적어도 하나의 프로세서를 포함하는 컴퓨팅 장치로 구현될 수 있으며, 상술한 도면들을 예로 들어 설명한 동작들을 실행하도록 기술된 명령들을 포함하는 프로그램이 메모리에 로드될 수 있다.Additionally, the automatic video generation device may be implemented as a computing device including at least one processor that executes instructions of programs loaded into a memory, and a program including instructions described to execute the operations described with reference to the drawings as examples may be loaded into the memory.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The devices described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, the devices and components described in the embodiments may be implemented using one or more general-purpose computers or special-purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing instructions and responding to them. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing device is sometimes described as being used alone, but those skilled in the art will appreciate that the processing device may include multiple processing elements and/or multiple types of processing elements. For example, the processing device may include multiple processors, or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are also possible.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing device to perform a desired operation or may independently or collectively command the processing device. The software and/or data may be permanently or temporarily embodied in any type of machine, component, physical device, virtual equipment, computer storage medium or device, or transmitted signal waves, for interpretation by the processing device or for providing instructions or data to the processing device. The software may also be distributed over network-connected computer systems, and stored or executed in a distributed manner. The software and data may be stored on one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program commands that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program commands, data files, data structures, etc., alone or in combination. The program commands recorded on the medium may be those specially designed and configured for the embodiment or may be those known to and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and hardware devices specially configured to store and execute program commands such as ROMs, RAMs, flash memories, etc. Examples of the program commands include not only machine language codes generated by a compiler but also high-level language codes that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiment, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described above by way of limited examples and drawings, those skilled in the art can make various modifications and variations from the above description. For example, appropriate results can be achieved even if the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or are replaced or substituted by other components or equivalents.
그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also included within the scope of the claims.
이상, 본 문서의 상세한 설명에서는 구체적인 실시 예에 관해서 설명하였으나, 본 문서의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 당해 분야에서 통상의 지식을 가진 자에게 있어서 자명하다 할 것이다.Although the detailed description of this document has described specific embodiments, it will be apparent to those skilled in the art that various modifications may be made without departing from the scope of this document.
삭제delete
삭제delete
Claims (10)
상기 동영상 자동 생성 장치에서, 기업 컨텐츠를 수신하는 단계;
상기 동영상 자동 생성 장치에서, 상기 기업 컨텐츠로부터 도메인 특화 용어를 추출하고, 상기 도메인 특화 용어를 입력으로 제 1 인공지능 모델을 학습시키는 단계;
상기 동영상 자동 생성 장치에서, 사용자 쿼리 및 레퍼런스 컨텐츠를 수신하는 단계;
상기 동영상 자동 생성 장치에서, 상기 제 1 인공지능 모델을 이용하여, 샘플 동영상의 구조에 대한 데이터를 상기 레퍼런스 컨텐츠를 기초로 생성하는 단계; 및
상기 동영상 자동 생성 장치에서, 상기 제 1 인공지능 모델과 별개인 제 2 인공지능 모델을 이용하여, 상기 구조에 대한 데이터에 기초하여, 샘플 동영상을 생성하는 단계를 포함하는,
동영상 자동 생성 장치의 동작 방법.
In the operating method of the automatic video generation device,
In the above video automatic generation device, a step of receiving corporate content;
In the above video automatic generation device, a step of extracting domain-specific terms from the corporate content and training a first artificial intelligence model using the domain-specific terms as input;
In the above video automatic generation device, a step of receiving a user query and reference content;
In the above video automatic generation device, a step of generating data on the structure of a sample video based on the reference content using the first artificial intelligence model; and
In the above video automatic generation device, a step of generating a sample video based on data about the structure using a second artificial intelligence model separate from the first artificial intelligence model,
How the video auto-generation device works.
상기 레퍼런스 컨텐츠는,
동영상 템플릿에 대한 정보, 및 동영상 컨텐츠 스타일에 대한 정보를 포함하는,
동영상 자동 생성 장치의 동작 방법.
In the first paragraph,
The above reference content is,
Contains information about video templates and information about video content styles.
How the video auto-generation device works.
상기 사용자 쿼리와 상기 사용자의 과거 행동 데이터의 유사도가 지정된 임계 값 이상인 경우, 상기 샘플 동영상은, 상기 과거 행동 데이터에 포함된 샘플 동영상 정보를 포함하는,
동영상 자동 생성 장치의 동작 방법.
In the first paragraph,
If the similarity between the user query and the user's past behavior data is greater than a specified threshold, the sample video includes sample video information included in the past behavior data.
How the video auto-generation device works.
상기 동영상 자동 생성 장치에서, 상기 사용자 쿼리에 기초하여, 프롬프트를 생성하는 단계;
사용자에 의해 선택된 샘플 동영상에 기초하여, 컨텍스트를 생성하는 단계; 및
상기 프롬프트, 상기 사용자 쿼리, 및 상기 컨텍스트에 기초하여, 동영상 스크립트를 생성하는 단계를 포함하는,
동영상 자동 생성 장치의 동작 방법.
In the first paragraph,
In the above video automatic generation device, a step of generating a prompt based on the user query;
A step of generating a context based on a sample video selected by a user; and
A step of generating a video script based on the above prompt, the user query, and the context,
How the video auto-generation device works.
상기 동영상 자동 생성 장치에서, 상기 동영상 스크립트에 기초하여, 동영상 컨텐츠를 생성하는 단계;
상기 동영상 자동 생성 장치에서, 상기 동영상 컨텐츠를 사용자 디바이스로 송신하는 단계; 및
상기 동영상 자동 생성 장치에서, 사용자에 의해 입력된 완결 정보 또는 수정 정보를 수신하는 단계를 더 포함하는,
동영상 자동 생성 장치의 동작 방법.
In clause 5,
In the above video automatic generation device, a step of generating video content based on the video script;
In the above video automatic generation device, a step of transmitting the video content to a user device; and
In the above video automatic generation device, further comprising a step of receiving completion information or modification information input by a user,
How the video auto-generation device works.
상기 동영상 자동 생성 장치에서, 상기 사용자에 의해 수정 정보를 수신하는 경우, 수정 정보에 기초하여, 동영상 컨텐츠의 객체 정보 및 배경 정보 중 적어도 하나를 수정하여 동영상 컨텐츠를 재생산하여 사용자 디바이스로 송신하는 단계를 더 포함하는,
동영상 자동 생성 장치의 동작 방법.
In Article 6,
In the above video automatic generation device, when receiving modification information by the user, the step of reproducing the video content by modifying at least one of the object information and the background information of the video content based on the modification information and transmitting the reproducing video content to the user device is further included.
How the video auto-generation device works.
적어도 하나의 프로세서; 및
인스트럭션들을 저장하는 메모리를 포함하고,
상기 인스트럭션들은, 상기 적어도 하나의 프로세서에 의해 개별적으로 또는 집합적으로 실행될 때, 상기 프로세서에서,
기업 컨텐츠를 수신하고,
상기 기업 컨텐츠로부터 도메인 특화 용어를 추출하고, 상기 도메인 특화 용어를 입력으로 제 1 인공지능 모델을 학습시키고
사용자 쿼리 및 레퍼런스 컨텐츠를 수신하고,
상기 제 1 인공지능 모델을 이용하여, 샘플 동영상의 구조에 대한 데이터를 상기 레퍼런스 컨텐츠를 기초로 생성하고,
상기 제 1 인공지능 모델과 별개인 제 2 인공지능 모델을 이용하여, 상기 구조에 대한 데이터에 기초하여, 샘플 동영상을 생성하도록 동작하는 동영상 자동 생성 장치.
In the automatic video generation device,
at least one processor; and
Contains memory that stores instructions,
The above instructions, when individually or collectively executed by the at least one processor,
Receive corporate content,
Extract domain-specific terms from the above corporate content, and train the first artificial intelligence model with the domain-specific terms as input.
Receive user queries and reference content,
Using the first artificial intelligence model, data on the structure of the sample video is generated based on the reference content,
An automatic video generation device that operates to generate a sample video based on data about the structure using a second artificial intelligence model separate from the first artificial intelligence model.
컴퓨터 프로그램.
A computer-readable recording medium, which is combined with hardware and is stored to perform the operation method of the automatic video generation device of any one of claims 1, 2, 4 to 7,
Computer program.
사용자 쿼리를 입력 받는 사용자 디바이스; 및
동영상 자동 생성 장치를 포함하고,
상기 동영상 자동 생성 장치는,
기업 컨텐츠를 수신하고, 상기 기업 컨텐츠로부터 도메인 특화 용어를 추출하고, 상기 도메인 특화 용어를 입력으로 제 1 인공지능 모델을 학습시키고, 사용자 쿼리 및 레퍼런스 컨텐츠를 수신하고, 상기 제 1 인공지능 모델을 이용하여, 샘플 동영상의 구조에 대한 데이터를 상기 레퍼런스 컨텐츠를 기초로 생성하고, 상기 제 1 인공지능 모델과 별개인 제 2 인공지능 모델을 이용하여, 상기 구조에 대한 데이터에 기초하여, 샘플 동영상을 생성하는, 동영상 자동 생성 시스템.In the automatic video generation system,
A user device for receiving user queries; and
Including a video auto-generation device,
The above video automatic generation device,
A video automatic generation system which receives corporate content, extracts domain-specific terms from the corporate content, trains a first artificial intelligence model using the domain-specific terms as input, receives a user query and reference content, generates data on the structure of a sample video based on the reference content using the first artificial intelligence model, and generates a sample video based on the data on the structure using a second artificial intelligence model separate from the first artificial intelligence model.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020240116580A KR102801836B1 (en) | 2024-08-29 | 2024-08-29 | Method and apparatus for automatically generating enterprise-related videos that reflects references and recommends expression |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020240116580A KR102801836B1 (en) | 2024-08-29 | 2024-08-29 | Method and apparatus for automatically generating enterprise-related videos that reflects references and recommends expression |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR102801836B1 true KR102801836B1 (en) | 2025-05-07 |
Family
ID=95710019
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020240116580A Active KR102801836B1 (en) | 2024-08-29 | 2024-08-29 | Method and apparatus for automatically generating enterprise-related videos that reflects references and recommends expression |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR102801836B1 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20210193187A1 (en) * | 2019-12-23 | 2021-06-24 | Samsung Electronics Co., Ltd. | Apparatus for video searching using multi-modal criteria and method thereof |
| KR102560609B1 (en) | 2022-10-27 | 2023-07-27 | 주식회사 일만백만 | Video generation method and server performing thereof |
| KR20230140849A (en) * | 2022-03-30 | 2023-10-10 | 중앙대학교 산학협력단 | Apparatus and method for video content recommendation |
| KR102613621B1 (en) * | 2023-08-24 | 2023-12-14 | 주식회사 더블유더블유디코리아 | Method, device and system for generating articles for company promotion using generative artificial intelligence model |
-
2024
- 2024-08-29 KR KR1020240116580A patent/KR102801836B1/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20210193187A1 (en) * | 2019-12-23 | 2021-06-24 | Samsung Electronics Co., Ltd. | Apparatus for video searching using multi-modal criteria and method thereof |
| KR20230140849A (en) * | 2022-03-30 | 2023-10-10 | 중앙대학교 산학협력단 | Apparatus and method for video content recommendation |
| KR102560609B1 (en) | 2022-10-27 | 2023-07-27 | 주식회사 일만백만 | Video generation method and server performing thereof |
| KR102613621B1 (en) * | 2023-08-24 | 2023-12-14 | 주식회사 더블유더블유디코리아 | Method, device and system for generating articles for company promotion using generative artificial intelligence model |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10949744B2 (en) | Recurrent neural network architectures which provide text describing images | |
| US12190076B2 (en) | Systems and methods for intelligent source content routing | |
| US11995414B1 (en) | Automatic post-editing systems and methods | |
| US20210256543A1 (en) | Predictive Analytics Diagnostic System and Results on Market Viability and Audience Metrics for Scripted Media | |
| US12124524B1 (en) | Generating prompts for user link notes | |
| US20170132198A1 (en) | Provide interactive content generation for document | |
| CN120525078A (en) | Digital content creation | |
| KR102801827B1 (en) | Method and apparatus for generating enterprise-related videos reflecting brand identity | |
| KR102842683B1 (en) | Method and system for automatically video generating based on hybrid rendering between user terminal and server | |
| CN117273996A (en) | Contract processing method, contract processing device, computer equipment and storage medium | |
| Ogola | Between fear and hope: Generative AI, ChatGPT and journalism | |
| CN120723217A (en) | Front-end code generation method, system and electronic device based on large language model | |
| KR102801836B1 (en) | Method and apparatus for automatically generating enterprise-related videos that reflects references and recommends expression | |
| KR102801838B1 (en) | Method and apparatus for generating enterprise-related videos reflecting business domain characteristics | |
| KR102801828B1 (en) | Method and apparatus for generating enterprise-related videos supporting multimodal content block search | |
| KR102772482B1 (en) | Method and system for automatically video generating based on hybrid rendering between user terminal and server | |
| US20250335698A1 (en) | Generating text using machine-learned large language models and presenting text on user interface | |
| CN118918222A (en) | Cross-attention-based image processing method and related equipment thereof | |
| US11907643B2 (en) | Dynamic persona-based document navigation | |
| KR102807167B1 (en) | Method and system for automatically video generating based on hybrid rendering between user terminal and server | |
| KR102821893B1 (en) | Method and system for makimg motion picture using artificial intelligence with enhanced security | |
| KR102861473B1 (en) | Method and device for providing intelligent digital signage content | |
| KR102872884B1 (en) | Method and apparatus for automatically video generating based on homage video analysis | |
| US20250117829A1 (en) | Brand-aligned marketing content generation using structured brand data and generative models | |
| Jacob et al. | A comprehensive survey on AI content generator |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20240829 |
|
| PA0201 | Request for examination |
Patent event code: PA02011R01I Patent event date: 20240829 Comment text: Patent Application |
|
| PA0302 | Request for accelerated examination |
Patent event date: 20240904 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination |
|
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20240927 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20250409 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20250424 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20250424 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |