KR102658967B1 - 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템 - Google Patents

인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템 Download PDF

Info

Publication number
KR102658967B1
KR102658967B1 KR1020230086098A KR20230086098A KR102658967B1 KR 102658967 B1 KR102658967 B1 KR 102658967B1 KR 1020230086098 A KR1020230086098 A KR 1020230086098A KR 20230086098 A KR20230086098 A KR 20230086098A KR 102658967 B1 KR102658967 B1 KR 102658967B1
Authority
KR
South Korea
Prior art keywords
artificial intelligence
model
intelligence model
task
present disclosure
Prior art date
Application number
KR1020230086098A
Other languages
English (en)
Inventor
장정식
Original Assignee
주식회사 렛서
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 주식회사 렛서 filed Critical 주식회사 렛서
Priority to KR1020230086098A priority Critical patent/KR102658967B1/ko
Application granted granted Critical
Publication of KR102658967B1 publication Critical patent/KR102658967B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 개시는 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템을 제공한다. 인공지능 기반 솔루션을 제공하기 위한 방법은, 문제 상황을 나타내는 제1 문장을 획득하는 단계, 획득된 제1 문장을 입력으로 하는 학습된 제1 언어 모델을 이용하여, 문제 상황을 해결하는 적어도 하나의 인공지능 태스크를 포함하는 분석 정보를 획득하는 단계, 및 획득된 분석 정보를 입력으로 하는 학습된 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 제2 문장을 생성하는 단계를 포함할 수 있다.

Description

