Search

KR-102960258-B1 - INSTRUCTION-BASED AUTOMATIC DOCUMENT GENERATION METHOD AND SYSTEM THEREFOR

KR102960258B1KR 102960258 B1KR102960258 B1KR 102960258B1KR-102960258-B1

Abstract

인스트럭션 기반 문서 자동 생성 방법 및 그 시스템이 제공된다. 본 개시의 일 실시예에 따른 인스트럭션 기반 문서 자동 생성 방법은, 컴퓨팅 시스템에 의해 수행되는 방법에 있어서, 사용자 단말로부터, 제1 문서에 관한 문서 작성 요청을 수신하는 단계, 상기 문서 작성 요청으로부터 상기 제1 문서와 관련된 검색 대상을 획득하는 단계, 복수의 리소스가 기 저장된 지식 베이스에 대하여, 상기 검색 대상을 검색하는 단계, 상기 검색의 결과를 이용하여, 상기 지식 베이스에 저장된 리소스에 관한 문서 전처리 데이터를 획득하는 단계 및 상기 문서 전처리 데이터 및 상기 문서 작성 요청을 기 학습된 대규모 언어 모델(Large Language Model)에 입력하고, 상기 제1 문서에 대한 초안 컨텐츠를 생성하는 단계를 포함할 수 있다.

Inventors

  • 이상연
  • 송주원
  • 양창식

Assignees

  • 주식회사 엘리먼츠

Dates

Publication Date
20260506
Application Date
20250707

