KR102539283B1 - Method of generating code using artificial intelligence - Google Patents

Method of generating code using artificial intelligence Download PDF

Info

Publication number
KR102539283B1
KR102539283B1 KR1020220177785A KR20220177785A KR102539283B1 KR 102539283 B1 KR102539283 B1 KR 102539283B1 KR 1020220177785 A KR1020220177785 A KR 1020220177785A KR 20220177785 A KR20220177785 A KR 20220177785A KR 102539283 B1 KR102539283 B1 KR 102539283B1
Authority
KR
South Korea
Prior art keywords
information
artificial intelligence
objects
code
user interface
Prior art date
Application number
KR1020220177785A
Other languages
Korean (ko)
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 KR1020220177785A priority Critical patent/KR102539283B1/en
Application granted granted Critical
Publication of KR102539283B1 publication Critical patent/KR102539283B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • 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
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Provided in one embodiment of the present invention is a method for generating a code by using artificial intelligence, which is executed by a computing device, and comprises: (a) a step of reading information of a marker attached to each of a plurality of objects constituting a graphic user interface; (b) a step of generating a graphic user interface structure based on the information of the marker of each of the plurality of objects; (c) a step of generating first modeling information corresponding to the graphic user interface by executing one of an image analysis model and a text analysis model by using artificial intelligence with respect to each of the plurality of objects based on the information of the marker of each of the plurality of objects; and (d) a step of generating a first code by using the artificial intelligence based on the graphic user interface structure and the first modeling information. Therefore, a code may be more precisely generated.

Description

인공 지능을 이용한 코드 생성 방법{METHOD OF GENERATING CODE USING ARTIFICIAL INTELLIGENCE} Code generation method using artificial intelligence {METHOD OF GENERATING CODE USING ARTIFICIAL INTELLIGENCE}

본 개시(開示)는 인공 지능을 이용한 코드 생성 방법으로서, 보다 구체적으로는 오브젝트에 부착되는 마커 정보 및 인공 지능을 이용한 코드 생성 방법에 관한 것이다.The present disclosure relates to a code generation method using artificial intelligence, and more specifically, to a code generation method using marker information attached to an object and artificial intelligence.

디자이너가 웹 페이지 또는 애플리케이션(이하 "앱"이라고도 간단히 지칭됨)의 그래픽 유저 인터페이스(이하 "GUI"라고도 간단히 지칭됨)를 작성하면 개발자는 GUI를 기초로 실제 작동하는 코드를 작성한다. 즉, 개발자는 웹 페이지 또는 앱의 코드를 작성한다.When a designer creates a graphical user interface (hereinafter simply referred to as a "GUI") of a web page or application (hereinafter simply referred to as an "app"), a developer writes actual operating code based on the GUI. In other words, the developer writes the code for the web page or app.

이러한 작업을 보다 원활하고 신속하게 수행하기 위해서, 예컨대 인공 지능을 이용하여 코드를 생성하는 방식이 개발되었다. 예컨대 "Pix2Code"와 같은 방식이 개발되었다.In order to perform these tasks more smoothly and quickly, a method of generating codes using, for example, artificial intelligence has been developed. For example, a method such as "Pix2Code" has been developed.

