JP7477698B1 - Information processing device, information processing method, and program. - Google Patents

Information processing device, information processing method, and program. Download PDF

Info

Publication number
JP7477698B1
JP7477698B1 JP2023130210A JP2023130210A JP7477698B1 JP 7477698 B1 JP7477698 B1 JP 7477698B1 JP 2023130210 A JP2023130210 A JP 2023130210A JP 2023130210 A JP2023130210 A JP 2023130210A JP 7477698 B1 JP7477698 B1 JP 7477698B1
Authority
JP
Japan
Prior art keywords
library
sample code
task definition
document
chatbot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023130210A
Other languages
Japanese (ja)
Inventor
啓人 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PayPay Corp
Original Assignee
PayPay Corp
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 PayPay Corp filed Critical PayPay Corp
Priority to JP2023130210A priority Critical patent/JP7477698B1/en
Application granted granted Critical
Publication of JP7477698B1 publication Critical patent/JP7477698B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

【課題】所望のコードを容易に生成すること。【解決手段】所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用してサンプルコードを生成するように指示するタスク定義とを取得する取得部と、プログラムコードを含むテキストによる指示を入力とし、テキストによる指示に沿った情報を出力するように学習されたAIチャットボットに、前記ドキュメントとタスク定義とを入力することで得られる、前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードの情報を取得する処理部とを備える情報処理装置。【選択図】図2[Problem] To easily generate desired code. [Solution] An information processing device comprising: an acquisition unit that acquires a document including a method for using a library in a specified programming language and sample code for the library, and a task definition that instructs the user to generate sample code using the library; and a processing unit that acquires sample code information corresponding to the task definition in a manner following the method for using the library, the sample code information being obtained by inputting the document and the task definition into an AI chatbot that is trained to receive text instructions including program code and output information according to the text instructions. [Selected Figure] Figure 2

Description

本発明は、情報処理装置、情報処理方法、およびプログラムに関する。 The present invention relates to an information processing device, an information processing method, and a program.

従来、1以上のプログラム部品に基づいて合成プログラムを生成する生成部と、前記合成プログラムの内容を可視化する可視化部と、可視化された前記合成プログラムについてユーザによって所定の指示が入力された場合に、前記1以上のプログラム部品に基づいて合成プログラムを再生成する再生成部と、を有すること特徴とするプログラム生成装置が開示されている(例えば特許文献1参照)。 A program generation device has been disclosed that includes a generation unit that generates a composite program based on one or more program parts, a visualization unit that visualizes the contents of the composite program, and a regeneration unit that regenerates the composite program based on the one or more program parts when a user inputs a predetermined instruction for the visualized composite program (see, for example, Patent Document 1).

特開2022-17685号公報JP 2022-17685 A

従来の技術では、所望のコードを容易に生成することができないことがあった。 With conventional technology, it was sometimes difficult to generate the desired code.

本発明は、このような事情を考慮してなされたものであり、所望のコードを容易に生成することができる情報処理装置、情報処理方法、およびプログラムを提供することを目的の一つとする。 The present invention has been made in consideration of these circumstances, and one of its objectives is to provide an information processing device, an information processing method, and a program that can easily generate desired code.

本発明の一態様は、所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用してサンプルコードを生成するように指示するタスク定義とを取得する取得部と、プログラムコードを含むテキストによる指示を入力とし、テキストによる指示に沿った情報を出力するように学習されたAIチャットボットに、前記ドキュメントとタスク定義とを入力することで得られる、前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードの情報を取得する処理部とを備える情報処理装置である。 One aspect of the present invention is an information processing device that includes an acquisition unit that acquires a document including a method for using a library in a specified programming language and sample code for the library, and a task definition that instructs the system to generate sample code using the library, and a processing unit that acquires information about the sample code corresponding to the task definition in a manner that conforms to the method for using the library by inputting the document and the task definition into an AI chatbot that is trained to receive text instructions including program code as input and output information in accordance with the text instructions.

本発明の一態様によれば、所望のコードを容易に生成することができる情報処理装置、情報処理方法、およびプログラムを提供することができる。 According to one aspect of the present invention, it is possible to provide an information processing device, an information processing method, and a program that can easily generate desired code.

情報処理システム1の構成の一例を示す図である。FIG. 1 is a diagram illustrating an example of a configuration of an information processing system 1. 情報処理装置100の構成図である。FIG. 1 is a diagram illustrating a configuration of an information processing device 100. 要約部110の処理の概要を説明するための図である。2 is a diagram for explaining an overview of the processing of a summarizing unit 110. FIG. 処理部130の処理の概要について説明するための図である。10 is a diagram for explaining an overview of processing by a processing unit 130. FIG. 本実施形態を利用せずに生成されたサンプルコード(1)および本実施形態を利用して生成されたサンプルコード(2)の一例を示す図である。1A and 1B are diagrams illustrating an example of sample code (1) generated without using this embodiment and sample code (2) generated using this embodiment. 情報処理装置100とAIチャットボットサーバ200とにより実行される処理の流れ一例を示すシーケンス図である。A sequence diagram showing an example of the flow of processing performed by the information processing device 100 and the AI chatbot server 200.