인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템{METHOD, ELECTRONIC DEVICE, AND SYSTEM FOR PROVIDING SOLUTION BASED ON ARTIFICIAL INTELLIGENCE}
본 개시는 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치 및 시스템 에 관한 것이며, 좀 더 상세하게는, 언어 모델을 이용하여 문제 상황에 적절한 인공지능 태스크를 획득하고, 인공지능 태스크에 기초한 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치 및 시스템에 관한 것이다.
인공지능 모델의 연구는 현재 매우 활발하게 이루어지고 있다. 인공지능 모델은 비즈니스 문제 상황을 해결하는 데에 매우 유용하며, 많은 잠재력을 가지고 있다.
그러나, 인공지능 모델은 고도의 전문 지식과 기술적 능력을 필요로 한다. 인공지능 모델을 개발하고 훈련시키기 위해서는 데이터 과학, 머신러닝 및 딥러닝 분야의 전문 지식이 필요하다. 또한, 인공지능 모델은 대량의 데이터를 필요로 하며, 높은 컴퓨팅 성능과 복잡한 알고리즘을 요구한다. 뿐만 아니라, 인공지능 모델은 데이터의 품질과 양에 매우 민감하며, 인공지능 모델의 성능은 입력 데이터의 품질과 다양성에 크게 의존한다. 그러나 많은 문제 상황들에 있어서, 충분한 양과 질의 데이터를 확보하는데 어려움이 있을 수 있으며, 데이터 수집 및 가공 과정에서 문제가 발생할 수 있다. 따라서, 일반적인 비즈니스 사용자들에게는 모델을 구현하고 사용하는 것이 어려운 도전과제이다.
이러한 문제를 해결하기 위해서는 사용자 친화적인 도구와 플랫폼의 개발이 필요하며, 이를 통해 비즈니스 사용자들이 보다 쉽게 인공지능 모델을 이용하여 문제를 해결할 수 있는 환경을 조성할 필요가 있다.
본 개시의 목적은, 언어 모델을 이용하여 문제 상황에 적절한 인공지능 태스크를 획득하고, 인공지능 태스크에 기초한 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템을 제공하는 것이다.
본 개시의 일 실시예에 있어서, 인공지능 기반 솔루션을 제공하기 위한 방법이 제공될 수 있다. 상기 방법은, 문제 상황을 나타내는 제1 문장을 획득하는 단계, 상기 획득된 제1 문장을 입력으로 하는 학습된 제1 언어 모델을 이용하여, 상기 문제 상황을 해결하는 적어도 하나의 인공지능 태스크를 포함하는 분석 정보를 획득하는 단계, 및 상기 획득된 분석 정보를 입력으로 하는 학습된 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 제2 문장을 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 방법은, 상기 분석 정보를 입력으로 하는 학습된 제3 언어 모델을 이용하여, 미리 저장된 복수의 인공지능 모델들 중, 상기 적어도 하나의 인공지능 태스크 각각에 대응하는 인공지능 모델을 획득하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 방법은, 상기 획득된 인공지능 모델을 포함하는, 상기 문제 상황에 대응하는 인공지능 기반 솔루션 API를 제공하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 획득된 적어도 하나의 인공지능 태스크는 제1 인공지능 태스크 및 상기 제1 인공지능 태스크에 종속성이 있는 제2 인공지능 태스크를 포함할 수 있다. 상기 획득된 인공지능 모델은 상기 제1 인공지능 태스크에 대응하는 제1 인공지능 모델 및 상기 제2 인공지능 태스크에 대응하는 제2 인공지능 모델을 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 방법은, 상기 제1 인공지능 모델과 상기 제2 인공지능 모델 간의 종속성에 기초하여, 상기 제1 인공지능 모델의 출력 값에 대응하는 데이터를 상기 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성하는 단계, 및 상기 제1 인공지능 모델, 상기 생성된 컴포넌트, 및 상기 제2 인공지능 모델을 포함하는, 상기 문제 상황에 대응하는 인공지능 기반 솔루션 API를 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 제1 인공지능 모델과 상기 제2 인공지능 모델 간의 종속성에 기초하여, 상기 제1 인공지능 모델과 상기 제2 인공지능 모델 사이에 상기 제1 인공지능 모델의 출력 값에 대응하는 데이터를 상기 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성하는 단계는, 상기 제1 인공지능 모델, 상기 제2 인공지능 모델, 상기 종속성 중 적어도 하나를 입력으로 하는 학습된 제4 언어 모델을 이용하여, 상기 제1 인공지능 모델의 출력 값에 대응하는 데이터를 상기 제2 인공지능 모델의 입력 값으로 변환하는 명령어 코드를 생성하는 단계, 및 상기 생성된 명령어 코드로 구성되는 상기 컴포넌트를 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 학습된 제3 언어 모델은, 학습된 초거대 언어 모델을 상기 미리 저장된 복수의 인공지능 모델들 각각의 특징에 기초하여 파인-튜닝(fine-tuning)한 모델일 수 있다.
본 개시의 일 실시예에 있어서, 상기 적어도 하나의 인공지능 태스크는, 깊이 추정, 이미지 분류, 이미지 세그멘테이션, 이미지 변환, 객체 검출, 비디오 분류, 조건 없는(unconditional) 이미지 생성, 제로-샷(zero-shot) 이미지 분류, 대화, 필 마스크(fill-mask), 질문-답변, 문장 유사도, 요약, 테이블 질문-답변, 텍스트 분류, 텍스트 생성, 토큰 분류, 번역, 제로-샷 분류, 오디오 분류, 오디오 변환, 자동 음성 인식, 텍스트-음성 변환, 정형 데이터 분류, 정형 데이터 회귀분석, 문서 질문-답변, 특징 추출, 이미지-텍스트 변환, 비주얼(visual) 질문-답변, 강화 학습 중 적어도 하나의 태스크를 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 학습된 제1 언어 모델은, 학습된 초거대 언어 모델을 상기 적어도 하나의 인공지능 태스크와, 상기 적어도 하나의 인공지능 태스크 간의 종속성 중 적어도 하나에 기초하여 파인-튜닝(fine-tuning)한 모델일 수 있다.
본 개시의 일 실시예에 있어서, 상기 생성된 제2 문장을 사용자 단말에 전달하는 단계를 더 포함할 수 있다.
본 개시의 일 실시예에 있어서, 상기 방법을 수행하는 적어도 하나의 인스턱션을 저장하는 컴퓨터 판독가능한 저장매체가 제공될 수 있다.
본 개시의 일 실시예에 있어서, 인공지능 기반 솔루션을 제공하기 위한 전자 장치가 제공될 수 있다. 상기 전자 장치는 적어도 하나의 인스트럭션을 저장하는 메모리 및 상기 적어도 하나의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 문제 상황을 나타내는 제1 문장을 획득하고, 상기 획득된 제1 문장을 입력으로 하는 학습된 제1 언어 모델을 이용하여, 상기 문제 상황을 해결하는 적어도 하나의 인공지능 태스크를 포함하는 분석 정보를 획득하고, 및 상기 획득된 분석 정보를 입력으로 하는 학습된 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 제2 문장을 생성할 수 있다.
본 개시의 일 실시예에 있어서, 인공지능 기반 솔루션을 제공하기 위한 시스템이 제공될 수 있다. 상기 시스템은, 사용자 단말 및 전자 장치를 포함할 수 있다. 전자 장치는, 사용자 단말로부터 제1 문장을 획득하고, 상기 획득된 제1 문장을 입력으로 하는 학습된 제1 언어 모델을 이용하여, 상기 문제 상황을 해결하는 적어도 하나의 인공지능 태스크를 포함하는 분석 정보를 획득하고, 및 상기 획득된 분석 정보를 입력으로 하는 학습된 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 제2 문장을 생성하고, 사용자 단말에 제2 문장을 전송할 수 있다.
일 실시예에 따르면, 사용자가 인공지능 모델을 이용하여 문제 상황을 해결할 수 있는 인공지능 기반 솔루션이 제공될 수 있다. 일 실시예에 따르면, 문제 상황을 겪는 사용자에게 인공지능 모델을 이용한 문제 해결에 대한 높은 접근성을 제공할 수 있다.
도 1은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하기 위한 시스템을 개략적으로 보여주는 개념도이다.
도 2는 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 전자 장치의 동작 방법을 개략적으로 보여주는 블록도이다.
도 3은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다.
도 4는 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다.
도 5는 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다.
도 6은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다.
도 7은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션 API를 제공하는 단계를 좀 더 상세하게 보여주는 흐름도이다.
도 8은 본 개시의 일 실시예에 따른 제1 인공지능 모델의 출력 값에 대응하는 데이터를 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성하는 단계를 좀 더 상세하게 보여주는 흐름도이다.
이하에서, 본 개시의 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 용이하게 실시할 수 있을 정도로, 실시예들이 명확하게 상세하게 기재될 것이다. 그러나, 권리범위는 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면 상의 유사한 구성요소에 대해서는 동일 또는 유사한 참조부호가 사용되고, 동일 또는 유사한 구성요소에 대해서 중복되는 설명은 생략한다.
아래 설명에서 사용되는 용어는, 연관되는 기술 분야에서 일반적이고 보편적인 것으로 선택되었으나, 기술의 발달 및/또는 변화, 관례, 기술자의 선호 등에 따라 다른 용어가 있을 수 있다. 따라서, 아래 설명에서 사용되는 용어는 기술적 사상을 한정하는 것으로 이해되어서는 안 되며, 실시예들을 설명하기 위한 예시적 용어로 이해되어야 한다.
또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세한 그 의미를 기재할 것이다. 따라서 아래 설명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 명세서 전반에 걸친 내용을 토대로 이해되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 또한, 본 명세서에서 사용되는 '제1' 또는 '제2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한, 각각의 도면에서 사용된 도면 부호는 각각의 도면을 설명하기 위한 것일 뿐, 상이한 도면들 각각에서 사용된 상이한 도면 부호가 상이한 요소를 나타내기 위한 것은 아니다. 이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
본 개시에서, '인공지능(Artificial Intelligence)'과 관련된 기능은 프로세서와 메모리를 통해 동작된다. 프로세서는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 하나 또는 복수의 프로세서는, 메모리에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
본 개시에서, '인공지능 모델'은 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 심층 신경망 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 심층 신경망 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다. 예를 들어, 심층 신경망 모델은 CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등을 포함할 수 있으나, 이에 한정되지 않는다.
본 개시에서, '언어 모델'은 자연어 처리(Natural Language Processing, NLP) 분야에서 사용되는 인공지능 모델을 나타낼 수 있다. '언어 모델'은 텍스트 데이터를 입력으로 받아 처리하고, 언어에 대한 이해 및 생성 중 적어도 하나의 기능을 수행할 수 있다. '언어 모델'은 대규모 데이터셋에서 사전 학습된 초거대 언어 모델을 파인-튜닝(fine-tuning)한 모델일 수 있다. '언어 모델'은 언어 이해 모델(Language Understanding Model, LUM)과 언어 생성 모델(Language Generation Model, LGM)을 포함할 수 있다. 언어 이해 모델은 주어진 입력 텍스트를 이해(또는 분석)하고 처리할 수 있다. 예를 들어, 언어 이해 모델은 주어진 질문에 대한 답변을 생성하거나, 주어진 문장의 의미를 파악하고 요약하는 작업을 수행할 수 있다. 언어 생성 모델은 주어진 입력 텍스트의 문맥이나 조건에 따라 새로운 텍스트를 생성할 수 있다. 예를 들어, 언어 생성 모델은 주어진 문장으로부터 이어지는 자연스러운 문장을 생성하거나, 주어진 키워드에 대한 설명을 생성하는 작업을 수행할 수 있다.
본 개시에서, '인공지능 태스크'는 인공지능 모델을 활용하여 수행되는 특정 작업을 나타낼 수 있다.
본 개시에서, '인공지능 기반 솔루션'은 주어진 문제 상황을 적어도 하나의 인공지능 모델을 통해 해결하는 방법을 제시하는 것을 나타낼 수 있다.
도 1은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하기 위한 시스템을 개략적으로 보여주는 개념도이다. 도 1을 참조하면, 인공지능 기반 솔루션을 제공하기 위한 시스템(이하, 시스템)(100)은 사용자 단말(110) 및 전자 장치(120)를 포함할 수 있다.
도 1을 참조하면, 사용자 단말(110)은 인공지능 기반 솔루션을 제공하는 애플리케이션을 실행할 수 있다. 사용자 단말(110)은 실행된 애플리케이션을 통해 제공되는 출력 인터페이스를 사용자 단말(110)의 디스플레이에 표시할 수 있다. 사용자 단말(110)의 기능은 유저 인터페이스를 통한 사용자와의 상호작용에 의해 구현될 수 있다. 예를 들어, 사용자 단말(110)은 스마트폰, 태블릿 PC, 노트북, 데스크톱 컴퓨터, 게임 콘솔, 스마트 워치, 스마트 TV, 차량 네비게이션 시스템, 휴대용 미디어 플레이어, 가상현실 디바이스, 증강현실 디바이스, 스마트 가전, 사물인터넷 장치 등을 포함할 수 있으나, 본 개시는 이에 제한되지 않으며, 텍스트를 입출력하거나, 텍스트에 대응하는 데이터를 입출력할 수 있는 임의의 전자 장치일 수 있다.
사용자 단말(110)은 문제 상황에 대응하는 문장(이하에서, 제1 문장)을 사용자 입력으로 획득할 수 있다. 예를 들어, 사용자 단말(110)은 입력 인터페이스를 통해 사용자 입력을 획득할 수 있다. 예를 들어, 입력 인터페이스는 사용자로부터의 입력(이하에서, 사용자 입력)을 수신하기 위한 것이다. 입력 인터페이스는 키 패드(key pad), 키보드, 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 터치 스크린, 컨트롤러, 조그 휠, 조그 스위치, 마우스, 키보드, 무선 펜, 음성 인식 장치, 제스처 인식 장치 중 적어도 하나일 수 있으나, 이에 한정되는 것은 아니다. 본 개시의 일 실시예에 있어서, 사용자 단말(110)은 제1 문장에 대응하는 텍스트 데이터를 획득할 수 있다. 본 개시의 일 실시예에 있어서, 사용자 단말(110)은 사용자 음성을 통해 제1 문장에 대응하는 오디오 데이터를 획득할 수 있다. 사용자 단말(110)은 오디오 데이터를 텍스트 데이터로 변환할 수 있다.
사용자 단말(110)은 네트워크(130)를 통해 전자 장치(120)와 데이터를 송수신할 수 있다. 사용자 단말(110)은 전자 장치(120)에 제1 문장을 전송할 수 있다. 제1 사용자 단말(110)은 전자 장치(120)로부터 문제 상황을 해결하는 인공지능 기반 솔루션을 나타내는 문장(이하에서, 제2 문장)을 수신할 수 있다.
사용자 단말(110)은 제2 문장을 애플리케이션을 통해 사용자에게 제공할 수 있다. 예를 들어, 사용자 단말(110)은 제2 문장을 디스플레이에 표시할 수 있다. 예를 들어, 사용자 단말(110)은 제2 문장을 오디오 신호로 변환할 수 있다. 사용자 단말(110)은 스피커를 통해 변환된 오디오 신호를 출력할 수 있다.
네트워크(130)는 다양한 유/무선 네트워크를 포함할 수 있다. 예를 들어, 네트워크(130)는 TCP/IP(Transmission Control Protocol/Internet Protocol)을 채용하는 유선 네트워크, 및/또는 LTE(Long Term Evolution), CDMA(Code Division Multiple Access), Wi-Fi(Wireless Fidelity) 등을 채용하는 무선 네트워크를 포함할 수 있으나, 본 개시는 이에 한정되지 않는다.
전자 장치(120)는 프로세서(121), 스토리지(122), 메모리(124), 및 통신 인터페이스(129)를 포함할 수 있다. 그러나, 도 1에 도시된 전자 장치(120)의 구성요소가 필수 구성요소인 것은 아니며, 전자 장치(200)는 구성요소를 생략하거나, 추가 구성요소를 더 포함할 수 있다. 예를 들어, 본 개시의 일 실시예에 따른 전자 장치(200)에, 도 1에 도시된 바와 달리, 스토리지(122)가 생략될 수 있다.
프로세서(121)는 전자 장치(120)에 포함된 구성들(예컨대, 122, 124)과 전기적으로 연결되어, 전자 장치(120)에 포함된 구성들(예컨대, 122, 124, 129)의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 수행할 수 있다. 예를 들어, 프로세서(121)는 CPU(central processing unit), AP(application processor), GPU(graphic processing unit), 또는 NPU(neural processing unit) 중 적어도 하나를 포함할 수 있다.
프로세서(121)는 다른 구성들 중 적어도 하나로부터 수신된 명령 또는 데이터를 메모리(124)에 로드하여 처리하고, 처리된 데이터를 메모리(124) 또는 스토리지(123)에 저장할 수 있다. 도시된 바와 달리, 프로세서(121)는 기능 및/또는 목적에 따라 하나 이상으로 구현될 수 있다. 적어도 하나의 프로세서는, 전자 장치(120)에 포함된 구성들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 분산하여 수행할 수 있다.
본 개시에서, '인공지능(Artificial Intelligence)'과 관련된 기능은 프로세서(121)와 메모리(124)를 통해 동작된다. 프로세서(121)는 적어도 하나의 프로세서로 구성될 수 있다. 이때, 적어도 하나의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 적어도 하나의 프로세서는, 메모리에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 적어도 하나의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
스토리지(122)는 프로세서(121)에 의해 사용되는 다양한 데이터의 원본 또는 백업본을 저장할 수 있다. 스토리지(122)는 전자 장치(120)의 보조 기억 장치로 이용될 수 있다. 예를 들어, 스토리지(122)는 하드 디스크 드라이브(hard disk drive; HDD) 또는 솔리드 스테이트 드라이브(solid state drive; SSD)로 구현될 수 있다. 도시된 바와 달리, 스토리지(122)는 전자 장치(120) 외부에 배치될 수 있다.
스토리지(122)는 인공지능 모델 데이터베이스(123)를 포함할 수 있다. 인공지능 모델 데이터베이스(123)는 복수의 인공지능 모델들을 포함할 수 있다. 인공지능 모델 데이터베이스(123)는 복수의 인공지능 모델들 각각에 매핑된 인공지능 태스크에 대한 정보를 포함할 수 있다.
본 개시의 일 실시예에 있어서, 인공지능 태스크는, 깊이 추정, 이미지 분류, 이미지 세그멘테이션, 이미지 변환, 객체 검출, 비디오 분류, 조건 없는(unconditional) 이미지 생성, 제로-샷(zero-shot) 이미지 분류, 대화, 필 마스크(fill-mask), 질문-답변, 문장 유사도, 요약, 테이블 질문-답변, 텍스트 분류, 텍스트 생성, 토큰 분류, 번역, 제로-샷 분류, 오디오 분류, 오디오 변환, 자동 음성 인식, 텍스트-음성 변환, 정형 데이터 분류, 정형 데이터 회귀분석, 문서 질문-답변, 특징 추출, 이미지-텍스트 변환, 비주얼(visual) 질문-답변, 강화 학습 중 적어도 하나를 포함할 수 있으나, 본 개시는 이제 제한되지 않으며, 인공지능을 활용하여 해결 가능한 임의의 태스크들을 포함할 수 있다. 본 개시의 일 실시예에 있어서, 하나의 인공지능 태스크에 복수의 인공지능 모델들이 매핑될 수 있다.
본 개시의 일 실시예에 있어서, 하나의 인공지능 태스크에 매핑된 복수의 인공지능 모델들은 동일한 태스크를 수행하지만, 기능이나 목적이 상이하거나, 입출력 값이 상이할 수 있다. 본 개시의 일 실시예에 있어서, 하나의 인공지능 태스크에 매핑된 복수의 인공지능 모델들은 동일한 태스크를 수행하지만, 추론 시간, 배치 크기, 하드웨어 요구사항, 파라미터 수, 및 연산량 중 적어도 하나가 상이할 수 있다.
메모리(124)에는 프로세서(121)에 의하여 처리되거나 처리될 예정인 데이터, 펌웨어, 소프트웨어, 및 프로세스 코드 등이 저장될 수 있다. 메모리(124)는 전자 장치(120)의 주 기억 장치로 이용될 수 있다. 예를 들어, 메모리(124)는 DRAM(dynamic random access memory), SRAM(static random access memory), PRAM(phase-change random access memory), MRAM (magnetic random access memory), FeRAM(ferroelectric random access memory), RRAM(resistive random access memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory)와 같은 다양한 메모리들로 구현될 수 있다. 메모리(124)는 버퍼 메모리, 워킹 메모리, 또는 캐시 메모리로서 지칭될 수 있다. 도시되지 않았지만, 메모리(124)의 개수는 하나 이상일 수 있다.
메모리(124)에는 태스크 플래닝 모듈(125), 인공지능 모델 선택 모듈(126), API 생성 모듈(127), 및 자연어 처리 모듈(128) 중 적어도 하나에 대응되는 데이터 및 프로그램 코드들이 저장될 수 있다.
태스크 플래닝 모듈(125)은 문제 상황을 분석하여 이를 해결하기 위해 필요한 인공지능 태스크를 결정할 수 있다. 본 개시의 일 실시예에 있어서, 태스크 플래닝 모듈(125)은 제1 문장을 입력으로 하는 제1 언어 모델을 이용하여, 문제 해결을 해결하는 적어도 하나의 인공지능 태스크를 포함하는 분석 정보를 획득할 수 있다. 예를 들어, 분석 정보는 인공지능 태스크뿐만 아니라, 제1 문장에 대응하는 분류 정보 또는 의미 정보를 더 포함할 수 있다. 본 개시의 일 실시예에 있어서, 태스크 플래닝 모듈(125)은 분석 정보를 입력으로 하는 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 제2 문장을 생성할 수 있다.
인공지능 모델 선택 모듈(126)은 인공지능 태스크에 기초하여 문제 상황에 대응하는 인공지능 모델을 선택할 수 있다. 인공지능 모델 선택 모듈(126)은 인공지능 모델 데이터베이스(123)에 저장된 복수의 인공지능 모델들 중 적어도 하나의 모델을 선택할 수 있다. 본 개시의 일 실시예에 있어서, 인공지능 모델 선택 모듈(126)은 분석 정보를 입력으로 하는 제3 언어 모델을 이용하여, 복수의 인공지능 모델들 중 적어도 하나의 인공지능 태스크 각각에 대응하는 인공지능 모델을 획득할 수 있다.
API 생성 모듈(127)은 인공지능 모델을 이용하여, 인공지능 기반 솔루션 API를 생성할 수 있다. 본 개시의 일 실시예에 있어서, API 생성 모듈(127)은 인공지능 모델을 입력으로 하는 제4 언어 모델을 이용하여 인공지능 기반 솔루션 API에 대응하는 명령어 코드를 생성할 수 있다. 본 개시의 일 실시예에 있어서, API 생성 모듈(127)은 복수의 인공지능 모델들을 이용하여, 인공지능 기반 솔루션 API를 생성할 수 있다. API 생성 모듈(127)은 복수의 인공지능 모델들 간의 데이터 연속성을 위해, 복수의 인공지능 모델들 간의 입출력 값을 변환하는 컴포넌트를 생성할 수 있다. API 생성 모듈(127)은 복수의 인공지능 모델들 및 컴포넌트를 이용하여 인공지능 기반 솔루션 API를 생성할 수 있다.
자연어 처리 모듈(128)은 훈련된 언어 모델(예컨대, 제1 내지 제4 언어 모델)을 포함할 수 있다. 언어 모델은 기능 또는 목적에 따라 하나 이상일 수 있다. 예를 들어, 제1 언어 모델은 제1 문장에서 문제 상황을 분석하는 언어 이해 모델일 수 있다. 예를 들어, 제2 언어 모델은 제1 언어 모델의 분석 결과에 기초하여 인공지능 기반 솔루션을 생성하는 언어 생성 모델일 수 있다. 본 개시의 일 실시예에 있어서, 자연어 처리 모듈(128)은 초거대 언어 모델을 포함할 수 있다. 제1 내지 제4 언어 모델은 초거대 언어 모델을 파인-튜닝한 모델일 수 있다. 훈련된 언어 모델은 태스크 플래닝 모듈(125), 인공지능 모델 선택 모듈(126), API 생성 모듈(127)의 기능 중 적어도 일부를 수행하는 데 이용될 수 있다.
도시되지 않았지만, 사용자 단말(110)은 프로세서 및 메모리를 포함할 수 있다. 메모리는 프로세서에 의해 실행되는 적어도 하나의 인스트럭션을 포함할 수 있다. 프로세서는 상술한 사용자 단말(110)의 기능의 적어도 일부를 수행하는, 메모리에 저장된 적어도 하나의 인스트럭션을 실행할 수 있다.
도시되지 않았지만, 사용자 단말(110)은 사용자 입력을 획득(또는 수신)하기 위한 입출력 인터페이스를 포함할 수 있다. 입출력 인터페이스는 사용자로부터 제어 명령이나 정보 등을 입력받기 위한 입력 인터페이스(예컨대, 터치 스크린, 하드 버튼, 마이크 등)와, 사용자의 제어에 따른 동작의 실행 결과를 표시하기 위한 출력 인터페이스(예컨대, 디스플레이 패널, 스피커 등)를 포함할 수 있다.
도시되지 않았지만, 사용자 단말(110)은 통신 인터페이스를 포함할 수 있다. 통신 인터페이스는 네트워크(130)를 통해 사용자 단말(110), 및 전자 장치(120) 또는 외부 장치(미도시)와 유선 또는 무선으로 신호(제어 명령 및 데이터 등)를 송수신하기 위한 구성으로서, 다양한 통신 프로토콜을 지원하는 통신 칩셋을 포함하도록 구성될 수 있다.
도 2는 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 전자 장치의 동작 방법을 개략적으로 보여주는 블록도이다. 전자 장치(200)의 구성, 동작, 및 기능은 도 1의 전자 장치(120)의 구성, 동작, 및 기능에 대응할 수 있다. 설명의 편의를 위해, 도 1에서 설명한 내용과 중복되는 내용은 생략한다.
도 2를 참조하면, 전자 장치(200)는 태스크 플래닝 모듈(125), 인공지능 모델 선택 모듈(126), API 생성 모듈(127), 및 자연어 처리 모듈(128)을 포함할 수 있다.
태스크 플래닝 모듈(125)은 문제 상황을 나타내는 문장을 수신할 수 있다. 태스크 플래닝 모듈(125)은 문제 상황을 나타내는 문장에 대응하는 분석 정보(예컨대, 인공지능 태스크)를 생성할 수 있다. 태스크 플래닝 모듈(125)은 인공지능 태스크를 인공지능 모델 선택 모듈(126)에 전달할 수 있다.
본 개시의 일 실시예에 있어서, 태스크 플래닝 모듈(125)은 문제 상황을 나타내는 문장을 자연어 처리 모듈(128)에 전달할 수 있다. 자연어 처리 모듈(128)은 문제 상황을 나타내는 문장을 입력으로 하는 제1 언어 모델을 이용하여, 분석 정보를 획득할 수 있다. 분석 정보는, 문제 상황을 해결하는 인공지능 태스크를 포함할 수 있다. 자연어 처리 모듈(128)은 분석 정보를 태스크 플래닝 모듈(125)에 전달할 수 있다.
태스크 플래닝 모듈(125)은 문제 상황을 나타내는 문장에 기초하여 인공지능 기반 솔루션을 나타내는 문장을 생성할 수 있다. 태스크 플래닝 모듈(125)은 통신 인터페이스(129)를 통해 인공지능 기반 솔루션을 나타내는 문장을 사용자 단말(110)에 전송할 수 있다.
본 개시의 일 실시예에 있어서, 태스크 플래닝 모듈(125)은 인공지능 태스크를 자연어 처리 모듈(128)에 전달할 수 있다. 자연어 처리 모듈(128)은 분석 정보를 입력으로 하는 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 문장을 출력할 수 있다. 자연어 처리 모듈(128)은 인공지능 기반 솔루션을 나타내는 문장을 태스크 플래닝 모듈(125)에 전달할 수 있다.
본 개시의 일 실시예에 있어서, 태스크 플래닝 모듈(125)은 제1 문장에 기초하여 복수의 인공지능 태스크들을 포함하는 분석 정보를 출력할 수 있다. 본 개시의 일 실시예에 있어서, 제1 언어 모델은 복수의 인공지능 태스크들 간의 종속성을 정의할 수 있도록 학습될 수 있다. 본 개시의 일 실시예에 따르면, 학습된 제1 언어 모델은, 제1 문장을 분석함으로써, 종속성있는 복수의 인공지능 태스크들을 출력할 수 있다. 본 개시의 일 실시예에 있어서, 제1 언어 모델은, 학습된 초거대 언어 모델을 적어도 하나의 인공지능 태스크와, 적어도 하나의 인공지능 태스크 간의 종속성 중 적어도 하나에 기초하여 파인-튜닝한 모델일 수 있다.
인공지능 모델 선택 모듈(126)은 분석 정보를 수신할 수 있다. 인공지능 모델 선택 모듈(126)은 분석 정보에 기초하여 인공지능 모델을 출력할 수 있다. 인공지능 모델 선택 모듈(126)은 인공지능 모델을 API 생성 모듈(127)에 전달할 수 있다.
본 개시의 일 실시예에 있어서, 인공지능 모델 선택 모듈(126)은 분석 정보를 자연어 처리 모듈(128)에 전달할 수 있다. 자연어 처리 모듈(128)은 분석 정보를 입력으로 하는 제3 언어 모델을 이용하여, 미리 저장된 복수의 인공지능 모델들 중, 적어도 하나의 인공지능 태스크 각각에 대응하는 인공지능 모델을 획득할 수 있다. 자연어 처리 모듈(128)은 인공지능 모델을 인공지능 모델 선택 모듈(127)에 전달할 수 있다. 예를 들어, 제3 언어 모델은, 학습된 초거대 언어 모델을 미리 저장된 복수의 인공지능 모델들 각각의 특징에 기초하여 파인-튜닝한 모델일 수 있다.
API 생성 모듈(127)은 인공지능 모델을 수신할 수 있다. 여기서, 인공지능 모델은 인공지능 모델 자체가 아니라, 인공지능 모델에 대한 정보를 나타낼 수 있다. API 생성 모듈(127)은 인공지능 모델에 기초하여 문제 상황에 대응하는 인공지능 기반 솔루션 API를 출력할 수 있다.
본 개시의 일 실시예에 있어서, API 생성 모듈(127)은 인공지능 모델을 자연어 처리 모듈(128)에 전달할 수 있다. 자연어 처리 모듈(128)은 인공지능 모델(또는 인공지능 모델에 대한 정보)을 입력으로 하는 제4 언어 모델을 이용하여, 인공지능 모델을 포함하는 인공지능 기반 솔루션 API를 획득할 수 있다. 자연어 처리 모듈(128)은 인공지능 기반 솔루션 API를 API 생성 모듈(127)에 전달할 수 있다.
본 개시의 일 실시예에 있어서, API 생성 모듈(127)은 복수의 인공지능 모델들을 수신할 수 있다. 예를 들어, 복수의 인공지능 모델들은 제1 인공지능 모델 및 제2 인공지능 모델을 포함할 수 있다. API 생성 모듈(127)은 제1 인공지능 모델과 제2 인공지능 모델 간의 종속성에 기초하여, 제1 인공지능 모델의 출력 값에 대응하는 데이터를 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성할 수 있다.
본 개시의 일 실시예에 있어서, API 생성 모듈(127)은 제1 인공지능 모델, 제2 인공지능 모델, 종속성 중 적어도 하나를 입력으로 하는 학습된 제4 언어 모델을 이용하여, 제1 인공지능 모델의 출력 값에 대응하는 데이터를 제2 인공지능 모델의 입력 값으로 변환하는 명령어 코드를 생성할 수 있다. API 생성 모듈(127)은 제1 인공지능 모델과 제2 인공지능 모델 간의 종속성을 정의하도록 학습될 수 있다. 본 개시의 일 실시예에 따르면, 학습된 제4 언어 모델은, 제1 인공지능 모델 및 제2 인공지능 모델의 종속성을 분석함으로써, 제1 인공지능 모델과 제2 인공지능 모델을 연결하는 컴포넌트에 대응하는 명령어 코드를 생성할 수 있다.
API 생성 모듈(127)은 제1 인공지능 모델, 컴포넌트, 및 제2 인공지능 모델을 포함하는, 상기 문제 상황에 대응하는 인공지능 기반 솔루션 API를 생성할 수 있다.
도 3은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다. 도 1 및 2에서 설명한 내용과 중복되는 내용은 생략한다. 설명의 편의를 위해, 도 1을 참조하여, 도 3을 설명한다.
도 3을 참조하면, 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 단계 S310 내지 S330을 포함할 수 있다. 일 실시 예에 있어서, 단계 S310 내지 S330은 전자 장치(120) 또는 전자 장치(120)의 프로세서(121)에 의해 수행될 수 있다. 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 도 3에 도시된 바에 한정되지 않으며, 도 3에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 3에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S310에서, 전자 장치(120)는 문제 상황을 나타내는 제1 문장을 획득할 수 있다. 예시적으로, 제1 문장은 "리테일 비즈니스를 하고 있는데, 상품 가판대 사진을 자동으로 분석해서 가판대 속 상품의 가격과 상세정보를 정리하고 싶음."이라고 가정한다.
단계 S320에서, 전자 장치(120)는 획득된 제1 문장을 입력으로 하는 학습된 제1 언어 모델을 이용하여, 문제 상황을 해결하는 적어도 하나의 인공지능 태스크를 포함하는 분석 정보를 획득할 수 있다. 예시적으로, 전자 장치(120)는 인공지능 태스크인 객체 검출 및 OCR을 수행하면 상품의 가격과 상세정보를 정리하고자하는 문제 상황을 해결할 수 있다는 분석 정보를 획득할 수 있다.
단계 S330에서, 전자 장치(120)는 획득된 분석 정보를 입력으로 하는 학습된 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 제2 문장을 생성할 수 있다. 예시적으로, 전자 장치(120)는 인공지능 기반 솔루션으로, "상품의 가격표에 대한 객체 검출을 수행하고, 검출된 가격표에 대한 OCR을 수행하여 상품의 가격과 상세정보를 정리할 수 있습니다."라는 제2 문장을 생성할 수 있다.
도 4는 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다. 도 1 내지 3에서 설명한 내용과 중복되는 내용은 생략한다. 설명의 편의를 위해, 도 1 및 3을 참조하여, 도 4를 설명한다.
도 4를 참조하면, 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 단계 S310 내지 S330, 및 S440을 포함할 수 있다. 일 실시 예에 있어서, 단계 S310 내지 S330, 및 S440은 전자 장치(120) 또는 전자 장치(120)의 프로세서(121)에 의해 수행될 수 있다. 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 도 4에 도시된 바에 한정되지 않으며, 도 4에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 4에 도시되지 않은 단계를 더 포함할 수도 있다. 예를 들어, 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 단계 S330을 생략할 수 있다.
단계 S440에서, 전자 장치(120)는 획득된 분석 정보를 입력으로 하는 학습된 제3 언어 모델을 이용하여, 미리 저장된 복수의 인공지능 모델들 중, 적어도 하나의 인공지능 태스크 각각에 대응하는 인공지능 모델을 획득할 수 있다. 본 개시의 일 실시예에 있어서, 복수의 인공지능 모델들은 인공지능 모델 데이터베이스(123)에 저장될 수 있다. 인공지능 모델 데이터베이스(123)는 전자 장치(120)의 스토리지(122)에 저장될 수 있으나, 외부 장치, 외부 서버, 또는 외부 클라우드에 저장될 수 있다. 예시적으로, 전자 장치(120)는 제1 인공지능 태스크인 객체 검출에 대응하는 제1 인공지능 모델을 획득할 수 있다. 이 경우, 제1 인공지능 모델은 객체의 가격표를 검출하는 모델일 수 있다. 전자 장치(120)는 제2 인공지능 태스크인 OCR에 대응하는 제2 인공지능 모델을 획득할 수 있다. 이 경우, 제2 인공지능 모델은 검출된 가격표를 입력으로 하여 가격표에 적힌 텍스트를 인식하는 모델일 수 있다.
도 5는 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다. 도 1 내지 4에서 설명한 내용과 중복되는 내용은 생략한다. 설명의 편의를 위해, 도 1 및 3을 참조하여, 도 5를 설명한다.
도 5를 참조하면, 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 단계 S310 내지 S330, S440, 및 S550을 포함할 수 있다. 일 실시 예에 있어서, 단계 S310 내지 S330, S440, 및 S550은 전자 장치(120) 또는 전자 장치(120)의 프로세서(121)에 의해 수행될 수 있다. 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 도 5에 도시된 바에 한정되지 않으며, 도 5에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 5에 도시되지 않은 단계를 더 포함할 수도 있다. 예를 들어, 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 단계 S330을 생략할 수 있다.
단계 S550에서, 전자 장치(120)는 획득된 인공지능 모델을 포함하는, 문제 상황에 대응하는 인공지능 기반 솔루션 API를 생성할 수 있다. 전자 장치(120)는 인공지능 기반 솔루션 API를 사용자 단말(110)에 제공할 수 있다. 전자 장치(120)는 인공지능 기반 솔루션 API에 대한 정보를 사용자 단말(110)에 제공할 수 있다.
본 개시의 일 실시예에 있어서, 전자 장치(120)는 획득된 인공지능 모델을 입력으로 하는, 학습된 제4 언어 모델을 이용하여, 획득된 인공지능 모델을 포함하는 인공지능 기반 솔루션 API의 명령어 코드를 생성할 수 있다.
도 6은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법을 보여주는 흐름도이다. 도 1 내지 5에서 설명한 내용과 중복되는 내용은 생략한다. 설명의 편의를 위해, 도 1을 참조하여, 도 6을 설명한다.
도 6을 참조하면, 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 단계 S610 내지 S650을 포함할 수 있다. 일 실시 예에 있어서, 단계 S610 내지 S650은 전자 장치(120) 또는 전자 장치(120)의 프로세서(121)에 의해 수행될 수 있다. 본 개시의 일 실시예에 따른 인공지능 기반 솔루션을 제공하는 방법은 도 6에 도시된 바에 한정되지 않으며, 도 6에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 6에 도시되지 않은 단계를 더 포함할 수도 있다. 단계 S610 내지 S650은 도 3의 단계 S310 내지 S330에 대응하며, 중복되는 내용은 생략한다.
단계 S610에서, 전자 장치(120)는 문제 상황을 나타내는 제1 문장을 획득할 수 있다. 예시적으로,
단계 S620에서, 전자 장치(120)는 획득된 제1 문장을 입력으로 하는 학습된 제1 언어 모델을 이용하여, 문제 상황을 해결하는 제1 인공지능 태스크 및 제2 인공지능 태스크를 포함하는 분석 정보를 획득할 수 있다.
단계 S630에서, 전자 장치(120)는 획득된 분석 정보를 입력으로 하는 학습된 제2 언어 모델을 이용하여, 인공지능 기반 솔루션을 나타내는 제2 문장을 생성할 수 있다. 본 개시의 일 실시예에 있어서, 단계 S630은 생략될 수 있다.
단계 S640에서, 전자 장치(120)는 획득된 분석 정보를 입력으로 하는 학습된 제3 언어 모델을 이용하여, 미리 저장된 복수의 인공지능 모델들 중, 제1 인공지능 태스크에 대응하는 제1 인공지능 모델 및 제2 인공지능 태스크에 대응하는 제2 인공지능 모델을 획득할 수 있다.
단계 S650에서, 전자 장치(120)는 획득된 제1 인공지능 모델 및 획득된 제2 인공지능 모델을 포함하는, 문제 상황에 대응하는 인공지능 기반 솔루션 API를 생성할 수 있다. 예시적으로, 전자 장치(120)는 가격표를 검출하는 인공지능 모델과, 검출 결과에 기초하여 OCR을 수행하는 제2 인공지능 모델을 포함하는, 인공지능 기반 솔루션 API를 생성할 수 있다.
도 7은 본 개시의 일 실시예에 따른 인공지능 기반 솔루션 API를 제공하는 단계를 좀 더 상세하게 보여주는 흐름도이다. 도 1 내지 6에서 설명한 내용과 중복되는 내용은 생략한다. 설명의 편의를 위해, 도 1 및 6을 참조하여, 도 7을 설명한다.
도 7을 참조하면, 도 6의 단계 S650은 단계 S710 내지 S720을 포함할 수 있다. 일 실시 예에 있어서, 단계 S710 내지 S720은 전자 장치(120) 또는 전자 장치(120)의 프로세서(121)에 의해 수행될 수 있다. 본 개시의 일 실시예에 따른 도 6의 단계 S650의 세부 단계들은 도 7에 도시된 바에 한정되지 않으며, 도 7에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 7에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S710에서, 전자 장치(120)는 제1 인공지능 모델과 제2 인공지능 모델 간의 종속성에 기초하여, 제1 인공지능 모델의 출력 값에 대응하는 데이터를 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성할 수 있다. 예를 들어, 전자 장치(120)는 제1 인공지능 모델의 출력 값을, 제2 인공지능 모델에 요구되는 입력 값에 대응하는 데이터 크기 또는 데이터 포맷으로 변환할 수 있다. 예시적으로, 제1 인공지능 모델의 출력은 전체 이미지에서, 가격표 객체에 대응하는 이미지 픽셀의 좌표 값일 수 있다. 그러나, 제2 인공지능 모델의 입력으로, 텍스트를 포함하는 이미지가 요구될 수 있다. 따라서, 전자 장치(120)는 가격표 객체에 대응하는 이미지 픽셀의 좌표 값들에 기초하여 전체 이미지를 크롭하는 제1 컴포넌트를 생성할 수 있다. 전자 장치(120)는 크롭된 이미지(즉, 가격표 객체만을 포함하는 이미지)를 제2 인공지능 모델의 입력의 정해진 크기(예컨대, 512x512) 또는 포맷(예컨대, jpg)으로 변환하는, 제2 컴포넌트를 생성할 수 있다.
단계 S720에서, 전자 장치(120)는 제1 인공지능 모델, 생성된 컴포넌트, 및 제2 인공지능 모델을 포함하는, 문제 상황에 대응하는 인공지능 기반 솔루션 API를 생성할 수 있다.
도 8은 본 개시의 일 실시예에 따른 제1 인공지능 모델의 출력 값에 대응하는 데이터를 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성하는 단계를 좀 더 상세하게 보여주는 흐름도이다. 도 1 내지 7에서 설명한 내용과 중복되는 내용은 생략한다. 설명의 편의를 위해, 도 1 및 7을 참조하여, 도 8을 설명한다.
도 8을 참조하면, 도 7의 단계 S710은 단계 S810 내지 S820을 포함할 수 있다. 일 실시 예에 있어서, 단계 S810 내지 S820은 전자 장치(120) 또는 전자 장치(120)의 프로세서(121)에 의해 수행될 수 있다. 본 개시의 일 실시예에 따른 도 7의 단계 S710의 세부 단계들은 도 8에 도시된 바에 한정되지 않으며, 도 8에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 8에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S810에서, 전자 장치(120)는 제1 인공지능 모델, 제2 인공지능 모델, 및 종속성 중 적어도 하나를 입력으로 하는 학습된 제4 언어 모델을 이용하여, 제1 인공지능 모델의 출력 값에 대응하는 데이터를 제2 인공지능 모델의 입력 값으로 변환하는 명령어 코드를 생성할 수 있다.
단계 S820에서, 전자 장치(120)는 생성된 명령어 코드로 구성되는 컴포넌트를 생성할 수 있다.
본 개시의 일 실시예에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
상술된 실시예들에서, 제1, 제2, 제3 등의 용어들을 사용하여 본 개시의 기술적 사상에 따른 구성 요소들이 설명되었다. 그러나 제1, 제2, 제3 등과 같은 용어들은 구성 요소들을 서로 구별하기 위해 사용되며, 본 개시의 기술적 사상을 한정하는 것은 아니다. 제1, 제2, 제3 등과 같은 용어들은 순서 또는 임의의 형태의 수치적 의미를 내포하지 않는다.
상술된 실시예들은, 본 개시를 실시하기 위한 구체적인 실시예들이다. 본 개시은 상술된 실시예들뿐만 아니라, 상술된 실시예들을 이용하여 단순하게 설계 변경되거나 용이하게 변경할 수 있는 실시예들을 포함하는 것으로 이해되어야 한다. 따라서, 본 개시의 범위는 상술된 실시예들에 한정되어서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.