Pix2Code는, GUI의 이미지("스크린 샷"이라고도 지칭됨)를 학습된 신경망(인공 지능)을 이용하여 분석하고 그에 적합한 코드를 자동적으로 생성하는 방식을 지칭한다. 예컨대, Tony Beltramelli에 의해서 발표된 "pix2code: Generating Code from a Graphical User Interface Screenshot"이라는 명칭의 논문(https://arxiv.org/abs/1705.07962 참조)에서는, Pix2Code의 개요가 설명되어 있다.Pix2Code refers to a method of analyzing a GUI image (also referred to as a “screen shot”) using a learned neural network (artificial intelligence) and automatically generating an appropriate code. For example, in a paper titled "pix2code: Generating Code from a Graphical User Interface Screenshot" published by Tony Beltramelli (see https://arxiv.org/abs/1705.07962), an overview of Pix2Code is described.

Pix2Code는, 심층 신경망(deep neural network)을 사용해 GUI의 스크린 샷과 대응되는 코드를 보고, 코드 작성 방법을 스스로 학습하는 방식, 즉 학습-기반 방식(learning-based method)이다. 따라서 GUI 코딩의 패턴이나 규칙을 자동화 프로그램에 입력하여 자동화하던 방식, 즉 규칙-기반 방식(rule-based method)과는 차이가 있다.Pix2Code is a learning-based method, that is, a method of learning how to write codes by oneself by looking at a code corresponding to a screen shot of a GUI using a deep neural network. Therefore, it is different from a method of automating by inputting patterns or rules of GUI coding into an automation program, that is, a rule-based method.

보다 구체적으로, 기존의 자동화 방식(예컨대 규칙-기반 방식)은 언어 내부 구조 또는 내부 API(Application Programming Interface)를 통해서 구현된다면, Pix2Code는 실제 프론트-엔드 개발자들이 수행하는 작업처럼, 픽셀로 표현되어 있는 GUI의 스크린 샷을 이용하여 코드를 작성한다는 점에서 차이가 있다.More specifically, if the existing automation method (e.g., rule-based method) is implemented through the internal structure of the language or the internal API (Application Programming Interface), Pix2Code works like the actual tasks performed by front-end developers, expressed in pixels. The difference is that the code is written using the screen shot of the GUI.

Pix2Code에 따르면, 학습(training) 처리와 샘플링(sampling) 처리가 수행된다.According to Pix2Code, training processing and sampling processing are performed.

학습 처리에 따르면, GUI의 스크린 샷은 CNN(Convolutional Neural Network)-기반(based) 비전(vision) 모델에 의해서 인코딩되고 컨텍스트(context)는 LSTM(Long short-term Memory) 계층(layer)의 스택(stack)으로 구성되는 언어 모델에 의해서 인코딩된다. 컨텍스트는 DSL(Domain Specific Language)에 해당하는 일련의 인코딩된 토큰(token)이다. CNN-기반 비전 모델에 의해서 인코딩된 결과(예컨대 특징 벡터)와 언어 모델에 의해서 인코딩된 결과(예컨대 특징 벡터)는 결합되어 LSTM 계층의 제2 스택(디코더로서 작용함)으로 제공된다. 소프트맥스(softmax) 계층은 한 번에 하나의 토큰을 샘플링하며, 소프트맥스 계층의 출력 크기는 DSL 어휘(vocabulary) 크기에 해당한다. 따라서 이미지와 토큰의 시퀀스(sequence of tokens)가 주어지면, 기울기 하강(gradient descent)을 통하여 종단간(end-to-end) 최적화되어 시퀀스 내의 다음 토큰을 예측할 수 있다. 샘플링 처리에서는, 마지막 예측 토큰을 포함하도록 각 예측에 대해 입력 컨텍스트가 업데이트된다. DSL 토큰의 결과 시퀀스는 기존 컴파일러 설계 기술을 사용하여 원하는 대상 언어로 컴파일된다.According to the learning process, the screen shot of the GUI is encoded by a convolutional neural network (CNN)-based vision model, and the context is a stack of long short-term memory (LSTM) layers ( It is encoded by a language model consisting of stack). A context is a set of encoded tokens corresponding to a domain specific language (DSL). The results encoded by the CNN-based vision model (eg feature vectors) and the language model (eg feature vectors) are combined and provided to the second stack (acting as a decoder) of the LSTM layer. The softmax layer samples one token at a time, and the size of the output of the softmax layer corresponds to the size of the DSL vocabulary. Thus, given an image and a sequence of tokens, it can be optimized end-to-end through gradient descent to predict the next token in the sequence. In the sampling process, the input context is updated for each prediction to include the last prediction token. The resulting sequence of DSL tokens is compiled into the desired target language using existing compiler design techniques.

그러나 Pix2Code는 복잡한 구조의 GUI의 스크린 샷에 대해서는 처리가 어렵고, 구체적인 정보를 추출할 수 없다는 단점이 있다.However, Pix2Code has a disadvantage in that it is difficult to process GUI screen shots with complex structures and cannot extract specific information.

또한 Pix2Code를 이용하더라도, 원활한 처리를 위해서는 GUI의 스크린 샷을 기초로 이미지 부분과 컨텍스트 부분을 분리하는 전처리가 필요하다. 전처리에서는, 예컨대 GUI의 스크린 샷을 분할하고 분할된 부분별로 특정값(feature value)을 결정하는 방법을 이용하여 외곽선(경계)을 파악하는 것에 의해서, GUI의 스크린 샷에 포함된 오브젝트가 이미지 오브젝트인지 컨텍스트 오브젝트인지 분류한다. 그러나 이러한 작업에 많은 처리 시간이 소요된다. 특히 예컨대 전처리에 오류가 있는 경우, CNN-기반 비전 모델을 이용하여 특정 오브젝트를 처리하다 특정 오브젝트가 텍스트 오브젝트에 해당하는 것이라면 다시 특정 오브젝트를 LSTM 계층의 스택을 이용하여 처리하여야 한다. 따라서 불필요한 처리가 수행될 수도 있다.In addition, even if Pix2Code is used, pre-processing is required to separate the image part and the context part based on the GUI screen shot for smooth processing. In the preprocessing, for example, whether the object included in the screen shot of the GUI is an image object by identifying the outline (boundary) using a method of dividing the screen shot of the GUI and determining a feature value for each divided part. Classify whether it is a context object. However, this operation takes a lot of processing time. In particular, if there is an error in preprocessing, for example, a specific object is processed using a CNN-based vision model, and if the specific object corresponds to a text object, the specific object must be processed again using the LSTM layer stack. Therefore, unnecessary processing may be performed.

1. 한국공개특허공보 제10-2022-0125282호1. Korean Patent Publication No. 10-2022-0125282

1. https://arxiv.org/abs/1705.079621. https://arxiv.org/abs/1705.07962

본원에서 설명되는 기술의 목적은, 오브젝트에 부착되는 마커 정보를 이용하는 것에 의해서 오브젝트를 분석하기 위해서 필요한 처리 부하를 최소화하고, 복잡한 구조를 가지는 GUI에 대해서도 코드를 인공 지능을 이용하여 자동적으로 보다 정확하게 코드를 생성할 수 있는 것인 인공 지능을 이용한 코드 생성 방법을 제공하는 데 있다.The purpose of the technology described herein is to minimize the processing load required to analyze an object by using marker information attached to the object, and automatically more accurately code the code using artificial intelligence even for a GUI having a complex structure. It is to provide a code generation method using artificial intelligence that can generate.

상기 기술적 과제를 달성하기 위하여, 본원에서 설명되는 기술의 일 형태에 따르면, 컴퓨팅 장치에 의해서 수행되며, (a) 그래픽 유저 인터페이스를 구성하는 다수의 오브젝트 각각에 부착되는 마커 정보를 판독하는 단계; (b) 상기 다수의 오브젝트 각각의 상기 마커 정보를 기초로, 그래픽 유저 인터페이스 구조를 생성하는 단계; (c) 상기 다수의 오브젝트 각각의 상기 마커 정보를 기초로 상기 다수의 오브젝트 각각에 대해서 이미지 분석 모델 및 텍스트 분석 모델 중 어느 하나를 인공 지능을 이용하여 수행하는 것에 의해서, 상기 그래픽 유저 인터페이스에 대응하는 제1 모델링 정보를 생성하는 단계; 및 (d) 상기 그래픽 유저 인터페이스 구조 및 상기 제1 모델링 정보를 기초로 제1 코드를 상기 인공 지능을 이용하여 생성하는 단계를 포함하는 인공 지능을 이용한 코드 생성 방법이 제공된다.In order to achieve the above object, according to one form of technology described herein, performed by a computing device, (a) reading marker information attached to each of a plurality of objects constituting a graphical user interface; (b) generating a graphic user interface structure based on the marker information of each of the plurality of objects; (c) By performing any one of an image analysis model and a text analysis model for each of the plurality of objects based on the marker information of each of the plurality of objects using artificial intelligence, corresponding to the graphic user interface generating first modeling information; and (d) generating a first code using the artificial intelligence based on the graphic user interface structure and the first modeling information.

본원에서 설명되는 기술에 따르면, 오브젝트에 부착되는 마커 정보를 이용하는 것에 의해서 오브젝트를 분석하기 위해서 필요한 처리 부하를 최소화하고, 복잡한 구조를 가지는 GUI에 대해서도 코드를 인공 지능을 이용하여 자동적으로 보다 정확하게 코드를 생성할 수 있다.According to the technology described herein, the processing load required to analyze an object is minimized by using marker information attached to the object, and the code is automatically more accurately generated using artificial intelligence even for a GUI having a complex structure. can create

도 1은 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법의 예시적인 흐름도.
도 2는 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 실행하는 컴퓨팅 장치의 모식적인 구성을 도시하는 도면.
도 3은 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법에 있어서, 그래픽 유저 인터페이스를 구성하는 다수의 오브젝트 및 오브젝트에 부착되는 마커 정보를 예시적으로 도시하는 도면.
도 4는 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법에 있어서, 그래픽 유저 인터페이스 구조의 예를 도시하는 도면.
도 5는 본원에서 설명되는 기술의 제2 실시예에 따른 인공 지능을 이용한 코드 생성 방법의 예시적인 흐름도.
도 6은 본원에서 설명되는 기술의 제2 실시예에 따른 인공 지능을 이용한 코드 생성 방법에 있어서, 제1 오브젝트를 제1 오브젝트의 처리 정보를 변경하여 생성된 제2 오브젝트로 대체하는 예를 도시하는 도면.
도 7은 본원에서 설명되는 기술의 제3 실시예에 따른 인공 지능을 이용한 코드 생성 방법의 예시적인 흐름도.
1 is an exemplary flow diagram of a code generation method using artificial intelligence according to a first embodiment of the technology described herein;
2 is a diagram showing a schematic configuration of a computing device executing a code generation method using artificial intelligence according to a first embodiment of the technology described herein;
3 is a diagram exemplarily illustrating a plurality of objects constituting a graphic user interface and marker information attached to the objects in a code generation method using artificial intelligence according to a first embodiment of the technology described herein.
4 is a diagram showing an example of a graphical user interface structure in a code generation method using artificial intelligence according to a first embodiment of the technology described herein.
5 is an exemplary flow diagram of a code generation method using artificial intelligence according to a second embodiment of the technology described herein;
6 illustrates an example of replacing a first object with a second object generated by changing processing information of the first object in a code generation method using artificial intelligence according to a second embodiment of a technique described herein. floor plan.
7 is an exemplary flow diagram of a code generation method using artificial intelligence according to a third embodiment of the technology described herein;

이하, 본원에서 설명되는 기술에 따른 인공 지능을 이용한 코드 생성 방법의 실시예를 첨부한 도면을 참조로 보다 구체적으로 설명한다. 한편 본원에서 설명되는 기술의 실시예를 설명하기 위한 도면들에서, 설명의 편의를 위해서 실제 구성 중 일부만을 도시하거나 일부를 생략하여 도시하거나 변형하여 도시하거나 또는 축척이 다르게 도시될 수 있다.Hereinafter, an embodiment of a code generation method using artificial intelligence according to the technology described herein will be described in more detail with reference to the accompanying drawings. Meanwhile, in the drawings for explaining the embodiments of the technology described herein, for convenience of description, only some of the actual configurations may be shown, some may be omitted, or may be shown in a modified or different scale.

<제1 실시예><First Embodiment>

도 1은 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법의 예시적인 흐름도이고, 도 2는 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 실행하는 컴퓨팅 장치의 모식적인 구성을 도시하는 도면이다.1 is an exemplary flowchart of a code generation method using artificial intelligence according to a first embodiment of the technology described herein, and FIG. 2 is a code generation method using artificial intelligence according to a first embodiment of the technology described herein. It is a diagram showing a schematic configuration of a computing device that executes.

우선 도 2를 참조하여, 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 실행하는 컴퓨팅 장치(100)를 설명한다.First, referring to FIG. 2 , a computing device 100 executing a code generation method using artificial intelligence according to a first embodiment of the technology described herein will be described.

도 2를 참조하면, 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 실행하는 컴퓨팅 장치(100)는, 통신 인터페이스(110)와, 연산 처리부(130)와, 저장부(150)를 포함할 수 있다.Referring to FIG. 2 , a computing device 100 executing a code generation method using artificial intelligence according to a first embodiment of the technology described herein includes a communication interface 110, an arithmetic processing unit 130, and storage may include section 150 .

통신 인터페이스(110)는 유무선 통신 방식을 기초로 하는 통신 인터페이스이다. 통신 인터페이스(110)는 통신 칩과 같은 반도체 소자에 의해서 구현될 수 있다.The communication interface 110 is a communication interface based on a wired/wireless communication method. The communication interface 110 may be implemented by a semiconductor device such as a communication chip.

연산 처리부(130)는 예컨대 CPU(central processing unit), GPU(Graphics Processing Unit) 및 ASIC(Application Specific Integrated Circuit)과 같은 반도체 소자에 의해서 구현될 수 있다.The arithmetic processing unit 130 may be implemented by a semiconductor device such as a central processing unit (CPU), a graphics processing unit (GPU), and an application specific integrated circuit (ASIC).

연산 처리부(130)는 예컨대 복수의 반도체 소자를 이용하여 구현될 수 있다. 예컨대, 연산 처리부(130)는, 통신 기능을 수행하는 제1 반도체 소자, 후술하는 이미지 분석 모델을 인공 지능을 이용하여 수행하는 제2 반도체 소자 및 후술하는 텍스트 분석 모델을 인공 지능을 이용하여 수행하는 제3 반도체 소자를 이용하여 구현될 수도 있다.The arithmetic processing unit 130 may be implemented using, for example, a plurality of semiconductor devices. For example, the arithmetic processing unit 130 may include a first semiconductor device that performs a communication function, a second semiconductor device that performs an image analysis model described later using artificial intelligence, and a text analysis model described later using artificial intelligence. It may be implemented using a third semiconductor device.

연산 처리부(130)는 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 실행하며, 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 실행하기 위해서 통신 인터페이스(110)와 저장부(150)를 제어할 수도 있다.The calculation processing unit 130 executes the code generation method using artificial intelligence according to the first embodiment, and the communication interface 110 and the storage unit 150 to execute the code generation method using artificial intelligence according to the first embodiment. ) can be controlled.