以下、図面を参照し、本発明の情報処理装置の制御方法の実施形態について説明する。以下に登場する「情報処理装置」などの、利用者にサービスを提供したり内部解析を行ったりするための各種装置は、分散化された装置群によって実現されてよく、それぞれの装置を運用する事業者は異なってもよい。また装置のハードウェアの保有者(クラウドサーバの提供者)と実質的な運用を行う事業者も異なってよい。 Below, an embodiment of a control method for an information processing device of the present invention will be described with reference to the drawings. Various devices for providing services to users and performing internal analysis, such as the "information processing device" that will be described below, may be realized by a distributed group of devices, and each device may be operated by a different business operator. In addition, the owner of the hardware for the device (the provider of the cloud server) and the business that actually operates it may also be different.

図1は、情報処理システム1の構成の一例を示す図である。情報処理システム1は、例えば、情報処理装置100と、AIチャットボットサーバ200とを備える。これらは、ネットワークNWを介して通信する。ネットワークNWは、例えば、インターネット、LAN(Local Area Network)、無線基地局、プロバイダ装置などを含む。 Figure 1 is a diagram showing an example of the configuration of an information processing system 1. The information processing system 1 includes, for example, an information processing device 100 and an AI chatbot server 200. These communicate via a network NW. The network NW includes, for example, the Internet, a LAN (Local Area Network), a wireless base station, a provider device, etc.

[AIチャットボット]
AIチャットボットサーバ200は、インターネットサイトなどの情報源300からクロールなどによって定期的に情報を得ており、世間の常識知に基づいてテキストが入力されるとテキストに応じた返信を行うように学習されたモデルである。AIチャットボットサーバ200は、例えば、ChatGPT(GPT-4)、Alpaca、Vicuna、Raven RWKV、Marvinなどの名称で知られているものである。AIチャットボットサーバ200は、例えば、プログラムコードを含むテキストによる指示を入力とし、テキストによる指示に沿った情報を出力するように学習されたモデルである。AIチャットボットサーバ200は、ドキュメントとタスク定義とが入力されると、ライブラリの使い方に従った方法でタスク定義に対応するサンプルコードの情報を出力する。例えば、AIチャットボットサーバ200は、ドキュメントとタスク定義とテキストによる指示とが入力されると、指示に応じたライブラリの使い方に従った方法でタスク定義に対応するサンプルコードの情報を出力するように学習されたモデルである。AIチャットボットサーバ200は、ドキュメントとタスク定義と指示とが入力されると、指示に応じたライブラリの使い方に従った方法でタスク定義に対応するサンプルコードの情報を出力する。上記において、サンプルデータが入力され、サンプルデータが取り込まれたサンプルコードが出力されてもよい。
[AI Chatbot]
The AI chatbot server 200 is a model that periodically obtains information from an information source 300 such as an Internet site by crawling, and is trained to reply according to the text when a text is input based on common knowledge. The AI chatbot server 200 is known under the names of ChatGPT (GPT-4), Alpaca, Vicuna, Raven RWKV, Marvin, etc., for example. The AI chatbot server 200 is a model that is trained to receive, for example, a text instruction including a program code as an input, and output information according to the text instruction. When a document and a task definition are input, the AI chatbot server 200 outputs sample code information corresponding to the task definition in a manner according to the usage of the library. For example, the AI chatbot server 200 is a model that is trained to receive, for example, a document, a task definition, and a text instruction, and output sample code information corresponding to the task definition in a manner according to the usage of the library according to the instruction. When a document, a task definition, and an instruction are input to the AI chatbot server 200, the AI chatbot server 200 outputs information on a sample code corresponding to the task definition in a manner that conforms to the usage of the library according to the instruction. In the above, sample data may be input, and sample code incorporating the sample data may be output.