Claims (8)

  1. 컴퓨팅 시스템에 의해 수행되는 방법에 있어서, 사용자 단말로부터, 제1 문서에 관한 문서 작성 요청을 수신하는 단계; 상기 문서 작성 요청으로부터 상기 제1 문서와 관련된 검색 대상을 획득하는 단계; 복수의 리소스가 기 저장된 지식 베이스에 대하여, 상기 검색 대상을 검색하는 단계; 상기 검색의 결과를 이용하여, 상기 지식 베이스에 저장된 리소스에 관한 문서 전처리 데이터를 획득하는 단계; 및 상기 문서 전처리 데이터 및 상기 문서 작성 요청을 기 학습된 대규모 언어 모델(Large Language Model)에 입력하고, 상기 제1 문서에 대한 초안 컨텐츠를 생성하는 단계를 포함하되, 상기 검색 대상을 획득하는 단계는, 상기 문서 작성 요청을 벡터화하고, 요청 임베딩 벡터를 생성하는 단계; 및 기 정의된 분류 모델을 이용하여, 상기 요청 임베딩 벡터를 기 정의된 카테고리 별로 분류하는 단계를 포함하되, 상기 분류 모델은, 상기 요청 임베딩 벡터의 구성 요소를 상기 문서 작성 요청에 대응되는 문서 행위, 문서 목적 및 참조 대상 리소스 중 적어도 하나 이상으로 분류하는 모델이고, 상기 요청 임베딩 벡터를 기 정의된 카테고리 별로 분류하는 단계는, 상기 문서 행위, 상기 문서 목적 및 상기 참조 대상 리소스를 구조화하는 단계를 포함하고, 상기 지식 베이스는, 업로드 리소스가 기 정의된 기준에 따라 의미 단위 별로 파싱되어, 각 의미 단위에 대응되는 청크(chunk)를 저장한 제1 데이터베이스, 상기 청크 각각에 대하여 무작위로 암호화하고, 상기 암호화된 청크 각각을 상기 지식 베이스에 저장된 디렉터리 정보를 매핑하여 저장한 제2 데이터베이스 및 상기 청크를 벡터화한 의미 임베딩을 저장한 제3 데이터베이스를 포함하고, 상기 제1 문서에 대한 초안 컨텐츠를 생성하는 단계는, 상기 제2 데이터베이스에 저장된 암호화된 청크에 관한 디렉터리 정보를 상기 대규모 언어 모델에 입력하는 단계를 포함하는, 인스트럭션 기반 문서 자동 생성 방법.
  2. 삭제
  3. 제1 항에 있어서, 상기 문서 작성 요청은, 상기 제1 문서의 작성에 필요한 제1 리소스를 지정하는 제1 인스트럭션을 포함하고, 상기 분류하는 단계는, 참조 대상에 관한 제1 카테고리에 관하여 상기 제1 인스트럭션에 대응되는 제1 요청 임베딩 벡터를 할당하는 단계를 포함하는, 인스트럭션 기반 문서 자동 생성 방법.
  4. 제3 항에 있어서, 상기 제1 인스트럭션은, 상기 문서 작성 요청에 포함된 지정 특수 문자에 의해 식별되는 것인, 인스트럭션 기반 문서 자동 생성 방법.
  5. 삭제
  6. 제1 항에 있어서, 상기 검색 대상을 검색하는 단계는, 상기 제2 데이터베이스로부터, 상기 검색 대상에 포함된 카테고리에 대응되는 값과 일치하는 키워드가 존재하는 제1 리소스를 획득하는 단계; 상기 제3 데이터베이스로부터, 상기 검색 대상에 포함된 카테고리에 대응되는 임베딩 벡터와 유사도가 기준치 이상인 벡터가 존재하는 제2 리소스를 획득하는 단계; 및 상기 제1 리소스 및 상기 제2 리소스에 대하여 상기 문서 작성 요청을 매핑하여 복수의 후보 쌍을 생성하는 단계; 상기 복수의 후보 쌍 각각에 대하여, 상기 후보 쌍에 포함된 문서 작성 요청과 리소스 간의 문맥 기반의 관련도 점수를 연산하는 단계; 및 상기 관련도 점수가 높은 순서대로, 기 정의된 개수의 후보 쌍을 선택하는 단계를 포함하는, 인스트럭션 기반 문서 자동 생성 방법.
  7. 제1 항에 있어서, 상기 제1 문서에 대한 초안 컨텐츠를 생성하는 단계는, 상기 초안 컨텐츠의 생성 진행률 및 상기 초안 컨텐츠를 생성하기 위해 참조한 리소스에 관한 정보를 실시간으로 디스플레이하는 단계를 포함하는, 인스트럭션 기반 문서 자동 생성 방법.
  8. 통신 인터페이스; 컴퓨터 프로그램이 로드되는 메모리; 및 상기 컴퓨터 프로그램이 실행되는 하나 이상의 프로세서를 포함하되, 상기 컴퓨터 프로그램은, 사용자 단말로부터, 제1 문서에 관한 문서 작성 요청을 수신하는 동작; 상기 문서 작성 요청으로부터 상기 제1 문서와 관련된 검색 대상을 획득하는 동작; 복수의 리소스가 기 저장된 지식 베이스에 대하여, 상기 검색 대상을 검색하는 동작; 상기 검색의 결과를 이용하여, 상기 지식 베이스에 저장된 리소스에 관한 문서 전처리 데이터를 획득하는 동작; 및 상기 문서 전처리 데이터 및 상기 문서 작성 요청을 기 학습된 대규모 언어 모델(Large Language Model)에 입력하고, 상기 제1 문서에 대한 초안 컨텐츠를 생성하는 동작을 수행하는 인스트럭션들(instructions)을 포함하되, 상기 검색 대상을 획득하는 동작은, 상기 문서 작성 요청을 벡터화하고, 요청 임베딩 벡터를 생성하는 동작; 및 기 정의된 분류 모델을 이용하여, 상기 요청 임베딩 벡터를 기 정의된 카테고리 별로 분류하는 동작을 포함하되, 상기 분류 모델은, 상기 요청 임베딩 벡터의 구성 요소를 상기 문서 작성 요청에 대응되는 문서 행위, 문서 목적 및 참조 대상 리소스 중 적어도 하나 이상으로 분류하는 모델이고, 상기 요청 임베딩 벡터를 기 정의된 카테고리 별로 분류하는 동작은, 상기 문서 행위, 상기 문서 목적 및 상기 참조 대상 리소스를 구조화하는 동작을 포함하고, 상기 지식 베이스는, 업로드 리소스가 기 정의된 기준에 따라 의미 단위 별로 파싱되어, 각 의미 단위에 대응되는 청크(chunk)를 저장한 제1 데이터베이스, 상기 청크 각각에 대하여 무작위로 암호화하고, 상기 암호화된 청크 각각을 상기 지식 베이스에 저장된 디렉터리 정보를 매핑하여 저장한 제2 데이터베이스 및 상기 청크를 벡터화한 의미 임베딩을 저장한 제3 데이터베이스를 포함하고, 상기 제1 문서에 대한 초안 컨텐츠를 생성하는 동작은, 상기 제2 데이터베이스에 저장된 암호화된 청크에 관한 디렉터리 정보를 상기 대규모 언어 모델에 입력하는 동작을 포함하는, 인스트럭션 기반 문서 자동 생성 시스템.