저장부(150)는 데이터를 저장한다. 저장부(150)는 예컨대 반도체 메모리와 같은 반도체 소자에 의해서 구현될 수 있다. 저장부(150)에는 예컨대 후술하는 오브젝트, 오브젝트의 마커 정보, 그래픽 유저 인터페이스 구조, 제1 모델링 정보와 같은 모델링 정보, 제1 코드와 같은 코드가 저장될 수 있다.The storage unit 150 stores data. The storage unit 150 may be implemented by a semiconductor device such as, for example, a semiconductor memory. The storage unit 150 may store, for example, modeling information such as an object described later, marker information of an object, a graphic user interface structure, first modeling information, and a code such as a first code.

저장부(150)는 예컨대 복수의 반도체 소자를 이용하여 구현될 수도 있다.The storage unit 150 may be implemented using, for example, a plurality of semiconductor devices.

이하 도 1을 참조로 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 보다 상세히 설명한다.Hereinafter, a code generation method using artificial intelligence according to a first embodiment of the technology described herein will be described in more detail with reference to FIG. 1 .

우선 컴퓨팅 장치(100), 보다 구체적으로 연산 처리부(130)는 그래픽 유저 인터페이스를 구성하는 다수의 오브젝트 각각에 부착되는 마커 정보를 판독한다(단계 S110).First, the computing device 100, more specifically, the arithmetic processing unit 130 reads marker information attached to each of a plurality of objects constituting the graphic user interface (step S110).

도 3은 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법에 있어서, 그래픽 유저 인터페이스를 구성하는 다수의 오브젝트 및 오브젝트에 부착되는 마커 정보를 예시적으로 도시하는 도면이다.3 is a diagram exemplarily illustrating a plurality of objects constituting a graphic user interface and marker information attached to the objects in the code generation method using artificial intelligence according to the first embodiment of the technology described herein.

이하 예컨대 웹 페이지를 제작하는 경우의 그래픽 인터페이스를 기초로 보다 상세히 설명한다.Hereinafter, it will be described in more detail based on a graphic interface in the case of creating a web page, for example.

도 3을 참조하면, 다수의 오브젝트, 예컨대 오브젝트(210) 내지 오브젝트(280)가 도시된다.Referring to FIG. 3 , a number of objects, such as objects 210 to 280 , are shown.

오브젝트(210), 오브젝트(220), 오브젝트(230), 오브젝트(240), 오브젝트(250)는 각각 "PRODUCT", "PRICE", "LATEST". "FREE TRIAL" 및 "BABY AND DOG"을 나타내는 텍스트 오브젝트(이미지 형태로 삽입될 수 있음)이다.Object 210, object 220, object 230, object 240, and object 250 are "PRODUCT", "PRICE", and "LATEST", respectively. It is a text object (can be inserted in the form of an image) representing "FREE TRIAL" and "BABY AND DOG".

오브젝트(260)는 예컨대 "아기"를 나타내는 이미지 오브젝트이다.Object 260 is, for example, an image object representing “baby”.

오브젝트(270)는 예컨대 "개"를 나타내는 이미지 오브젝트이다.The object 270 is, for example, an image object representing "dog".

오브젝트(280)는 예컨대 컨텐츠 재생을 위한 인터페이스를 나타내는 이미지 오브젝트이다.The object 280 is, for example, an image object representing an interface for content reproduction.

도 3을 참조하면, 오브젝트(210) 내지 오브젝트(280) 각각에 대응하는 마커 정보(310) 내지 마커 정보(380)가 도시된다.Referring to FIG. 3 , marker information 310 to marker information 380 corresponding to each of the objects 210 to 280 are shown.

마커 정보(310) 내지 마커 정보(380)는 미리 지정된 마커 정보 지정 규칙에 따라서 지정될 수 있다. 예컨대 마커 정보(310) 내지 마커 정보(380)는 CSS(Cascading Style Sheets)를 이용하여 지정될 수 있다. 또는 마커 정보(310) 내지 마커 정보(380)는 자연어를 이용하여 지정될 수도 있다.The marker information 310 to marker information 380 may be designated according to a previously designated marker information designation rule. For example, the marker information 310 to marker information 380 may be designated using Cascading Style Sheets (CSS). Alternatively, the marker information 310 to marker information 380 may be designated using natural language.

즉, 컴퓨팅 장치(100)의 연산 처리부(130)가 이해할 수 있는 형태로 마커 정보(310) 내지 마커 정보(380)는 지정된다. 예컨대 디자이너는 오브젝트를 생성하는 경우 미리 지정된 마커 정보 지정 규칙에 따라서 또는 자연어를 이용하여 오브젝트에 대응하는 마커 정보를 지정할 수 있다.That is, the marker information 310 to marker information 380 are specified in a form that the arithmetic processing unit 130 of the computing device 100 can understand. For example, when creating an object, a designer may designate marker information corresponding to an object according to a predetermined marker information designation rule or by using natural language.

CSS를 이용하여 마커 정보를 지정하는 경우, CSS 태그를 제한없이 사용할 수 있으므로, 보다 효율적으로 마커 정보를 지정할 수 있다. 또한 CSS가 확장되는 경우에도, 확장된 CSS를 적용하는 것에 의해서 보다 효율적으로 마커 정보를 지정할 수 있다.When marker information is specified using CSS, since CSS tags can be used without restrictions, marker information can be specified more efficiently. Also, even when CSS is extended, marker information can be specified more efficiently by applying the extended CSS.

도 3을 참조하면, 오브젝트(210)에는 마커 정보(310)가 부착된다. 예컨대, 마커 정보(310)는 "List combine_ProductDB_2022.12.16"이며, "ProductDB_2022.12.16"라는 데이터베이스에서 결합한 리스트를 표시하는 것을 의미한다.Referring to FIG. 3 , marker information 310 is attached to an object 210 . For example, the marker information 310 is "List combine_ProductDB_2022.12.16", meaning that a list combined in a database called "ProductDB_2022.12.16" is displayed.

오브젝트(220)에는 마커 정보(320)가 부착된다. 예컨대, 마커 정보(320)는 "List combine_PriceDB_2022.12.16"이며, "PriceDB_2022.12.16"라는 데이터베이스에서 결합한 리스트를 표시하는 것을 의미한다.Marker information 320 is attached to the object 220 . For example, the marker information 320 is "List combine_PriceDB_2022.12.16", which means that a list combined from a database called "PriceDB_2022.12.16" is displayed.

오브젝트(230)에는 마커 정보(330)가 부착된다. 예컨대, 마커 정보(330)는 "Goto Home_Page5_LatestPage"이며, 오브젝트(230)를 클릭하면 "Home_Page5_LatestPage"로 이동하라는 것을 의미한다.Marker information 330 is attached to the object 230 . For example, the marker information 330 is "Goto Home_Page5_LatestPage", and clicking the object 230 means moving to "Home_Page5_LatestPage".

오브젝트(240)에는 마커 정보(340)가 부착된다. 예컨대, 마커 정보(340)는 "Goto Home_section4_TrialPage"이며, 오브젝트(240)를 클릭하면 "Home_section4_TrialPage"로 이동하라는 것을 의미한다.Marker information 340 is attached to the object 240 . For example, the marker information 340 is "Goto Home_section4_TrialPage", and clicking the object 240 means moving to "Home_section4_TrialPage".

오브젝트(250)에는 마커 정보(350)가 부착된다. 예컨대, 마커 정보(350)는 "Text_Image_scaleVector-Web"이며, 오브젝트(250)는 텍스트 이미지이며, 벡터 형태라는 것을 의미한다.Marker information 350 is attached to the object 250 . For example, the marker information 350 is "Text_Image_scaleVector-Web", and the object 250 is a text image, meaning that it is in the form of a vector.

오브젝트(260)에는 마커 정보(360)가 부착된다. 예컨대, 마커 정보(360)는 "Image of Baby"이며, 오브젝트(260)가 "아기"에 대한 이미지 오브젝트라는 것을 의미한다.Marker information 360 is attached to the object 260 . For example, the marker information 360 is "Image of Baby", which means that the object 260 is an image object for "baby".

오브젝트(270)에는 마커 정보(370)가 부착된다. 예컨대, 마커 정보(370)는 "Image of Dog"이며, 오브젝트(270)가 "개"에 대한 이미지 오브젝트라는 것을 의미한다.Marker information 370 is attached to the object 270 . For example, the marker information 370 is "Image of Dog", which means that the object 270 is an image object for "dog".