[情報処理装置]
図2は、情報処理装置100の構成図である。情報処理装置100は、例えば、要約部110と、取得部120と、処理部130と、提供部140と、記憶部170とを備える。記憶部170以外の構成要素は、例えば、CPU(Central Processing Unit)などのハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)などのハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めHDD(Hard Disk Drive)やフラッシュメモリなどの記憶装置(非一過性の記憶媒体を備える記憶装置)に格納されていてもよいし、DVDやCD-ROMなどの着脱可能な記憶媒体(非一過性の記憶媒体)に格納されており、記憶媒体がドライブ装置に装着されることで記憶装置にインストールされてもよい。
[Information processing device]
FIG. 2 is a configuration diagram of the information processing device 100. The information processing device 100 includes, for example, a summarizing unit 110, an acquiring unit 120, a processing unit 130, a providing unit 140, and a storage unit 170. The components other than the storage unit 170 are realized by, for example, a hardware processor such as a CPU (Central Processing Unit) executing a program (software). Some or all of these components may be realized by hardware (including circuitry) such as an LSI (Large Scale Integration), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a GPU (Graphics Processing Unit), or may be realized by cooperation between software and hardware. The program may be stored in advance in a storage device such as an HDD (Hard Disk Drive) or a flash memory (a storage device having a non-transient storage medium), or may be stored in a removable storage medium such as a DVD or a CD-ROM (a non-transient storage medium), and may be installed in the storage device by mounting the storage medium in a drive device.

記憶部70は、HDDやフラッシュメモリ、RAM(Random Access Memory)などである。記憶部70は、情報処理装置100がネットワークを介してアクセス可能なNAS(Network Attached Storage)装置であってもよい。 The storage unit 70 is a HDD, a flash memory, a RAM (Random Access Memory), etc. The storage unit 70 may be a NAS (Network Attached Storage) device that the information processing device 100 can access via a network.

記憶部70には、例えばドキュメント情報172や、要約情報174、定義情報(タスク定義、スキーマ定義)176、生成情報178などが記憶されている。ドキュメント情報172は、所定のプログラム言語のドキュメントである。例えば、ドキュメント情報172は、構造化照会言語(SQL)の情報である。これらの情報の詳細については後述する。 The storage unit 70 stores, for example, document information 172, summary information 174, definition information (task definition, schema definition) 176, generation information 178, and the like. The document information 172 is a document in a specific programming language. For example, the document information 172 is information in Structured Query Language (SQL). Details of this information will be described later.

(要約部)
要約部110は、ドキュメント情報172を分割し、分割した分割ドキュメントのそれぞれを、順番に、AIチャットボットサーバ200に入力することで、入力した分割ドキュメントが要約された要約情報を取得する。
(Summary)
The summary unit 110 divides the document information 172 and inputs each of the divided documents in turn to the AI chatbot server 200, thereby obtaining summary information that summarizes the input divided documents.

ドキュメント情報172は、例えば、所定のバージョンのライブラリに関連するドキュメント情報(例えばライブラリの使用方法)や、サンプルコード(例えばJavaなどのコード)、所定バージョンでの注意点、FAQ、所定のバージョンまでの変更点リストなどを含む。上記の情報の一部の情報は省略されてもよい。また、ドキュメント情報172は、例えば、サンプルデータなどの情報を含んでもよい。サンプルコードとは、ライブラリの機能を実現するためのサンプルコードである。サンプルデータは、サンプルコードに利用されるサンプルデータである。AIチャットボットサーバ200が一度に処理可能なデータ量(例えばトークンの数)には制限がある。要約部110は、ドキュメント情報172のデータ量が制限を超える場合、制限を超えないデータ量に収まるようにドキュメントを分割する。要約部110は、分割後のドキュメントを、順番にAIチャットボットサーバ200に入力して、AIチャットボットサーバ200が出力したドキュメントの要約を取得する。 The document information 172 includes, for example, document information related to a specific version of the library (e.g., how to use the library), sample code (e.g., code such as Java), points to note in a specific version, FAQ, a list of changes up to the specific version, and the like. Some of the above information may be omitted. The document information 172 may also include, for example, information such as sample data. The sample code is sample code for implementing the functions of the library. The sample data is sample data used in the sample code. There is a limit to the amount of data (e.g., the number of tokens) that the AI chatbot server 200 can process at one time. If the amount of data in the document information 172 exceeds the limit, the summarizing unit 110 divides the document so that the amount of data does not exceed the limit. The summarizing unit 110 inputs the divided documents in order to the AI chatbot server 200 and obtains a summary of the document output by the AI chatbot server 200.