Claims (10)

  1. 인공지능 기반 솔루션을 제공하기 위한 방법에 있어서,
    문제 상황을 나타내는 제1 문장을 획득하는 단계;
    상기 획득된 제1 문장을 입력으로 하는 학습된 제1 언어 모델을 이용하여, 상기 문제 상황을 해결하는 제1 인공지능 태스크 및 제2 인공지능 태스크를 포함하는 분석 정보를 획득하되, 상기 제1 인공지능 태스크는 제1 인공지능 모델을 활용하여 수행되는 작업을 나타내고, 상기 제2 인공지능 태스크는 상기 제1 인공지능 모델에 종속성이 있는 제2 인공지능 모델을 활용하여 수행되는 작업을 나타내는, 단계;
    상기 획득된 분석 정보를 입력으로 하는 학습된 제2 언어 모델을 이용하여, 상기 문제 상황을 상기 인공지능 모델을 통해 해결하는 방법인 인공지능 기반 솔루션을 나타내는 제2 문장을 생성하는 단계;
    상기 분석 정보를 입력으로 하는 학습된 제3 언어 모델을 이용하여, 미리 저장된 복수의 인공지능 모델들 중, 상기 제1 인공지능 모델 및 상기 제2 인공지능 모델을 획득하는 단계;
    상기 제1 인공지능 모델과 상기 제2 인공지능 모델 간의 상기 종속성에 기초하여, 상기 제1 인공지능 모델의 출력 값에 대응하는 데이터를 상기 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성하는 단계; 및
    상기 제1 인공지능 모델, 상기 생성된 컴포넌트, 및 상기 제2 인공지능 모델을 포함하는, 상기 문제 상황에 대응하는 인공지능 솔루션 API를 생성하는 단계를 포함하는, 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 방법은,
    상기 획득된 인공지능 모델을 포함하는, 상기 문제 상황에 대응하는 인공지능 기반 솔루션 API를 제공하는 단계를 포함하는, 방법.
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 제1 인공지능 모델과 상기 제2 인공지능 모델 간의 종속성에 기초하여, 상기 제1 인공지능 모델과 상기 제2 인공지능 모델 사이에 상기 제1 인공지능 모델의 출력 값에 대응하는 데이터를 상기 제2 인공지능 모델의 입력 값으로 변환하는 컴포넌트를 생성하는 단계는,
    상기 제1 인공지능 모델 및 상기 제2 인공지능 모델을 입력으로 하는 학습된 제4 언어 모델을 이용하여, 상기 제1 인공지능 모델의 출력 값에 대응하는 데이터를 상기 제2 인공지능 모델의 입력 값으로 변환하는 명령어 코드를 생성하는 단계; 및
    상기 생성된 명령어 코드로 구성되는 상기 컴포넌트를 생성하는 단계를 포함하는, 방법.
  7. 제1항에 있어서,
    상기 학습된 제3 언어 모델은, 학습된 초거대 언어 모델을 상기 미리 저장된 복수의 인공지능 모델들 각각의 특징에 기초하여 파인-튜닝(fine-tuning)한 모델인, 방법.
  8. 삭제
  9. 제1항에 있어서,
    상기 학습된 제1 언어 모델은, 학습된 초거대 언어 모델을 상기 적어도 하나의 인공지능 태스크와, 상기 적어도 하나의 인공지능 태스크 간의 종속성 중 적어도 하나에 기초하여 파인-튜닝(fine-tuning)한 모델인, 방법.
  10. 제1항에 있어서,
    상기 방법은,
    상기 생성된 제2 문장을 사용자 단말에 전달하는 단계를 더 포함하는, 방법.