오브젝트(280)에는 마커 정보(380)가 부착된다. 예컨대, 마커 정보(380)는 "Goto Home_section10_Play_Video_001"이며, 오브젝트(280)를 클릭하면 "Home_section10"의 "Video_001"을 재생하라는 것을 의미한다.Marker information 380 is attached to the object 280 . For example, the marker information 380 is "Goto Home_section10_Play_Video_001", and clicking the object 280 means to play "Video_001" of "Home_section10".

이하 다수의 오브젝트 중의 어느 하나인 제1 오브젝트를 기초로 마커 정보를 보다 상세하게 설명한다.Hereinafter, marker information will be described in more detail based on a first object that is one of a plurality of objects.

제1 오브젝트의 마커 정보는, 제1 오브젝트가 이미지 오브젝트인지 또는 텍스트 오브젝트인지를 나타내는 오브젝트 분류 정보 및 제1 오브젝트와 관련된 처리 정보 중 적어도 하나를 포함할 수 있다.The marker information of the first object may include at least one of object classification information indicating whether the first object is an image object or text object and processing information related to the first object.

오브젝트 분류 정보는, 예컨대 이미지 오브젝트인 오브젝트(260)에 대해서 마커 정보(360)인 "Image of Baby"와 같이 설정될 수도 있다.Object classification information may be set, for example, such as "Image of Baby", which is marker information 360, for the object 260, which is an image object.

오브젝트 분류 정보는, 예컨대 텍스트 오브젝트인 오브젝트(250)에 대해서 마커 정보(360)인 "Text_Image_scaleVector-Web"과 같이 설정될 수도 있다.The object classification information may be set as “Text_Image_scaleVector-Web” which is the marker information 360 for the object 250 which is a text object, for example.

오브젝트 분류 정보는, 도 3에 도시되지 않았지만, 예컨대 텍스트 오브젝트인 오브젝트(210)에 대해서 마커 정보(310)에 더 포함될 수도 있다.Although not shown in FIG. 3 , the object classification information may be further included in the marker information 310 for the object 210 that is, for example, a text object.

제1 오브젝트와 관련된 처리 정보는 제1 오브젝트에 대해서 수행할 처리를 나타내는 정보이다.The process information related to the first object is information indicating a process to be performed on the first object.

예컨대 제1 오브젝트가 텍스트 오브젝트인 경우, 제1 오브젝트의 처리 정보는, 텍스트, 사용되는 언어, 사용되는 폰트, 색상, 크기, 표시 위치 및 표시 방법 중 적어도 하나를 포함할 수 있다.For example, when the first object is a text object, processing information of the first object may include at least one of text, used language, used font, color, size, display position, and display method.

예컨대 제1 오브젝트가 이미지 오브젝트인 경우, 제1 오브젝트의 처리 정보는, 이미지의 크기, 색상, 표시 위치 및 표시 방법 중 적어도 하나를 포함할 수 있다.For example, when the first object is an image object, processing information of the first object may include at least one of the image size, color, display position, and display method.

또한 제1 오브젝트의 처리 정보는 예컨대 전술한 바와 같이 제1 오브젝트를 클릭하였을 때 수행되는 처리를 나타낼 수도 있다.Also, the processing information of the first object may indicate processing performed when the first object is clicked, for example, as described above.

즉, 전술한 바와 같이, 제1 오브젝트를 클릭하였을 때 특정한 페이지로 이동하거나 특정한 컨텐츠를 재생하도록, 제1 오브젝트의 처리 정보는 설정될 수 있다.That is, as described above, processing information of the first object may be set so that when the first object is clicked, a specific page is moved or specific content is reproduced.

한편 처리 정보 중 일부는 액션 정보라고도 지칭될 수 있다.Meanwhile, some of the processing information may also be referred to as action information.

제1 오브젝트의 액션 정보는 제1 오브젝트와 관련되어 사용자 입력을 수신하였을 때 또는 사용자 입력과 관련없이 제1 오브젝트에 대해서 특정한 처리(액션)를 수행하는 지를 나타내는 정보이다.The action information of the first object is information indicating whether a specific process (action) is performed on the first object when a user input is received in relation to the first object or regardless of the user input.

예컨대, 제1 오브젝트를 표시하는 방법 중에서 팝업 형태로 표시하거나 스플래시 형태로 표시하거나 회전하여 표시하는 것과 같이 다양한 표시 방법이 존재한다.For example, among the methods of displaying the first object, there are various display methods such as display in a pop-up form, display in a splash form, or rotated display.

제1 오브젝트의 액션 정보는 이와 같은 표시 방법에 대한 정보를 나타낼 수도 있다.The action information of the first object may indicate information on such a display method.

제1 오브젝트의 처리 정보는 제공 대상인 장치의 사양 및 브라우저의 사양 중 적어도 하나에 따라서 지정될 수도 있다.The processing information of the first object may be designated according to at least one of specifications of a device to be provided and specifications of a browser.

예컨대, 제1 오브젝트의 처리 정보는 일반적인 컴퓨팅 장치(예컨대 PC)에 의해서 웹 페이지에 접속할 때에 대응하는 제1 처리 정보, 제1 모바일 장치(예컨대 스마트폰)에 의해서 웹 페이지에 접속할 때에 대응하는 제2 처리 정보, 제2 모바일 장치(예컨대 태블릿)에 의해서 웹 페이지에 접속할 때에 대응하는 제3 처리 정보와 같이 다양한 형태로 지정될 수도 있다.For example, the processing information of the first object is first processing information corresponding to when accessing the web page by a general computing device (eg, PC), and second processing information corresponding to when accessing the web page by a first mobile device (eg, smart phone). It may be designated in various forms, such as processing information and third processing information corresponding to accessing a web page by a second mobile device (eg, a tablet).

마찬가지로, 브라우저의 사양(예컨대 제작사 또는 브라우저 버전)에 따라서, 제1 오브젝트의 처리 정보는 제4 처리 정보 또는 제5 처리 정보와 같이 다양한 형태로 지정될 수도 있다.Similarly, the processing information of the first object may be designated in various forms, such as fourth processing information or fifth processing information, according to browser specifications (eg, manufacturer or browser version).

제1 오브젝트의 마커 정보의 크기는 특별히 제한되지 않는다. 따라서 복잡한 처리 정보(액션 정보 포함)를 가지는 경우라도, 오브젝트의 마커 정보는 전술한 처리 정보를 충분히 포함할 수 있다. 특히, 후술하는 그래픽 유저 인터페이스 구조를 생성하기 위해서 필요한 정보, 제1 모델링 정보를 생성하기 위해서 필요한 정보(보다 구체적으로 인공 지능을 이용하여 용이하게 그리고 신속하게 제1 모델링 정보를 생성하기 위해서 필요한 정보)를 모두 제1 오브젝트의 마커 정보에 포함시킬 수 있다.The size of the marker information of the first object is not particularly limited. Therefore, even in the case of having complex processing information (including action information), the marker information of an object can sufficiently include the aforementioned processing information. In particular, information necessary for generating a graphic user interface structure to be described later, information necessary for generating first modeling information (more specifically, information necessary for easily and quickly generating first modeling information using artificial intelligence) may be included in the marker information of the first object.

도 3을 참조로 설명한 오브젝트의 마커 정보(보다 구체적으로, 오브젝트 분류 정보, 처리 정보, 액션 정보)는 단지 예시일 뿐이며, 다양한 형태로 변경될 수 있다.The object marker information (more specifically, object classification information, processing information, and action information) described with reference to FIG. 3 is merely an example and may be changed in various forms.

도 3을 참조로 설명한 예에서와 같이 오브젝트의 마커 정보는 미리 오브젝트에 대응하여 부착되어 있으며, 단계 S110에서는 오브젝트의 마커 정보를 판독한다.As in the example described with reference to FIG. 3 , marker information of an object is attached in advance to correspond to the object, and marker information of the object is read in step S110.

다음으로, 연산 처리부(130)는 그래픽 유저 인터페이스를 구성하는 다수의 오브젝트 각각의 마커 정보를 기초로, 그래픽 유저 인터페이스 구조를 생성한다(단계 S120).Next, the arithmetic processing unit 130 generates a graphic user interface structure based on marker information of each of a plurality of objects constituting the graphic user interface (step S120).

단계 S120에서, 다수의 오브젝트 각각의 마커 정보 및 다수의 오브젝트 각각의 데이터 속성을 기초로 그래픽 유저 인터페이스 구조를 생성할 수 있다.In step S120, a graphic user interface structure may be generated based on marker information of each of a plurality of objects and data attributes of each of a plurality of objects.

즉 제1 오브젝트의 마커 정보가 제1 오브젝트의 데이터 속성을 포함하지 않는 경우, 그래픽 유저 인터페이스 구조는 제1 오브젝트의 데이터 속성을 추가적으로 이용하여 생성될 수 있다.That is, when the marker information of the first object does not include the data attribute of the first object, the graphic user interface structure may be created by additionally using the data attribute of the first object.

데이터 속성은 예컨대 텍스트 오브젝트의 경우, 텍스트(즉 내용), 사용되는 폰트, 색상, 크기, 표시 위치 및 표시 방법과 같은 속성Data attributes are properties such as text (i.e. content), used font, color, size, display position and display method in the case of a text object, for example.