図3は、要約部110の処理の概要を説明するための図である。例えば、要約部110は、ドキュメントを3分割して、3回に分けてドキュメントをAIチャットボットサーバ200に入力し、入力ごとの要約を取得する。要約部110は、要約されたドキュメントに基づいて要約・符号化された要約情報174を生成し、生成した要約情報174を記憶部170に記憶させる。これは、後述するようにAIチャットボットサーバ200にて再度処理を行わせるための前処理である。なお、要約・符号化の方法はAIチャットボットサーバ200の内部実装により決定される。要約情報174は、例えば、要約を統合させた情報である。例えば、要約情報174は、AIチャットボットサーバ200が出力した分割後のドキュメントに対応する要約を、順番に接続して1つのドキュメントとする。上記のドキュメントは、例えば、所定のバージョンのライブラリに関連するドキュメント情報(例えばライブラリの使用方法)や、サンプルコード、所定バージョンでの注意点、FAQ、所定のバージョンまでの変更点リストなどを含む。上記の情報の一部の情報は省略されてもよい。また、ドキュメントは、例えば、サンプルデータなどの情報を含んでもよい。 3 is a diagram for explaining an overview of the processing of the summarizing unit 110. For example, the summarizing unit 110 divides a document into three parts, inputs the document into the AI chatbot server 200 in three separate inputs, and obtains a summary for each input. The summarizing unit 110 generates summary information 174 that is summarized and encoded based on the summarized document, and stores the generated summary information 174 in the storage unit 170. This is a preprocessing step for re-processing in the AI chatbot server 200, as described later. The method of summarizing and encoding is determined by the internal implementation of the AI chatbot server 200. The summary information 174 is, for example, information that integrates summaries. For example, the summary information 174 is a single document that is formed by sequentially connecting summaries corresponding to the divided documents output by the AI chatbot server 200. The above document includes, for example, document information related to a specific version of the library (for example, how to use the library), sample code, points to note in a specific version, FAQ, a list of changes up to the specific version, and the like. Some of the above information may be omitted. The document may also include information such as sample data.

(取得部)
取得部120は、記憶部170から要約情報174(ドキュメント情報172)と、定義情報176とを取得する。取得部120は、要約情報174または定義情報176が他の記憶部に記憶されている場合や、他の装置から提供される場合、他の記憶部または他の装置から取得する。
(Acquisition Department)
The acquiring unit 120 acquires the summary information 174 (document information 172) and the definition information 176 from the storage unit 170. When the summary information 174 or the definition information 176 is stored in another storage unit or provided from another device, the acquiring unit 120 acquires it from the other storage unit or from another device.

定義情報176は、ライブラリ(ドキュメント情報172)を利用してサンプルコードを生成するように指示するタスク定義である。定義情報176は、例えば、データベースのデータの構造や、性質、データ間の関連性、データベースを操作するときのルールなどが定義された情報である。定義情報176は、例えば、データを具体的にどのように格納するかを定義した情報である。定義情報176は、例えば、データベースの枠組みを示す情報である。 Definition information 176 is a task definition that instructs the generation of sample code using a library (document information 172). Definition information 176 is, for example, information that defines the structure and properties of database data, the relationships between data, and rules for operating the database. Definition information 176 is, for example, information that defines how data is specifically stored. Definition information 176 is, for example, information that indicates the framework of the database.

(処理部)
処理部130は、AIチャットボットサーバ200に、ドキュメントとタスク定義と指示とを入力することで得られる、指示に応じたライブラリの使い方に従った方法でタスク定義に対応するサンプルコードの情報を取得する。処理部130は、例えば、要約情報174と、定義情報176とをAIチャットボットサーバ200に入力して、定義情報176に入力したライブラリの使い方に沿ったドキュメントのサンプルデータを適用したサンプルコードを出力するようにAIチャットボットサーバ200に指示する。
(Processing section)
The processing unit 130 obtains information on sample code corresponding to the task definition in a manner conforming to the usage of the library according to the instructions, which is obtained by inputting a document, a task definition, and an instruction to the AI chatbot server 200. For example, the processing unit 130 inputs summary information 174 and definition information 176 to the AI chatbot server 200, and instructs the AI chatbot server 200 to output sample code that applies sample data of the document conforming to the usage of the library input to the definition information 176.

図4は、処理部130の処理の概要について説明するための図である。処理部130は、AIチャットボットサーバ200が出力した生成情報178を取得する。生成情報178は、定義情報176に入力したライブラリの使い方に沿ったドキュメントのサンプルデータを適用したサンプルコードである。サンプルコードは、コードの枠組みにサンプルデータが組み込まれたサンプルコードである。例えば、図4の定義情報176の「i0(図中、AR1)」・・・「i8(図中、AR2)」にライブラリの使い方に沿ったサンプルデータが取り込まれたサンプルコードが生成される。サンプルコードは、サンプルデータを利用して、ライブラリの機能が実現されているかをテストできるコード、または管理者のコードの作成を支援するコードである。サンプルコードは、一部が欠損していたり、一部に不備が生じていたりするものであってもよい。この場合、管理者がサンプルコードを確認、修正することで、欠損や不備などは解消される。具体的には、処理部130は、ライブラリを利用したプログラムコードの自動生成の指示をAIチャットボットサーバ200に対して行う。図4では、一例として、処理部130は、SQLのテーブルの定義情報を渡し、それに応じてライブラリのコードの利用例を生成するように指示している。なお、上記の例で、サンプルデータが取り込まれたサンプルコードに代えて、サンプルデータが取り込まれる前のサンプルコードが生成されてもよい。 FIG. 4 is a diagram for explaining an overview of the processing of the processing unit 130. The processing unit 130 acquires the generation information 178 output by the AI chatbot server 200. The generation information 178 is sample code that applies sample data of a document in accordance with the usage of the library input to the definition information 176. The sample code is sample code in which sample data is incorporated into the framework of the code. For example, sample code in which sample data in accordance with the usage of the library is incorporated is generated in "i0 (AR1 in the figure)" ... "i8 (AR2 in the figure)" of the definition information 176 in FIG. 4. The sample code is code that can test whether the function of the library is realized using sample data, or code that supports the administrator in creating code. The sample code may be partially missing or partially defective. In this case, the administrator checks and corrects the sample code to eliminate the missing or defective parts. Specifically, the processing unit 130 instructs the AI chatbot server 200 to automatically generate program code using the library. In FIG. 4, as an example, the processing unit 130 passes definition information of an SQL table and instructs the processing unit 130 to generate a usage example of the library code accordingly. Note that in the above example, instead of the sample code into which the sample data has been imported, the sample code before the sample data was imported may be generated.