KR1020230086098A 2023-07-03 2023-07-03 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템 KR102658967B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230086098A KR102658967B1 (ko) 2023-07-03 2023-07-03 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230086098A KR102658967B1 (ko) 2023-07-03 2023-07-03 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템

Publications (1)

Publication Number Publication Date
KR102658967B1 true KR102658967B1 (ko) 2024-04-19

Family

ID=90881817

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230086098A KR102658967B1 (ko) 2023-07-03 2023-07-03 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템

Country Status (1)

Country Link
KR (1) KR102658967B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210036840A (ko) * 2019-09-26 2021-04-05 주식회사 루닛 인공지능 모델을 사용 기관에 특화시키는 학습 방법, 이를 수행하는 장치
KR102276442B1 (ko) * 2020-07-01 2021-07-12 (주)플렉시스 화면 인식을 통한 정보 제공 방법 및 장치
US20210350076A1 (en) * 2020-05-09 2021-11-11 International Business Machines Corporation Language-model-based data augmentation method for textual classification tasks with little data
US20220008451A1 (en) * 2018-10-31 2022-01-13 Bio Even Flavin adenine dinucleotide (fad) for use in the prevention and/or treatment of cancer
US20220084510A1 (en) * 2020-09-15 2022-03-17 Microsoft Technology Licensing, Llc Synthetic data generation for training of natural language understanding models
KR20230075052A (ko) * 2021-11-22 2023-05-31 네이버 주식회사 언어 모델을 이용하여 도메인에 특화된 대화를 제공하는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220008451A1 (en) * 2018-10-31 2022-01-13 Bio Even Flavin adenine dinucleotide (fad) for use in the prevention and/or treatment of cancer
KR20210036840A (ko) * 2019-09-26 2021-04-05 주식회사 루닛 인공지능 모델을 사용 기관에 특화시키는 학습 방법, 이를 수행하는 장치
US20210350076A1 (en) * 2020-05-09 2021-11-11 International Business Machines Corporation Language-model-based data augmentation method for textual classification tasks with little data
KR102276442B1 (ko) * 2020-07-01 2021-07-12 (주)플렉시스 화면 인식을 통한 정보 제공 방법 및 장치
US20220084510A1 (en) * 2020-09-15 2022-03-17 Microsoft Technology Licensing, Llc Synthetic data generation for training of natural language understanding models
KR20230075052A (ko) * 2021-11-22 2023-05-31 네이버 주식회사 언어 모델을 이용하여 도메인에 특화된 대화를 제공하는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Similar Documents