데이터 속성은 예컨대 이미지 오브젝트의 경우, 이미지의 크기, 색상, 표시 위치 및 표시 방법과 같은 속성 중 적어도 하나를 포함할 수 있다.The data properties may include, for example, at least one of properties such as size, color, display position, and display method of an image object.

도 4는 본원에서 설명되는 기술의 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법에 있어서, 그래픽 유저 인터페이스 구조의 예를 도시하는 도면이다.4 is a diagram illustrating an example of a structure of a graphic user interface in a code generation method using artificial intelligence according to a first embodiment of a technique described herein.

그래픽 유저 인터페이스 구조는 예컨대 복수의 화면(페이지), 복수의 화면 내에서 배치되는 오브젝트의 데이터 속성, 오브젝트의 대응 관계와 같은 데이터로 구성된 구조이다.The graphic user interface structure is a structure composed of, for example, data such as a plurality of screens (pages), data attributes of objects arranged in the plurality of screens, and correspondence between objects.

그래픽 유저 인터페이스 구조는 예컨대 웹 페이지의 경우, 소위 "사이트 맵"에 다수의 오브젝트에 대한 정보가 연결된 형태를 가질 수 있다.In the case of a web page, for example, the graphic user interface structure may have a form in which information on a plurality of objects is connected to a so-called “site map”.

예컨대 도 4를 참조하면, 화면("Women", "Men" 등)에 표시되는 카테고리("New Arrival" 등)와 서브카테고리("Sweater")에 대해서, 대응되는 다수의 오브젝트가 연결된 형태의 그래픽 유저 인터페이스 구조가 도시된다.For example, referring to FIG. 4 , for a category (“New Arrival”, etc.) and a sub-category (“Sweater”) displayed on a screen (“Women”, “Men”, etc.), a graphic in the form of a plurality of corresponding objects connected to each other. A user interface structure is shown.

이와 같이 단계 S120을 통하여 그래픽 유저 인터페이스 구조를 생성하면, 예컨대 Pix2Code가 복잡한 구조의 GUI의 스크린 샷에 대해서는 처리가 어렵고 구체적인 정보를 추출할 수 없다는 단점을 개선할 수 있다.If the graphic user interface structure is created through step S120 in this way, it is possible to improve the disadvantage that, for example, Pix2Code cannot extract detailed information because it is difficult to process a GUI screen shot having a complicated structure.

다음으로, 연산 처리부(130)는 다수의 오브젝트 각각의 마커 정보를 기초로 다수의 오브젝트 각각에 대해서 이미지 분석 모델 및 텍스트 분석 모델 중 어느 하나를 인공 지능을 이용하여 수행하는 것에 의해서, 그래픽 유저 인터페이스에 대응하는 제1 모델링 정보를 생성한다(단계 S130).Next, the calculation processing unit 130 performs any one of an image analysis model and a text analysis model for each of a plurality of objects based on the marker information of each of the plurality of objects using artificial intelligence, thereby providing a graphical user interface. Corresponding first modeling information is generated (step S130).

이미지 분석 모델은 CNN(Convolutional Neural Network)-기반 모델, R-CNN(Region-based Convolutional Neural Network)-기반 모델 및 RNN(Recurrent Neural Network)-기반 모델 중 적어도 하나를 포함할 수 있다.The image analysis model may include at least one of a convolutional neural network (CNN)-based model, a region-based convolutional neural network (R-CNN)-based model, and a recurrent neural network (RNN)-based model.

텍스트 분석 모델은 LSTM(Long Short-Term Memory) 계층 모델을 포함할 수 있다.The text analysis model may include a Long Short-Term Memory (LSTM) hierarchical model.

전술한 바와 같이 오브젝트의 마커 정보는 오브젝트 분류 정보를 포함할 수 있다. 따라서, 오브젝트가 이미지 오브젝트인지 또는 텍스트 오브젝트인지를 명확하게 확인할 수 있다.As described above, marker information of an object may include object classification information. Therefore, it can be clearly identified whether the object is an image object or a text object.

Pix2Code를 이용하는 경우, GUI의 이미지(스크린 샷)를 기초로 이미지 부분과 컨텍스트 부분을 분리하는 전처리가 필요하다. 즉 오브젝트가 텍스트 오브젝트인지 또는 이미지 오브젝트인지를 확인하기 위해서는, 스크린 샷의 각 부분의 외곽선(경계)을 파악하는 처리를 픽셀 단위로 수행해야 한다.In the case of using Pix2Code, preprocessing is required to separate the image part and the context part based on the image (screen shot) of the GUI. That is, in order to determine whether an object is a text object or an image object, a process of identifying the outline (boundary) of each part of the screen shot must be performed in units of pixels.

그러나 단계 S130에서는, 이미 오브젝트의 마커 정보를 기초로 오브젝트가 이미지 오브젝트인지 또는 텍스트 오브젝트인지를 명확하게 확인할 수 있으므로, 오브젝트를 분석하는 처리를 용이하게 수행할 수 있다.However, in step S130, it is already possible to clearly confirm whether the object is an image object or a text object based on the marker information of the object, so that the process of analyzing the object can be easily performed.

이하 다수의 오브젝트 중의 어느 하나인 제1 오브젝트를 기초로 설명한다.Hereinafter, a description will be made based on a first object that is one of a plurality of objects.

연산 처리부(130)는 제1 오브젝트의 마커 정보를 이용하여(즉, 제1 오브젝트의 오브젝트 분류 정보를 이용하여), 제1 오브젝트가 이미지 오브젝트를 나타내면, 제1 오브젝트에 대해서 이미지 분석 모델을 수행한다.The arithmetic processing unit 130 uses marker information of the first object (ie, object classification information of the first object) to perform an image analysis model on the first object when the first object represents an image object. .

연산 처리부(130)는 제1 오브젝트의 마커 정보를 이용하여(즉, 제1 오브젝트의 오브젝트 분류 정보를 이용하여), 제1 오브젝트가 텍스트 오브젝트를 나타내면, 제1 오브젝트에 대해서 텍스트 분석 모델을 수행한다.The calculation processing unit 130 uses marker information of the first object (ie, object classification information of the first object) to perform a text analysis model on the first object when the first object represents a text object. .

따라서, 오브젝트를 인공 지능을 이용하여 분석하는 것에 소요되는 처리 부하를 최소화할 수 있다.Accordingly, it is possible to minimize the processing load required to analyze an object using artificial intelligence.

다수의 오브젝트에 대해서 인공 지능을 이용하여 분석하는 것에 의해서, 그래픽 유저 인터페이스에 대응하는 제1 모델링 정보를 생성한다.By analyzing a plurality of objects using artificial intelligence, first modeling information corresponding to a graphic user interface is generated.

제1 모델링 정보는, 다수의 오브젝트 각각에 대한 학습된 특징 정보를 포함한다.The first modeling information includes learned feature information for each of a plurality of objects.

예컨대 전술한 오브젝트(250)에 대한 학습된 특징 정보는, "기저귀를 차고 있는 아기"와 같은 정보일 수 있다. 오브젝트(250)에 대한 학습된 특징 정보는 아기의 머리카락 색깔 정보와 같은 학습된 특징 정보를 더 포함할 수 있다.For example, the learned feature information on the object 250 described above may be information such as “a baby wearing a diaper”. The learned feature information of the object 250 may further include learned feature information such as baby's hair color information.

예컨대 전술한 오브젝트(260)에 대한 학습된 특징 정보는, "강아지"와 같은 정보일 수 있다. 오브젝트(260)에 대한 학습된 특징 정보는 강아지의 털 색깔 정보와 같은 학습된 특징 정보를 더 포함할 수 있다.For example, the learned feature information for the object 260 described above may be information such as “puppy”. The learned feature information of the object 260 may further include learned feature information such as puppy's fur color information.

다음으로, 연산 처리부(130)는 단계 S120을 통해서 생성된 그래픽 유저 인터페이스 구조 및 단계 S130을 통해서 생성된 제1 모델링 정보를 기초로 제1 코드를 인공 지능을 이용하여 생성한다(단계 S140).Next, the operation processing unit 130 generates a first code using artificial intelligence based on the graphical user interface structure generated through step S120 and the first modeling information generated through step S130 (step S140).

단계 S120을 통해서 그래픽 유저 인터페이스 구조를 보다 정확하게 생성할 수 있고 또한 단계 S130을 통해서 생성된 제1 모델링 정보(즉 다수의 오브젝트에 대한 학습된 특징 정보)를 처리 부하를 최소화하면서 생성할 수 있기 때문에, 제1 코드는 용이하게 그리고 보다 정확하게 생성될 수 있다.Since the graphical user interface structure can be more accurately generated through step S120 and the first modeling information (ie, learned feature information for a plurality of objects) generated through step S130 can be generated while minimizing the processing load, The first code can be easily and more accurately generated.

제1 코드는 웹 페이지 또는 애플리케이션에 대응하여 HTML 코드 및 애플리케이션 코드 중 적어도 하나를 포함한다.The first code includes at least one of HTML code and application code corresponding to the web page or application.