(提供部)
提供部140は、処理部130が取得したサンプルコードを不図示の表示部に表示させたり、他の端末装置に提供したりする。更に、提供部140は、サンプルコードを実行して正常に動作するかを確認してもよい。
(Providing Department)
The providing unit 140 displays the sample code acquired by the processing unit 130 on a display unit (not shown) or provides it to another terminal device. Furthermore, the providing unit 140 may execute the sample code to check whether it operates normally.

本実施形態では、AIチャットボットサーバ200は、扱うデータ量に制限があるものとして説明したが、扱うデータ量に制限がない場合や、対象のドキュメントを分割せずに処理可能である場合、要約部110が実行する処理および要約部110の機能構成は省略されてもよい。この場合、処理部130は、ドキュメント情報172と、定義情報176とをAIチャットボットサーバ200に入力して、入力したドキュメントのライブラリの使い方に沿ったサンプルデータを利用したサンプルコードを出力するようにAIチャットボットサーバ200に依頼し、AIチャットボットサーバ200から上記のサンプルコードを取得する。 In this embodiment, the AI chatbot server 200 has been described as having a limit on the amount of data it can handle, but if there is no limit on the amount of data it can handle or if the target document can be processed without being divided, the processing performed by the summarization unit 110 and the functional configuration of the summarization unit 110 may be omitted. In this case, the processing unit 130 inputs the document information 172 and the definition information 176 to the AI chatbot server 200, requests the AI chatbot server 200 to output sample code that uses sample data in accordance with how to use the library of the input document, and obtains the above sample code from the AI chatbot server 200.

上記の各機能部の処理は、利用者の操作に基づいて行われてもよい。例えば、利用者の操作に応じて、要約部110、取得部120、処理部130、または提供部140が処理を実行してもよいし、自動で各処理が実行されてもよい。 The processing of each of the above functional units may be performed based on the user's operation. For example, the summarizing unit 110, the acquiring unit 120, the processing unit 130, or the providing unit 140 may perform processing in response to the user's operation, or each processing may be performed automatically.

上記のように、情報処理装置100は、ドキュメントを利用して自動でサンプルコードを生成するため、所望のコードを容易に生成することができる。 As described above, the information processing device 100 automatically generates sample code using documents, making it easy to generate the desired code.

例えば、所定のドキュメントを渡され、このドキュメントのライブラリを利用したサンプルコードの作成を早急に行うように依頼される場合がある。例えば、ドキュメントのすべてに目を通してサンプルコードを作成することは大変である。 For example, you may be given a document and asked to quickly create sample code using the library in the document. It may be a lot of work to go through the entire document and create the sample code.

また、AIチャットボットを利用しようとした場合でも、所望のサンプルコードを作成することが困難なことがある。例えば、AIチャットボットサーバ200は、所定のドキュメントが公開される前の情報を学習し、所定のドキュメントについては学習していないことがある。この場合、AIチャットボットサーバ200を利用しても所定のドキュメントのライブラリを利用したサンプルコードを作成することができないことがある。 Even when trying to use an AI chatbot, it may be difficult to create the desired sample code. For example, the AI chatbot server 200 may have learned information before a specific document was made public, but may not have learned about the specific document. In this case, even if the AI chatbot server 200 is used, it may not be possible to create sample code that uses the library of the specific document.

本実施形態では、上記のように、AIチャットボットが所定のドキュメントを学習していない場合であっても、情報処理装置100が、要約情報174(ドキュメント情報172)および定義情報176をAIチャットボットサーバ200に入力することで、所定のドキュメントの内容に沿ったサンプルコードを容易に生成することができる。 In this embodiment, as described above, even if the AI chatbot has not studied a specific document, the information processing device 100 can easily generate sample code that conforms to the contents of the specific document by inputting summary information 174 (document information 172) and definition information 176 to the AI chatbot server 200.