Publication Publication Date Title
US11372657B2 (en) Systems and methods for adaptive user interfaces
KR102473447B1 (ko) 인공지능 모델을 이용하여 사용자 음성을 변조하기 위한 전자 장치 및 이의 제어 방법
KR20240006713A (ko) 챗봇 변경을 위한 위한 전자 장치 및 이의 제어 방법
US11954536B2 (en) Data engine
KR102444932B1 (ko) 이미지를 암호화하여 외부 서버에 업로드하기 위한 전자 장치 및 이의 제어 방법
CN106293074B (zh) 一种情绪识别方法和移动终端
US20170337449A1 (en) Program, system, and method for determining similarity of objects
US11397764B2 (en) Machine learning for digital image selection across object variations
US11875241B2 (en) Aspect pre-selection using machine learning
KR102649848B1 (ko) 디지털 이미지 캡처 세션 및 메타데이터 연관
JP2023512135A (ja) オブジェクト推薦方法及び装置、コンピュータ機器並びに媒体
US11115359B2 (en) Method and apparatus for importance filtering a plurality of messages
CN112424799A (zh) 电子装置及其控制方法
KR20200036084A (ko) 애플리케이션의 번역 정보를 제공하는 디바이스 및 방법
US11163377B2 (en) Remote generation of executable code for a client application based on natural language commands captured at a client device
KR20200080387A (ko) 디스플레이 장치 및 그 제어 방법
KR102658967B1 (ko) 인공지능 기반 솔루션을 제공하기 위한 방법, 전자 장치, 및 시스템
US11675973B2 (en) Electronic device and operation method for embedding an input word using two memory operating speeds
JP6734323B2 (ja) 対象物の類似度判定のためのプログラム、システム、及び方法
KR20220089537A (ko) 전자 장치 및 이의 제어 방법
KR20200044175A (ko) 전자 장치 및 그의 비서 서비스 제공 방법
US20210240770A1 (en) Application search system
US11907508B1 (en) Content analytics as part of content creation
Jethwa GU-EYE-DE
JP6921011B2 (ja) 情報表示プログラム、情報表示方法、情報表示装置、及び配信装置

Legal Events

Date Code Title Description
GRNT Written decision to grant