한편 도 1을 참조하면, 연산 처리부(130)는 다수의 오브젝트 각각에 부착되는 마커 정보를 제거할 수 있다(단계 S150).Meanwhile, referring to FIG. 1 , the calculation processing unit 130 may remove marker information attached to each of a plurality of objects (step S150).

즉, 일단 그래픽 유저 인터페이스 구조가 생성되면(그리고 제1 모델링 정보가 생성되면), 마커 정보를 제거할 수 있다. 단계 S150은 단계 S140 이전에 수행될 수 있다.That is, once the graphical user interface structure is created (and the first modeling information is created), the marker information can be removed. Step S150 may be performed before step S140.

이와 같이 제1 실시예에 따르면, 오브젝트에 부착되는 마커 정보를 이용하는 것에 의해서 오브젝트를 분석하기 위해서 필요한 처리 부하를 최소화하고, 복잡한 구조를 가지는 GUI에 대해서도 코드를 인공 지능을 이용하여 자동적으로 보다 정확하게 코드를 생성할 수 있다.In this way, according to the first embodiment, the processing load required to analyze an object is minimized by using the marker information attached to the object, and the code is automatically more accurately coded using artificial intelligence even for a GUI having a complex structure. can create

<제2 실시예><Second Embodiment>

도 5는 본원에서 설명되는 기술의 제2 실시예에 따른 인공 지능을 이용한 코드 생성 방법의 예시적인 흐름도이다.5 is an exemplary flow diagram of a code generation method using artificial intelligence according to a second embodiment of the technology described herein.

본원에서 설명되는 기술의 제2 실시예에 따른 인공 지능을 이용한 코드 생성 방법은 전술한 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 수행한 후 수행될 수 있다.The code generation method using artificial intelligence according to the second embodiment of the technology described herein may be performed after performing the code generation method using artificial intelligence according to the first embodiment described above.

제2 실시예에 따른 인공 지능을 이용한 코드 생성 방법은 제1 오브젝트를 제2 오브젝트로 대체하는 것에 의해서, 제2 코드를 생성하는 것에 대한 것이다.A code generation method using artificial intelligence according to a second embodiment relates to generating a second code by replacing a first object with a second object.

이하 제1 오브젝트가 텍스트 오브젝트인 경우를 가정하여 제2 실시예를 설명한다.Hereinafter, a second embodiment will be described assuming that the first object is a text object.

연산 처리부(130)는 제1 오브젝트를 제1 오브젝트의 처리 정보를 변경하여 생성된 제2 오브젝트로 대체하는 것에 의해서, 제1 모델링 정보를 제2 모델링 정보로 변환한다(단계 S210).The calculation processing unit 130 converts the first modeling information into the second modeling information by replacing the first object with the second object generated by changing the processing information of the first object (step S210).

도 6은 본원에서 설명되는 기술의 제2 실시예에 따른 인공 지능을 이용한 코드 생성 방법에 있어서, 제1 오브젝트를 제2 오브젝트로 대체한 예를 도시하는 도면이다.6 is a diagram illustrating an example in which a first object is replaced with a second object in a code generation method using artificial intelligence according to a second embodiment of a technique described herein.

예컨대 도 3을 참조로 예시된 오브젝트(250)는 "BABY AND DOG"라는 텍스트 오브젝트이다. 즉 오브젝트(250)의 처리 정보는 제1 언어인 영어에 대응하여 "BABY AND DOG"라는 텍스트를 포함한다.For example, the object 250 illustrated with reference to FIG. 3 is a text object “BABY AND DOG”. That is, the processing information of the object 250 includes the text "BABY AND DOG" corresponding to English, which is the first language.

예컨대 영어가 아닌 제2 언어, 예컨대 독일어로 웹 페이지 또는 애플리케이션을 제공하려면, 제2 언어인 독일어에 대응하여 "BABY AND HUND"라는 처리 정보를 포함하는 텍스트 오브젝트를 사용하여야 한다.For example, to provide a web page or application in a second language other than English, such as German, a text object including processing information “BABY AND HUND” corresponding to the second language, German, should be used.

따라서, 단계 S210을 통하여, 오브젝트(250)는 "BABY AND HUND"라는 처리 정보를 포함하는 오브젝트(290)로 대체된다.Accordingly, through step S210, the object 250 is replaced with the object 290 including processing information of “BABY AND HUND”.

오브젝트(290)는 예컨대 사용자 입력을 기초로 인공 지능을 이용하여 생성될 수 있다.Object 290 may be generated using artificial intelligence based on user input, for example.

도 6을 참조하면, 오브젝트(250)가 오브젝트(290)로 대체된 예가 도시되며, 특히 오브젝트(210) 내지 오브젝트(240), 오브젝트(240), 오브젝트(260) 내지 오브젝트(290)의 마커 정보는 제거된 상태가 도시된다.Referring to FIG. 6 , an example in which an object 250 is replaced with an object 290 is shown, and in particular, marker information of the objects 210 to 240, the object 240, and the objects 260 to 290 is shown. A removed state is shown.

한편 도 6에서는, 오브젝트(250)의 텍스트에 대해서 언어가 변경된 예가 도시되지만, 본 실시예는 이에 한정되지 않는다. 예컨대, 오브젝트(250)를, 오브젝트(250)의 텍스트에 대해서 텍스트(즉 내용), 사용되는 폰트, 색상, 크기, 표시 위치 및 표시 방법 중 적어도 하나를 변경하여 생성된 오브젝트(290)로 대체하는 경우에도, 본 실시예는 바람직하게 적용될 수 있다.Meanwhile, FIG. 6 shows an example in which the language of the text of the object 250 is changed, but the present embodiment is not limited thereto. For example, replacing the object 250 with the object 290 created by changing at least one of text (ie, content), used font, color, size, display position, and display method for the text of the object 250. Even in this case, this embodiment can be preferably applied.

또한 제1 오브젝트가 텍스트 오브젝트가 아닌 이미지 오브젝트이고, 제1 오브젝트를 제1 오브젝트의 처리 정보를 변경하여 생성된 제2 오브젝트로 대체하는 경우에도, 본 실시예는 바람직하게 적용될 수 있다.In addition, even when the first object is an image object rather than a text object and the first object is replaced with a second object generated by changing processing information of the first object, the present embodiment can be preferably applied.

오브젝트(250)를 오브젝트(290)로 대체하는 것에 따라서, 제1 실시예에 따른 제1 모델링 정보는 오브젝트(250) 대신에 오브젝트(290)로 대체된 제2 모델링 정보로 변환된다.As the object 250 is replaced with the object 290 , the first modeling information according to the first embodiment is converted into second modeling information replaced with the object 290 instead of the object 250 .

다음으로, 연산 처리부(130)는 그래픽 유저 인터페이스 구조 및 단계 S210에서 생성된 제2 모델링 정보를 기초로 제2 코드를 인공 지능을 이용하여 생성한다(단계 S220).Next, the operation processing unit 130 generates a second code using artificial intelligence based on the graphic user interface structure and the second modeling information generated in step S210 (step S220).

그래픽 유저 인터페이스 구조는 오브젝트(250)가 오브젝트(290)로 대체되는 것에 따라서 일부 변동될 수 있다.The structure of the graphic user interface may be partially changed as the object 250 is replaced with the object 290 .

이와 같이 제2 실시예에 따르면, 제1 실시예에 따른 전술한 효과에 더해서, 제1 오브젝트를 제2 오브젝트로 대체하는 것에 의해서 제2 코드를 자동적으로 생성할 수 있다.In this way, according to the second embodiment, in addition to the above effects according to the first embodiment, the second code can be automatically generated by replacing the first object with the second object.

<제3 실시예><Third Embodiment>

도 7은 본원에서 설명되는 기술의 제3 실시예에 따른 인공 지능을 이용한 코드 생성 방법의 예시적인 흐름도이다.7 is an exemplary flow diagram of a code generation method using artificial intelligence according to a third embodiment of the technology described herein.

본원에서 설명되는 기술의 제3 실시예에 따른 인공 지능을 이용한 코드 생성 방법은 전술한 제1 실시예에 따른 인공 지능을 이용한 코드 생성 방법을 수행한 후 수행된다.The code generation method using artificial intelligence according to the third embodiment of the technology described herein is performed after performing the code generation method using artificial intelligence according to the first embodiment described above.

제3 실시예에 따른 인공 지능을 이용한 코드 생성 방법은 제1 오브젝트 그룹을 하나 이상의 오브젝트 각각의 액션 정보를 일괄 변경한 제2 오브젝트 그룹으로 대체하는 것에 의해서 제3 코드를 생성하기 위해서 사용된다.A code generation method using artificial intelligence according to the third embodiment is used to generate third codes by replacing a first object group with a second object group obtained by collectively changing action information of one or more objects.