Description

인스트럭션 기반 문서 자동 생성 방법 및 그 시스템{INSTRUCTION-BASED AUTOMATIC DOCUMENT GENERATION METHOD AND SYSTEM THEREFOR} 본 개시는 인스트럭션 기반 문서 자동 생성 방법 및 그 시스템에 관한 것이다. 보다 자세하게는, 사용자의 문서 작성 요청에 대하여 제한된 지식 베이스를 검색하고, 검색된 자료에 기초하여 문서를 자동으로 작성하는 방법 및 그 시스템에 관한 것이다. 최근 다양한 AI 비서 서비스들이 사용자의 데이터를 활용하여 문서 생성, 요약, 질의응답 등의 기능을 제공하고 있다. 특히, 대규모 언어 모델(LLM)을 기반으로 한 인공지능 시스템은 사용자의 입력 데이터를 서버로 전송하여 분석한 후 결과를 생성하는 구조로 운영된다. 이러한 시스템들은 종종 검색 증강 생성(RAG: Retrieval-Augmented Generation) 기법을 도입하여 AI가 자체 학습 없이 외부 리소스를 기반으로 응답의 정확도를 높이고 있으나, 대부분 중앙 서버에서 데이터를 처리하고 저장하는 방식을 채택하고 있다. 이러한 기존 기술들은 외부 서버에 사용자 문서가 전송되고 일시적 또는 영구적으로 저장될 수 있다는 점에서 보안 우려를 야기한다. 특히, 법률 문서, 기업 내부 자료, 민감한 개인정보를 포함한 콘텐츠의 경우, 사용자는 데이터 유출 가능성에 대해 지속적인 불안을 느끼게 된다. 따라서, 문서 생성 기능을 제공하면서도 사용자 데이터를 로컬 환경에서 처리하여 외부 유출 없이 안전하게 보호할 수 있는 기술에 대한 수요가 높아지고 있다. 도 1은 본 개시의 몇몇 실시예들에 따른 문서 작업 시스템의 구성 및 동작을 설명하기 위한 시스템 구성도이다. 도 2는 본 개시의 몇몇 실시예들에 따른 사용자 단말에 표시되는 문서 작성 시스템의 UI 구성을 나타내는 도면이다. 도 3은 본 개시의 몇몇 실시예들에 따른 사용자 단말에 표시되는 문서 작성 시스템의 UI 구성의 예시를 나타내는 도면이다. 도 4는 본 개시의 몇몇 실시예들에 따른 인스트럭션 기반 문서 자동 생성 방법의 동작을 설명하기 위한 순서도이다. 도 5는 도 4를 참조하여 설명한, 본 개시의 몇몇 실시예들에 따른 인스트럭션 기반 문서 자동 생성 방법의 세부 동작을 설명하기 위한 상세 순서도이다. 도 6은 본 개시의 몇몇 실시예들에 따른 검색 대상을 획득하는 방법을 설명하기 위한 도면이다. 도 7은 본 개시의 몇몇 실시예들에 따른 지식 베이스에 포함된 데이터베이스에 저장된 데이터의 필드를 설명하기 위한 도면이다. 도 8은 도 4를 참조하여 설명한, 본 개시의 몇몇 실시예들에 따른 인스트럭션 기반 문서 자동 생성 방법의 세부 동작을 설명하기 위한 상세 순서도이다. 도 9는 본 개시의 몇몇 실시예들에 따른 초안 컨텐츠를 생성하는 방법을 설명하기 위한 도면이다. 도 10은 본 개시의 몇몇 실시예들에 따른 시스템들을 구현할 수 있는 예시적인 컴퓨팅 장치를 도시한다. 이하, 첨부된 도면을 참조하여 본 개시의 다양한 실시예들을 상세히 설명한다. 본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 개시의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 개시의 기술적 사상을 완전하도록 하고, 본 개시가 속한 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다. 본 개시의 다양한 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 다른 정의가 없다면, 이하의 실시예들에서 사용되는 용어(기술 및 과학적 용어를 포함)는 본 개시가 속한 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있으나, 이는 관련 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수도 있다. 본 개시에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시의 범주를 제한하고자 하는 것은 아니다. 이하의 실시예들에서 사용되는 단수의 표현은 문맥상 명백하게 단수인 것으로 특정되지 않는 한, 복수의 개념을 포함한다. 또한, 복수의 표현은 문맥상 명백하게 복수인 것으로 특정되지 않는 한, 단수의 개념을 포함한다. 또한, 이하의 실시예들에서 사용되는 제1, 제2, A, B, (a), (b) 등의 용어는 어떤 구성요소를 다른 구성요소와 구별하기 위해 사용되는 것일 뿐, 그 용어에 의해 해당 구성요소의 본질이나 차례 또는 순서 등이 한정되지는 않는다. 이하, 첨부된 도면들을 참조하여 본 개시의 다양한 실시예들에 대하여 상세하게 설명한다. 이하, 도 1을 참조하여, 본 개시의 몇몇 실시예들에 따른 문서 작업 시스템의 구성 및 동작을 설명한다. 도 1은 본 개시의 몇몇 실시예들에 따른 문서 작업 시스템의 구성 및 동작을 설명하기 위한 시스템 구성도이다. 도 1을 참조하면, 문서 작업 시스템은 문서 작성 시스템(1), 사용자 단말(30) 및 LLM 서버(40)를 포함하여 구성될 수 있다. 문서 작성 시스템(1)은 서비스 서버(10) 및 제1 데이터베이스(21), 제2 데이터베이스(22) 및 제3 데이터베이스(23)를 포함하는 지식 베이스(20)를 포함하여 구성될 수 있다. 다만, 본 개시의 범위가 이에 한정되는 것은 아니다. 경우에 따라서는, 문서 작업 시스템이 도 1에 도시되지 않은 모듈/장치/시스템을 더 포함하는 형태로 구성될 수도 있다. 또는, 도 1에 도시된 구성요소들(1 내지 40) 중 적어도 일부가 제외된 형태로 문서 작업 시스템이 구성될 수도 있다. 사용자 단말(30)은 문서 작업 시스템의 사용자가 사용하는 단말일 수 있다. 사용자는 사용자 단말(30)을 통해 특정 문서의 작성 요청, 수정 요청 등을 입력할 수 있다. 사용자 단말(30)은 다양한 사용자의 요청을 서비스 서버(10)로 송신할 수 있다. 서비스 서버(11)는 사용자의 요청에 따라 문서를 자동으로 작성하거나 작성된 문서를 수정하거나 작성된 문서의 프레임워크를 수정할 수 있다. 서비스 서버(11)는 사용자의 요청을 달성하기 위해 참조가 필요한 데이터를 검색 증강 생성(RAG: Retrieval-Augmented Generation) 기법을 이용하여 지식 베이스(20)에 검색할 수 있다. 지식 베이스(20)는 제1 데이터베이스(21), 제2 데이터베이스(22) 및 제3 데이터베이스(23)를 포함하여 구성될 수 있다. 제1 데이터베이스(21)는 사용자가 업로드하는 리소스(e.g., 문서 파일, 웹링크, 폴더 등)에 대하여 기 정의된 기준에 따라 의미 단위 별로 파싱(parsing)되어, 각 의미 단위에 대응되는 청크(chunk)를 저장할 수 있다. 즉, 제1 데이터베이스(21)는 사용자의 리소스 업로드 요청에 따라, 업로드 된 리소스에 대하여 1차적으로 의미 단위 별로 전처리를 수행한 데이터를 저장하는 데이터베이스일 수 있다. 제2 데이터베이스(22)는 상기 청크 각각에 대하여, 상기 청크가 지식 베이스(20)에 저장된 디렉터리 정보를 매핑한 데이터를 저장할 수 있다. 즉, 제2 데이터베이스(22)는 업로드 된 리소스에 대하여 전처리가 수행된 데이터를 문서 작성 시스템(1)에 할당된 저장 스택에서 어느 디렉터리에 저장되어 있는지에 관한 정보를 저장할 수 있다. 사용자가 특정 문서를 지정하여 문서 작성 요청 등을 작성하는 경우, 서비스 서버(10)는 제2 데이터베이스(22)에 저장된 디렉터리 정보를 이용하여, 특정 문서를 신속하게 탐색할 수 있다. 서비스 서버(10)는 상기 청크를 무작위로 암호화하고, 제2 데이터베이스(22)에 암호화 된 청크에 관한 정보를 저장할 수 있다. 이와 같이 암호화를 수행함으로써, 서비스 서버(10)가 사용자의 요청에 따라 문서 작성 요청 등을 LLM 서버(40)에 입력하더라도, 업로드 된 문서에 관한 원본 데이터는 LLM에 입력되지 않는다. 따라서, 사용자가 업로드한 리소스에 대한 보안을 유지할 수 있다는 장점이 있다. 제3 데이터베이스(23)는 상기 청크 각각에 대하여, 상기 청크 각각을 벡터화한 의미 임베딩 벡터를 저장하는 데이터베이스일 수 있다. 즉, 제3 데이터베이스(23)는 특정 문서에서 파싱된 의미 단위에 대한 임베딩 벡터를 저장할 수 있다. 서비스 서버(10)는 제3 데이터베이스(23)에 저장된 청크 각각에 대한 의미 임베딩 벡터를 이용하여, 사용자의 요청에 대응되는 임베딩 벡터와 유사도가 기준치 이상인 의미 임베딩 벡터에 대응되는 청크를 검색할 수 있다. 다만, 본 개시의 범위가 위에 한정되는 것은 아니고, 지식 베이스(20)는 상기 데이터베이스(21, 22, 23) 외에 다른 종류의 데이터베이스를 포함하여 구성될 수 있다. 서비스 서버(10)는 사용자의 요청에 따라 상기 데이터베이스(21, 22, 23)를 각각 필요에 따라 검색함으로써, 지식 베이스(20)에서 사용자의 요청에 대하여 지식 베이스(20)에 저장된 데이터 중에서 참조가 필요한 데이터를 보다 신속하게 획득할 수 있다는 장점이 있다. 이에 관하여는, 도 7을 참조하여 자세하게 설명한다. 서비스 서버(10)는 사용자의 요청에 대하여, 지식 베이스(20)에 저장된 데이터 중에서 참조가 필요한 데이터를 획득하고, 획득한 데이터를 LLM(Large Language Model) 서버(40)에 사용자의 요청과 함께 입력할 수 있다. LLM 서버(40)는 문서 작성 시스템(1)의 운영 주체와 동일한 운영주체가 운영하는 서버이거나 문서 작성 시스템(1)의 운영 주체와 별개의 제3자가 운영하는 서버일 수 있다. 서비스 서버(10)는 사용자의 요청(e.g., 프롬프트)와 함께 제2 데이터베이스(22)에 저장된 암호화된 청크에 관한 정보를 LLM 서버(40)에 입력할 수 있다. 서비스 서버(10)는 암호화된 청크에 관한 정보를 LLM 서버(40)에 입력함으로써, 사용자가 업로드한 리소스는 문서 작성 시스템(1)의 로컬에서만 저장되고, 문서 작성 시