更に、AIチャットボットが、ドキュメントを一度にすべて処理できない場合であっても、本実施形態では、情報処理装置100が、ドキュメントを分割して分割したドキュメンを利用することで、容易にサンプルコードを作成することができる。 Furthermore, even if the AI chatbot cannot process the entire document at once, in this embodiment, the information processing device 100 can easily create sample code by dividing the document and using the divided documents.

図5は、本実施形態を利用せずに生成されたサンプルコード(1)および本実施形態を利用して生成されたサンプルコード(2)の一例を示す図である。サンプルコード(1)は、所定のドキュメントを入力せずに生成されたサンプルコードである。サンプルコード(1)では、所定の(最新の)ドキュメントの内容が反映されていない。すなわち、サンプルコード(1)では、最近のドキュメントの内容が反映されておらず、AIチャットボットサーバ200が独自に生成した存在しないライブラリのコードが記述されている。これに対してサンプルコード(2)では、所定のドキュメントがAIチャットボットサーバ200に提供されるため、所定のドキュメントが反映されたサンプルコードが生成されている。上記のように、情報処理装置100は、容易に所定のドキュメントを反映したサンプルコードを作成することができる。 FIG. 5 is a diagram showing an example of sample code (1) generated without using this embodiment and sample code (2) generated using this embodiment. Sample code (1) is sample code generated without inputting a specific document. Sample code (1) does not reflect the contents of a specific (latest) document. That is, sample code (1) does not reflect the contents of a recent document, and code of a non-existent library generated independently by the AI chatbot server 200 is described. In contrast, in sample code (2), a specific document is provided to the AI chatbot server 200, so sample code reflecting the specific document is generated. As described above, the information processing device 100 can easily create sample code reflecting a specific document.

[シーケンス図]
図6は、情報処理装置100とAIチャットボットサーバ200とにより実行される処理の流れ一例を示すシーケンス図である。なお、シーケンスの処理の一部または全部の処理は、手動で行われてもよい。例えば、S10のドキュメントを分割する処理は作業指示者によって行われてもよい。まず、情報処理装置100は、ドキュメント情報172を分割する(S10)。次に、情報処理装置100は、分割した分割後ドキュメントをAIチャットボットサーバ200に送信して要約を依頼する(S12)。次に、AIチャットボットサーバ200は、送信されたドキュメントを要約する(S14)。次に、AIチャットボットサーバ200は、要約を情報処理装置100に送信する(S16)。情報処理装置100と、AIチャットボットサーバ200とは、分割ドキュメントごとにS12からS16の処理を実行する。
[Sequence Diagram]
FIG. 6 is a sequence diagram showing an example of the flow of processing executed by the information processing device 100 and the AI chatbot server 200. Note that some or all of the processing of the sequence may be performed manually. For example, the processing of dividing the document in S10 may be performed by a work instructor. First, the information processing device 100 divides the document information 172 (S10). Next, the information processing device 100 transmits the divided document to the AI chatbot server 200 and requests a summary (S12). Next, the AI chatbot server 200 summarizes the transmitted document (S14). Next, the AI chatbot server 200 transmits the summary to the information processing device 100 (S16). The information processing device 100 and the AI chatbot server 200 execute the processing from S12 to S16 for each divided document.

次に、情報処理装置100は、AIチャットボットサーバ200が要約した要約を統合する(S18)。次に、情報処理装置100は、統合した要約である要約情報174および定義情報176をAIチャットボットサーバ200に送信して、ドキュメントのライブラリの使い方に沿ったサンプルデータを利用したサンプルコードの生成を依頼する(S20)。次に、AIチャットボットサーバ200は、依頼に応じてサンプルコードを生成し(S22)、生成したサンプルコードを情報処理装置100に送信する(S24)。次に、情報処理装置100は、送信されたサンプルコードを取得して取得したサンプルコードを生成情報178として記憶部170に記憶させる(S26)。送信されたサンプルコードは、例えば作業指示者に提供される。例えば、作業指示者の端末装置の表示部に表示される。 Next, the information processing device 100 integrates the summaries summarized by the AI chatbot server 200 (S18). Next, the information processing device 100 transmits the integrated summary, summary information 174, and definition information 176, to the AI chatbot server 200, and requests the generation of sample code using sample data in accordance with the usage of the document library (S20). Next, the AI chatbot server 200 generates sample code in response to the request (S22), and transmits the generated sample code to the information processing device 100 (S24). Next, the information processing device 100 acquires the transmitted sample code and stores the acquired sample code in the storage unit 170 as generation information 178 (S26). The transmitted sample code is provided to, for example, a work instructor. For example, it is displayed on a display unit of the work instructor's terminal device.

上記のように、情報処理装置100は、AIチャットボットサーバ200を利用して自動で所望のサンプルコードを生成することができる。 As described above, the information processing device 100 can automatically generate the desired sample code using the AI chatbot server 200.

なお、本実施形態では、データベーススキーマを利用することを一例として説明したが、サンプルコードの取得タスクにおいても適用されてもよい。この場合、ドキュメント情報172は、サンプルコードに関する情報であり、定義情報176は、コードを作成する際のコード定義を含む。 In this embodiment, the use of a database schema has been described as an example, but it may also be applied to a task of acquiring sample code. In this case, the document information 172 is information about the sample code, and the definition information 176 includes the code definition when creating the code.

以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。 The above describes the form for carrying out the present invention using an embodiment, but the present invention is not limited to such an embodiment, and various modifications and substitutions can be made without departing from the spirit of the present invention.

100 情報処理装置
110 要約部
120 取得部
130 処理部
172 ドキュメント情報
174 要約情報
176 定義情報
178 生成情報
100 Information processing device 110 Summary unit 120 Acquisition unit 130 Processing unit 172 Document information 174 Summary information 176 Definition information 178 Generation information

Claims (6)

所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用して前記ライブラリの使い方に従った方法でタスク定義に対応するサンプルコードを生成するように指示するタスク定義とを取得する取得部と、
所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用してサンプルコードを生成するように指示するタスク定義とを入力として、前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードを出力するように学習されたAIチャットボットに、前記ドキュメントとタスク定義とを入力することで得られる、前記取得部により取得された前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードを取得する処理部と、
を備える情報処理装置。
an acquisition unit that acquires a document including a method for using a library in a predetermined programming language and sample code for the library, and a task definition that instructs the user to generate sample code corresponding to the task definition in a manner conforming to the method for using the library ;
a processing unit that acquires sample code corresponding to the task definition in a manner conforming to the usage of the library acquired by the acquisition unit, the sample code being obtained by inputting a document including a method for using a library in a predetermined programming language and sample code of the library, and a task definition instructing the AI chatbot to generate sample code using the library, the document and the task definition being input to the AI chatbot that has been trained to output sample code corresponding to the task definition in a manner conforming to the usage of the library;
An information processing device comprising:
前記ドキュメントのデータの容量が制限を超えないように前記ドキュメントを基準位置から順に分割し、分割した分割ドキュメントのそれぞれを、順番に、前記AIチャットボットに入力することで、前記入力した分割ドキュメントが要約された要約情報を取得する要約部を備え、
前記処理部は、前記要約部が取得した複数の要約情報を、前記要約情報が出力された順番に接続してまとめたドキュメントと、前記タスク定義とを前記AIチャットボットに入力することで得られた前記サンプルコードを取得する、
請求項1に記載の情報処理装置。
a summarizing unit that divides the document from a reference position in order so that the data capacity of the document does not exceed a limit , and inputs each of the divided documents in order to the AI chatbot, thereby acquiring summary information that summarizes the input divided documents;
The processing unit acquires the sample code obtained by inputting, into the AI chatbot, a document in which the plurality of pieces of summary information acquired by the summarizing unit are linked together in the order in which the pieces of summary information were output , and the task definition.
The information processing device according to claim 1 .
前記AIチャットボットは、公開された、プログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用して前記ライブラリの使い方に従った方法でタスク定義に対応するサンプルコードを学習することで前記入力に応じた返信を行うように学習されたモデルであり、
前記モデルは、前記所定のプログラム言語に対応するドキュメントを学習していないモデルである、
請求項1に記載の情報処理装置。
The AI chatbot is a model trained to reply in response to the input by learning a document including a method for using a library of a programming language and a sample code of the library, and a sample code corresponding to a task definition in a manner according to the method for using the library using the library ;
The model is a model that has not learned a document corresponding to the predetermined programming language .
The information processing device according to claim 1 .
前記取得部と前記処理部との一方または双方は、利用者の操作に応じて、処理を実行する、
請求項1から3のうちいずれか1項に記載の情報処理装置。
One or both of the acquisition unit and the processing unit executes processing in response to a user's operation.
The information processing device according to claim 1 .
所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用して前記ライブラリの使い方に従った方法でタスク定義に対応するサンプルコードを生成するように指示するタスク定義とを取得し、
所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用してサンプルコードを生成するように指示するタスク定義とを入力として、前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードを出力するように学習されたAIチャットボットに、前記ドキュメントとタスク定義とを入力することで得られる、前記取得された前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードを取得する、
情報処理方法。
Obtaining a document including a method for using a library in a predetermined programming language and sample code for the library, and a task definition that instructs the user to use the library to generate sample code corresponding to the task definition in a manner that conforms to the method for using the library ;
A document including a method for using a library in a predetermined programming language and sample code for the library, and a task definition instructing to generate sample code using the library are input to an AI chatbot that has been trained to output sample code corresponding to the task definition in a manner conforming to the method for using the library, and the document and task definition are input to the AI chatbot, the AI chatbot being trained to output sample code corresponding to the task definition in a manner conforming to the method for using the library, thereby obtaining sample code corresponding to the task definition in a manner conforming to the method for using the library obtained .
Information processing methods.
コンピュータに、
所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用して前記ライブラリの使い方に従った方法でタスク定義に対応するサンプルコードを生成するように指示するタスク定義とを取得させ、
所定のプログラム言語のライブラリの使用方法と前記ライブラリのサンプルコードとを含むドキュメントと、前記ライブラリを利用してサンプルコードを生成するように指示するタスク定義とを入力として、前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードを出力するように学習されたAIチャットボットに、前記ドキュメントとタスク定義とを入力することで得られる、前記取得された前記ライブラリの使い方に従った方法で前記タスク定義に対応するサンプルコードを取得させる、
プログラム。
On the computer,
obtaining a document including a method for using a library in a predetermined programming language and sample code for the library, and a task definition that instructs the user to use the library to generate sample code corresponding to the task definition in a manner that conforms to the method for using the library ;
An AI chatbot is trained to receive as input a document including a method for using a library in a predetermined programming language and sample code for the library, and a task definition instructing the AI chatbot to generate sample code using the library in a manner conforming to the method for using the library, and to output sample code corresponding to the task definition in a manner conforming to the method for using the library. The AI chatbot is caused to obtain sample code corresponding to the task definition in a manner conforming to the method for using the library, the sample code being obtained by inputting the document and the task definition.
program.
JP2023130210A 2023-08-09 2023-08-09 Information processing device, information processing method, and program. Active JP7477698B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023130210A JP7477698B1 (en) 2023-08-09 2023-08-09 Information processing device, information processing method, and program.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023130210A JP7477698B1 (en) 2023-08-09 2023-08-09 Information processing device, information processing method, and program.

Publications (1)

Publication Number Publication Date
JP7477698B1 true JP7477698B1 (en) 2024-05-01

Family

ID=90827133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023130210A Active JP7477698B1 (en) 2023-08-09 2023-08-09 Information processing device, information processing method, and program.

Country Status (1)

Country Link
JP (1) JP7477698B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019204173A (en) 2018-05-21 2019-11-28 富士ゼロックス株式会社 Information processing device and program
US20200372162A1 (en) 2019-05-22 2020-11-26 International Business Machines Corporation Contextual api captcha
JP6945766B1 (en) 2020-07-03 2021-10-06 三菱電機株式会社 Data analysis program creation support device, data analysis program creation support method, and data analysis program creation support program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019204173A (en) 2018-05-21 2019-11-28 富士ゼロックス株式会社 Information processing device and program
US20200372162A1 (en) 2019-05-22 2020-11-26 International Business Machines Corporation Contextual api captcha
JP6945766B1 (en) 2020-07-03 2021-10-06 三菱電機株式会社 Data analysis program creation support device, data analysis program creation support method, and data analysis program creation support program

Similar Documents

Publication Publication Date Title
US8751558B2 (en) Mashup infrastructure with learning mechanism
US20210224227A1 (en) Api for implementing scoring functions
US20170171097A1 (en) System and user interface for coordinating distributed workflow between multiple computing systems
US20130339931A1 (en) Application trace replay and simulation systems and methods
US20130290931A1 (en) Computer method and apparatus for engineered product management including simultaneous indication of working copy status and repository status
JP6903755B2 (en) Data integration job conversion
CN113076104A (en) Page generation method, device, equipment and storage medium
JP6549681B2 (en) Reference data segmentation from single table to multiple tables
CA2992605A1 (en) A system and method for use in regression testing of electronic document hyperlinks
JP2016510442A (en) Transform generation system
US20240004966A1 (en) Onboarding of Monitoring Tools
US20110289041A1 (en) Systems and methods for managing assignment templates
JP7477698B1 (en) Information processing device, information processing method, and program.
CN113468400B (en) List rendering method, device and equipment for visual webpage and storage medium
CN112486460A (en) Method, system, device and medium for automatically importing interface document
US9870427B1 (en) Systems and methods for publishing profiled content
Lee et al. Implementation of delivery application using a development method for mobile applications
US20090132225A1 (en) Technique for creating simulated servicing applications from data captured by a configurable software probe
JP2007034690A (en) Program development method and development program
JP2006244383A (en) Database system
CN117234623B (en) Page theme changing method and device of application program and electronic equipment
Wang et al. Cloud service in stock trading game: Service virtualization, integration and financial application
Clark et al. Service-level agreements for service-oriented computing
US20240202190A1 (en) Creation of structured set of facts via enterprise information discovery
D’mello et al. Dynamic web service composition based on operation flow semantics

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230809

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240111

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240418

R150 Certificate of patent or registration of utility model

Ref document number: 7477698

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150