연산 처리부(130)는 다수의 오브젝트 중의 하나 이상의 오브젝트를 포함하는 제1 오브젝트 그룹을 하나 이상의 오브젝트 각각의 액션 정보를 일괄 변경한 제2 오브젝트 그룹으로 대체하는 것에 의해서, 제1 모델링 정보를 제3 모델링 정보로 변환한다(단계 S310).The operation processing unit 130 converts the first modeling information into third modeling by replacing a first object group including one or more objects among a plurality of objects with a second object group in which action information of each of the one or more objects is collectively changed. It is converted into information (step S310).

예컨대 제1 오브젝트 그룹은 액션 정보로서 "팝업 형태로 표시"하는 것이 설정되어 있는 그룹이다. 제1 오브젝트 그룹의 액션 정보로서 "팝업 형태로 표시"에서 "스플래시 형태로 표시"로 일괄 변경하여 제2 오브젝트 그룹을 생성한다. 그 후, 제1 오브젝트 그룹을 제2 오브젝트 그룹으로 대체하는 것에 의해서, 제1 모델링 정보를 제3 모델링 정보로 변환한다.For example, the first object group is a group in which “display in pop-up form” is set as action information. As the action information of the first object group, a second object group is created by collectively changing from “display in pop-up form” to “display in splash form”. Thereafter, the first modeling information is converted into third modeling information by replacing the first object group with the second object group.

다음으로, 연산 처리부(130)는 그래픽 유저 인터페이스 구조 및 단계 S310에서 생성된 제3 모델링 정보를 기초로 제3 코드를 인공 지능을 이용하여 생성한다(단계 S320).Next, the calculation processing unit 130 generates a third code using artificial intelligence based on the graphic user interface structure and the third modeling information generated in step S310 (step S320).

그래픽 유저 인터페이스 구조는 제1 오브젝트 그룹이 제2 오브젝트 그룹으로 대체되는 것에 따라서 일부 변동될 수 있다.The structure of the graphic user interface may be partially changed as the first object group is replaced with the second object group.

이와 같이 제3 실시예에 따르면, 제1 실시예에 따른 전술한 효과에 더해서, 제1 오브젝트 그룹을 제2 오브젝트 그룹으로 대체하는 것에 의해서, 제3 코드를 자동적으로 생성할 수 있다.In this way, according to the third embodiment, in addition to the above effects according to the first embodiment, the third code can be automatically generated by replacing the first object group with the second object group.

<다른 실시예><Another Example>

비록 본원에서 설명되는 기술의 실시예가 구체적으로 설명되었지만 이는 단지 본원에서 설명되는 기술을 예시적으로 설명한 것에 불과한 것으로, 본원에서 설명되는 기술이 속하는 기술 분야에서 통상의 지식을 가지는 자라면 본원에서 설명되는 기술의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 변형이 가능할 것이다.Although the embodiments of the technology described herein have been specifically described, this is merely an example of the technology described herein, and those of ordinary skill in the art to which the technology described herein belongs will Various modifications will be possible within a range that does not deviate from the essential characteristics of the technology.

예컨대, 본원에서 설명되는 기술은 인공 지능을 이용한 코드 생성 장치에 적용될 수도 있다.For example, the technology described herein may be applied to a code generation device using artificial intelligence.

본원에서 설명되는 기술에 따른 인공 지능을 이용한 코드 생성 장치는, 예컨대 전술한 컴퓨팅 장치(100)에 의해서 구현될 수 있다.A code generating device using artificial intelligence according to the technology described herein may be implemented by, for example, the computing device 100 described above.

즉, 본원에서 설명되는 기술의 다른 일 형태에 따르면, 통신 인터페이스(110)와, 연산 처리부(130)와, 저장부(150)를 포함하며, 상기 연산 처리부(130)는, (a) 그래픽 유저 인터페이스를 구성하는 다수의 오브젝트 각각에 부착되는 마커 정보를 판독하는 처리; (b) 상기 다수의 오브젝트 각각의 상기 마커 정보를 기초로, 그래픽 유저 인터페이스 구조를 생성하는 처리; (c) 상기 다수의 오브젝트 각각의 상기 마커 정보를 기초로 상기 다수의 오브젝트 각각에 대해서 이미지 분석 모델 및 텍스트 분석 모델 중 어느 하나를 인공 지능을 이용하여 수행하는 것에 의해서, 상기 그래픽 유저 인터페이스에 대응하는 제1 모델링 정보를 생성하는 처리; 및 (d) 상기 그래픽 유저 인터페이스 구조 및 상기 제1 모델링 정보를 기초로 제1 코드를 상기 인공 지능을 이용하여 생성하는 처리를 수행하도록 구성되는 것인 인공 지능을 이용한 코드 생성 장치가 제공된다.That is, according to another form of the technology described herein, the communication interface 110, the calculation processing unit 130, and the storage unit 150 are included, and the calculation processing unit 130 includes (a) a graphic user processing of reading marker information attached to each of a plurality of objects constituting the interface; (b) processing of generating a graphical user interface structure based on the marker information of each of the plurality of objects; (c) By performing any one of an image analysis model and a text analysis model for each of the plurality of objects based on the marker information of each of the plurality of objects using artificial intelligence, corresponding to the graphic user interface processing of generating first modeling information; and (d) generating a first code using the artificial intelligence based on the graphic user interface structure and the first modeling information.

본원에서 설명되는 기술에 따른 인공 지능을 이용한 코드 생성 방법의 다른 특징들 역시 본원에서 설명되는 기술에 따른 인공 지능을 이용한 코드 생성 장치에서도 마찬가지로 적용될 수 있다.Other features of the code generation method using artificial intelligence according to the technology described herein may also be applied to the code generation device using artificial intelligence according to the technology described herein.

따라서 본 명세서에 설명된 실시예들은 본원에서 설명되는 기술을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본원에서 설명되는 기술의 사상과 범위가 한정되는 것은 아니다. 본원에서 설명되는 기술의 권리 범위는 아래의 청구범위에 의해 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술은 본원에서 설명되는 기술의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.Therefore, the embodiments described herein are intended to explain, not limit, the technology described herein, and the spirit and scope of the technology described herein are not limited by these embodiments. The scope of rights of the technology described herein should be construed by the claims below, and all technologies within the equivalent range should be construed as being included in the scope of the technology described herein.

본원에서 설명되는 기술에 따르면, 오브젝트에 부착되는 마커 정보를 이용하는 것에 의해서 오브젝트를 분석하기 위해서 필요한 처리 부하를 최소화하고, 복잡한 구조를 가지는 GUI에 대해서도 코드를 인공 지능을 이용하여 자동적으로 보다 정확하게 코드를 생성할 수 있다.According to the technology described herein, the processing load required to analyze an object is minimized by using marker information attached to the object, and the code is automatically more accurately generated using artificial intelligence even for a GUI having a complex structure. can create

100: 컴퓨팅 장치 110: 통신 인터페이스
130: 연산 처리부 150: 저장부
210, 220, 230, 240, 250, 260, 270, 280, 290: 오브젝트
310, 320, 330, 340, 350, 360, 370, 380: 마커 정보
100: computing device 110: communication interface
130: calculation processing unit 150: storage unit
210, 220, 230, 240, 250, 260, 270, 280, 290: Object
310, 320, 330, 340, 350, 360, 370, 380: marker information

Claims (16)

컴퓨팅 장치에 의해서 수행되며,
(a) 그래픽 유저 인터페이스를 구성하는 다수의 오브젝트 각각에 부착되는 마커 정보를 판독하는 단계;
(b) 상기 다수의 오브젝트 각각의 상기 마커 정보를 기초로, 그래픽 유저 인터페이스 구조를 생성하는 단계;
(c) 상기 다수의 오브젝트 각각의 상기 마커 정보를 기초로 상기 다수의 오브젝트 각각에 대해서 이미지 분석 모델 및 텍스트 분석 모델 중 어느 하나를 인공 지능을 이용하여 수행하는 것에 의해서, 상기 그래픽 유저 인터페이스에 대응하는 제1 모델링 정보를 생성하는 단계; 및
(d) 상기 그래픽 유저 인터페이스 구조 및 상기 제1 모델링 정보를 기초로 제1 코드를 상기 인공 지능을 이용하여 생성하는 단계
를 포함하고,
상기 다수의 오브젝트 중 제1 오브젝트의 상기 마커 정보는, 상기 제1 오브젝트가 이미지 오브젝트인지 또는 텍스트 오브젝트인지를 나타내는 오브젝트 분류 정보 및 상기 제1 오브젝트와 관련된 처리 정보 중 적어도 하나를 포함하고,
상기 단계 (c)는,
(c-1) 상기 제1 오브젝트의 상기 오브젝트 분류 정보가 상기 이미지 오브젝트를 나타내면, 상기 제1 오브젝트에 대해서 상기 이미지 분석 모델을 수행하는 단계; 및
(c-2) 상기 제1 오브젝트의 상기 오브젝트 분류 정보가 상기 텍스트 오브젝트를 나타내면, 상기 제1 오브젝트에 대해서 상기 텍스트 분석 모델을 수행하는 단계
를 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
performed by a computing device;
(a) reading marker information attached to each of a plurality of objects constituting the graphic user interface;
(b) generating a graphic user interface structure based on the marker information of each of the plurality of objects;
(c) By performing any one of an image analysis model and a text analysis model for each of the plurality of objects based on the marker information of each of the plurality of objects using artificial intelligence, corresponding to the graphic user interface generating first modeling information; and
(d) generating a first code based on the graphic user interface structure and the first modeling information using the artificial intelligence;
including,
The marker information of a first object among the plurality of objects includes at least one of object classification information indicating whether the first object is an image object or a text object and processing information related to the first object,
In the step (c),
(c-1) if the object classification information of the first object indicates the image object, performing the image analysis model on the first object; and
(c-2) if the object classification information of the first object indicates the text object, performing the text analysis model on the first object;
Code generation method using artificial intelligence that includes a.
제1항에 있어서,
상기 다수의 오브젝트 각각의 상기 마커 정보는 미리 지정된 마커 정보 지정 규칙에 따라서 지정되는 것인 코드 생성 방법.
According to claim 1,
The code generation method of claim 1 , wherein the marker information of each of the plurality of objects is designated according to a previously designated marker information designation rule.
제2항에 있어서,
상기 마커 정보 지정 규칙은 CSS(Cascading Style Sheets)를 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 2,
Code generation method using artificial intelligence, wherein the marker information designation rule includes Cascading Style Sheets (CSS).
제1항에 있어서,
상기 다수의 오브젝트 각각의 상기 마커 정보는 자연어를 이용하여 지정되는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
Code generation method using artificial intelligence, wherein the marker information of each of the plurality of objects is specified using a natural language.
제1항에 있어서,
상기 이미지 분석 모델은 CNN(Convolutional Neural Network)-기반 모델, R-CNN(Region-based Convolutional Neural Network)-기반 모델 및 RNN(Recurrent Neural Network)-기반 모델 중 적어도 하나를 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
The image analysis model includes at least one of a Convolutional Neural Network (CNN)-based model, a Region-based Convolutional Neural Network (R-CNN)-based model, and a Recurrent Neural Network (RNN)-based model. How to generate the code used.
제1항에 있어서,
상기 텍스트 분석 모델은 LSTM(Long Short-Term Memory) 계층 모델을 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
The text analysis model includes a long short-term memory (LSTM) hierarchical model. Code generation method using artificial intelligence.
제1항에 있어서,
(e) 상기 단계 (d) 이전에 상기 마커 정보를 제거하는 단계
를 더 포함하는 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
(e) removing the marker information prior to step (d)
Code generation method using artificial intelligence further comprising a.
제1항에 있어서,
상기 제1 오브젝트의 상기 처리 정보는 제공 대상인 장치의 사양 및 브라우저의 사양 중 적어도 하나에 따라서 지정되는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
Wherein the processing information of the first object is specified according to at least one of a specification of a device to be provided and a specification of a browser.
제1항에 있어서,
(f) 상기 제1 오브젝트를 상기 제1 오브젝트의 상기 처리 정보를 변경하여 생성된 제2 오브젝트로 대체하는 것에 의해서, 상기 제1 모델링 정보를 제2 모델링 정보로 변환하는 단계; 및
(g) 상기 그래픽 유저 인터페이스 구조 및 상기 제2 모델링 정보를 기초로 제2 코드를 상기 인공 지능을 이용하여 생성하는 단계
를 더 포함하는 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
(f) converting the first modeling information into second modeling information by replacing the first object with a second object generated by changing the processing information of the first object; and
(g) generating a second code based on the graphic user interface structure and the second modeling information using the artificial intelligence;
Code generation method using artificial intelligence further comprising a.
제9항에 있어서,
상기 제1 오브젝트는 상기 텍스트 오브젝트이고, 상기 제1 오브젝트의 상기 처리 정보는, 텍스트, 사용되는 언어, 사용되는 폰트, 색상, 크기, 표시 위치 및 표시 방법 중 적어도 하나를 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 9,
The first object is the text object, and the processing information of the first object includes at least one of text, a language used, a font used, a color, a size, a display position, and a display method. How to generate the code used.
제1항에 있어서,
상기 제1 오브젝트의 상기 처리 정보는 상기 제1 오브젝트와 관련된 액션 정보를 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
The processing information of the first object includes action information related to the first object.
제11항에 있어서,
(h) 상기 다수의 오브젝트 중의 하나 이상의 오브젝트를 포함하는 제1 오브젝트 그룹을 상기 하나 이상의 오브젝트 각각의 액션 정보를 일괄 변경한 제2 오브젝트 그룹으로 대체하는 것에 의해서, 상기 제1 모델링 정보를 제3 모델링 정보로 변환하는 단계; 및
(i) 상기 그래픽 유저 인터페이스 구조 및 상기 제3 모델링 정보를 기초로 제2 코드를 상기 인공 지능을 이용하여 생성하는 단계
를 더 포함하는 인공 지능을 이용한 코드 생성 방법.
According to claim 11,
(h) By replacing a first object group including one or more objects among the plurality of objects with a second object group in which action information of each of the one or more objects is collectively changed, the first modeling information is replaced with third modeling information. converting into information; and
(i) generating a second code based on the graphic user interface structure and the third modeling information using the artificial intelligence;
Code generation method using artificial intelligence further comprising a.
제1항에 있어서,
상기 제1 모델링 정보는, 상기 다수의 오브젝트 각각에 대한 학습된 특징 정보를 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
Wherein the first modeling information includes learned feature information for each of the plurality of objects.
제1항에 있어서,
상기 제1 코드는 HTML 코드 및 애플리케이션 코드 중 적어도 하나를 포함하는 것인 인공 지능을 이용한 코드 생성 방법.
According to claim 1,
Wherein the first code includes at least one of HTML code and application code.
삭제delete 삭제delete
KR1020220177785A 2022-12-19 2022-12-19 Method of generating code using artificial intelligence KR102539283B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220177785A KR102539283B1 (en) 2022-12-19 2022-12-19 Method of generating code using artificial intelligence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220177785A KR102539283B1 (en) 2022-12-19 2022-12-19 Method of generating code using artificial intelligence

Publications (1)

Publication Number Publication Date
KR102539283B1 true KR102539283B1 (en) 2023-06-02

Family

ID=86755468

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220177785A KR102539283B1 (en) 2022-12-19 2022-12-19 Method of generating code using artificial intelligence

Country Status (1)

Country Link
KR (1) KR102539283B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005031737A (en) * 2003-07-07 2005-02-03 Hitachi Information Systems Ltd System, method, and program for generating source code, and software development support tool
KR20190119686A (en) * 2018-03-30 2019-10-23 한성대학교 산학협력단 Code generating apparatus and method
JP2021501382A (en) * 2018-02-12 2021-01-14 オラクル・インターナショナル・コーポレイション Automatic code generation
KR20220125282A (en) 2020-01-10 2022-09-14 블루 프리즘 리미티드 Remote access method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005031737A (en) * 2003-07-07 2005-02-03 Hitachi Information Systems Ltd System, method, and program for generating source code, and software development support tool
JP2021501382A (en) * 2018-02-12 2021-01-14 オラクル・インターナショナル・コーポレイション Automatic code generation
KR20190119686A (en) * 2018-03-30 2019-10-23 한성대학교 산학협력단 Code generating apparatus and method
KR20220125282A (en) 2020-01-10 2022-09-14 블루 프리즘 리미티드 Remote access method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1. https://arxiv.org/abs/1705.07962

Similar Documents

Publication Publication Date Title
Lopes et al. A learned representation for scalable vector graphics
JP7215690B2 (en) Scripting and content generation tools and improved behavior of these products
CN106575228A (en) Render target command reordering in graphics processing
US20180365594A1 (en) Systems and methods for generative learning
JP7333029B2 (en) Program, information processing method and information processing apparatus
CN112989363B (en) Vulnerability positioning method and device, electronic equipment and storage medium
CN111612010A (en) Image processing method, device, equipment and computer readable storage medium
Li et al. Auto completion of user interface layout design using transformer-based tree decoders
CN111652286A (en) Object identification method, device and medium based on graph embedding
Valle Hands-On Generative Adversarial Networks with Keras: Your guide to implementing next-generation generative adversarial networks
Kaddoura A Primer on Generative Adversarial Networks
Burch et al. Dashboard Design
KR102539283B1 (en) Method of generating code using artificial intelligence
KR102527572B1 (en) Method of generating code using artificial intelligence
KR102539282B1 (en) Method of generating code using artificial intelligence
JP7450187B2 (en) Program, information processing method, and information processing device
JP2012014526A (en) Structure conversion apparatus for program code, and code structure conversion program
JP2022151502A (en) Program, information processing device and method
JP7300828B2 (en) Learning data generation system, learning data generation method, learning method for machine learning model
JP2024086509A (en) How to generate code using artificial intelligence
Meyrer et al. Code autocomplete using transformers
Sonje et al. draw2code: Ai based auto web page generation from hand-drawn page mock-up
Saravanan Automated web design and code generation using deep learning
Chen et al. Deep neural inspection using deepbase
US20240185623A1 (en) Method and apparatus for providing text information including text extracted from content including image

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant