JP7641701B1 - Apparatus, method and program for generating technical documentation for software - Google Patents
Apparatus, method and program for generating technical documentation for software Download PDFInfo
- Publication number
- JP7641701B1 JP7641701B1 JP2024107078A JP2024107078A JP7641701B1 JP 7641701 B1 JP7641701 B1 JP 7641701B1 JP 2024107078 A JP2024107078 A JP 2024107078A JP 2024107078 A JP2024107078 A JP 2024107078A JP 7641701 B1 JP7641701 B1 JP 7641701B1
- Authority
- JP
- Japan
- Prior art keywords
- code
- api
- model
- repository
- generative
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】コード管理システムで管理されるソースコードに対応する技術文書を生成するための方法を提供することにある。
【解決手段】装置100は、ユーザー端末110から受信したレポジトリの選択に応じて、当該レポジトリに関するレポジトリ情報をコード管理システム130から受信する(S201乃至S203)。装置100は、次いで、当該リポジトリ情報から、複数のAPIコード候補及び1又は複数のルートファイル候補を抽出する(S204)。そして、装置100は、抽出されたファイル候補を用いて、複数のAPIコード及び1又は複数のルートファイルのパスを判定することを生成AIモデル(k)に要求し(S205)、判定されたパスを受信する(S206)。装置100は、各APIコードについて、当該APIコードに対応するAPI文書を生成することを生成AIモデル(l)に要求し、生成された技術文書を受信して記憶する(S207乃至S209)。
【選択図】図2
A method for generating technical documentation corresponding to source code managed by a code management system is provided.
[Solution] In response to a repository selection received from a user terminal 110, the device 100 receives repository information related to the repository from the code management system 130 (S201 to S203). The device 100 then extracts multiple API code candidates and one or more root file candidates from the repository information (S204). The device 100 then requests a generative AI model (k) to determine paths of the multiple API codes and one or more root files using the extracted file candidates (S205), and receives the determined paths (S206). For each API code, the device 100 requests a generative AI model (l) to generate API documentation corresponding to the API code, and receives and stores the generated technical documentation (S207 to S209).
[Selected figure] Figure 2
Description
本発明は、ソフトウェアの技術文書を生成するための装置、方法及びそのためのプログラムに関する。 The present invention relates to an apparatus, method, and program for generating technical documentation for software.
ソフトウェアの開発にはさまざまな手法があり、その1つにおいては、まず、ユースケースを作成し、次いで、より技術的な詳細が記述された技術文書を作成し、そして、作成された技術文書に基づいて必要なコーディングが行われて、ソースコードが作成される。 There are various methods for developing software. In one method, use cases are first created, then technical documentation is created that describes the more technical details, and the necessary coding is then done based on the technical documentation to create the source code.
近年、技術文書に基づくソースコードの自動生成を行う技術の開発が進んでおり、たとえば、出願人は、ソフトウェアで必要な複数のテーブル及びAPIに関するテーブル定義及びAPI定義を取得し、当該テーブル定義及びAPI定義に従ったソースコードを生成する技術を開示している(特許文献1参照)。 In recent years, technology has been developed to automatically generate source code based on technical documentation. For example, the applicant has disclosed a technology that obtains table definitions and API definitions for multiple tables and APIs required by software, and generates source code in accordance with the table definitions and API definitions (see Patent Document 1).
こうしたソースコードの自動生成技術を用いたサービスのユーザーは、生成されたソースコードを一般にGitHub(登録商標)等のコード管理システムで管理する。実際に当該ソースコードを用いてソフトウェアを提供していく中で機能の変更又は追加が必要になれば、当該ソースコードには修正が加えられる。このような修正が生じると、ソースコード生成サービスに保持された技術文書は、当該ソースコードと対応しないものとなってしまうため、当該サービスをさらに用いて機能の拡充を行いたいとしても、当該サービス外で加えられた修正と整合しないソースコードが生成されてしまう。 Users of services that use such automatic source code generation technology generally manage the generated source code in a code management system such as GitHub (registered trademark). If a change or addition of functionality becomes necessary while actually providing software using the source code, the source code is modified. When such modifications occur, the technical documentation held in the source code generation service no longer corresponds to the source code. Therefore, even if users wish to further use the service to expand functionality, source code that is inconsistent with modifications made outside the service will be generated.
また、既存のソフトウェアに関して、ソースコード生成サービスを用いて機能の変更又は追加をしたいユーザーにとっては、そもそも当該ソフトウェアに対応する技術文書が当該サービスに保持されていないため、利用することができない。 In addition, for users who want to use source code generation services to change or add functions to existing software, they cannot use the services because the services do not hold technical documentation for the software in question.
本発明は、このような点に鑑みてなされたものであり、コード管理システムで管理されるソースコードに対応する技術文書を生成するための装置、方法又はそのためのプログラムを提供することにある。 The present invention has been made in consideration of these points, and aims to provide an apparatus, method, or program for generating technical documentation corresponding to source code managed by a code management system.
このような目的を達成するために、本発明の第1の態様は、コード管理システムで管理されるソースコードに対応する技術文書を生成するための方法であって、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、前記リポジトリ情報から、複数のAPIコード及び1又は複数のルートファイルのパスを判定するステップと、前記複数のAPIコードの少なくともいずれかについて、当該APIコードに対応するAPI文書を生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップであって、前記第1の要求は、前記1又は複数のルートファイルの中のコードを含むステップと、生成された1又は複数のAPI文書を記憶するステップとを含む。 To achieve this objective, a first aspect of the present invention is a method for generating technical documentation corresponding to source code managed in a code management system, comprising the steps of receiving repository information regarding a repository in which the source code is managed, determining paths of multiple API codes and one or more root files from the repository information, and making a first request to a first AI model, which is a generative AI model, to generate API documentation corresponding to at least one of the multiple API codes, the first request including code in the one or more root files, and storing the generated one or more API documentation.
また、本発明の第2の態様は、第1の態様の方法であって、前記判定するステップは、前記リポジトリ情報から、前記複数のAPIコード及び前記1又は複数のルートファイルのパスを判定することを生成AIモデルである第2のAIモデルに要求する第2の要求を行うステップを含む。 A second aspect of the present invention is the method of the first aspect, in which the determining step includes a step of making a second request to a second AI model, which is a generative AI model, to determine paths of the plurality of API codes and the one or more root files from the repository information.
また、本発明の第3の態様は、第2の態様の方法であって、前記判定するステップは、前記第2の要求を行う前に、前記リポジトリ情報から、複数のAPIコード候補及び1又は複数のルートファイル候補を抽出するステップをさらに含む。 A third aspect of the present invention is the method of the second aspect, in which the determining step further includes a step of extracting a plurality of API code candidates and one or more root file candidates from the repository information before making the second request.
また、本発明の第4の態様は、第1の態様の方法であって、前記判定は、前記リポジトリのディレクトリ構造を用いて行う。 The fourth aspect of the present invention is the method of the first aspect, in which the determination is made using the directory structure of the repository.
また、本発明の第5の態様は、第1から第4のいずれかの態様の方法であって、前記1又は複数のAPI文書のうちの少なくともいずれかを閲覧するためのAPI文書閲覧情報をユーザー端末に送信するステップをさらに含む。 A fifth aspect of the present invention is a method according to any one of the first to fourth aspects, further comprising a step of transmitting API document viewing information to a user terminal for viewing at least one of the one or more API documents.
また、本発明の第6の態様は、コード管理システムで管理されるソースコードに対応する技術文書を生成するための方法であって、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、前記リポジトリ情報から、複数のビジネスロジックコードのパスを判定するステップと、前記複数のビジネスロジックコードの少なくともいずれかについて、当該ビジネスロジックコードに対応するビジネスロジックを生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップと、前記複数のビジネスロジックコードに対応する複数のビジネスロジックを記憶するステップとを含む。 A sixth aspect of the present invention is a method for generating technical documentation corresponding to source code managed in a code management system, comprising the steps of receiving repository information regarding a repository in which the source code is managed, determining paths of a plurality of business logic codes from the repository information, making a first request to a first AI model, which is a generative AI model, to generate business logic corresponding to at least one of the plurality of business logic codes, and storing a plurality of business logic codes corresponding to the plurality of business logic codes.
また、本発明の第7の態様は、コンピュータに、コード管理システムで管理されるソースコードに対応する技術文書を生成するための方法を実行させるためのプログラムであって、前記方法は、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、前記リポジトリ情報から、複数のAPIコード及び1又は複数のルートファイルのパスを判定するステップと、前記複数のAPIコードの少なくともいずれかについて、当該APIコードに対応するAPI文書を生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップであって、前記第1の要求は、前記1又は複数のルートファイルの中のコードを含むステップと、生成された1又は複数のAPI文書を記憶するステップとを含む。 A seventh aspect of the present invention is a program for causing a computer to execute a method for generating technical documentation corresponding to source code managed in a code management system, the method including the steps of receiving repository information regarding a repository in which the source code is managed, determining paths of multiple API codes and one or more root files from the repository information, and making a first request to a first AI model, which is a generative AI model, to generate API documentation corresponding to at least one of the multiple API codes, the first request including code in the one or more root files, and storing the generated one or more API documentation.
また、本発明の第8の態様は、コード管理システムで管理されるソースコードに対応する技術文書を生成するための装置であって、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信し、前記リポジトリ情報から、複数のAPIコード及び1又は複数のルートファイルのパスを判定し、前記複数のAPIコードの少なくともいずれかについて、当該APIコードに対応するAPI文書を生成することを生成AIモデルである第1のAIモデルに要求する第1の要求であって、前記1又は複数のルートファイルの中のコードを含む第1の要求を行い、生成された1又は複数のAPI文書を記憶するように構成されている。 An eighth aspect of the present invention is a device for generating technical documentation corresponding to source code managed in a code management system, configured to receive repository information regarding a repository in which the source code is managed, determine paths of multiple API codes and one or more root files from the repository information, make a first request to a first AI model, which is a generative AI model, to generate API documentation corresponding to at least one of the multiple API codes, the first request including code in the one or more root files, and store the generated one or more API documents.
また、本発明の第9の態様は、コンピュータに、コード管理システムで管理されるソースコードに対応する技術文書を生成するための方法を実行させるためのプログラムであって、前記方法は、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、前記リポジトリ情報から、複数のビジネスロジックコードのパスを判定するステップと、前記複数のビジネスロジックコードの少なくともいずれかについて、当該ビジネスロジックコードに対応するビジネスロジックを生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップと、生成された1又は複数のビジネスロジックコードに対応する複数のビジネスロジックを記憶するステップとを含む。 A ninth aspect of the present invention is a program for causing a computer to execute a method for generating technical documentation corresponding to source code managed in a code management system, the method including the steps of receiving repository information regarding a repository in which the source code is managed, determining paths of a plurality of business logic codes from the repository information, making a first request to a first AI model, which is a generative AI model, to generate business logic corresponding to at least one of the plurality of business logic codes, and storing a plurality of business logic codes corresponding to the generated one or more business logic codes.
また、本発明の第10の態様は、コード管理システムで管理されるソースコードに対応する技術文書を生成するための装置であって、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信し、前記リポジトリ情報から、複数のビジネスロジックコードのパスを判定し、前記複数のビジネスロジックコードの少なくともいずれかについて、当該ビジネスロジックコードに対応するビジネスロジックを生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行い、生成され1又は複数のビジネスロジックを記憶するように構成されている。 A tenth aspect of the present invention is an apparatus for generating technical documentation corresponding to source code managed in a code management system, configured to receive repository information regarding a repository in which the source code is managed, determine paths of a plurality of business logic codes from the repository information, make a first request to a first AI model, which is a generative AI model, to generate business logic corresponding to at least one of the plurality of business logic codes, and store the generated business logic or business logics.
本発明の一態様によれば、ソースコードが管理されるリポジトリに関するリポジトリ情報からAPIコード、ビジネスロジックコード等の所要の種類のファイルのパスを判定し、それらのファイルの少なくともいずれかについて、当該ファイルに対応する技術文書を生成AIモデルを用いて自動生成することで、ソフトウェア開発とドキュメント作成との間の溝を埋めることができる。 According to one aspect of the present invention, the path of required types of files such as API code and business logic code is determined from repository information related to the repository in which source code is managed, and technical documentation corresponding to at least one of those files is automatically generated using a generative AI model, thereby bridging the gap between software development and documentation creation.
以下、図面を参照して本発明の実施形態を詳細に説明する。 The following describes in detail an embodiment of the present invention with reference to the drawings.
図1に本発明の一実施形態にかかる技術文書を生成するためのシステムを示す。装置100は、ソフトウェアの技術文書を作成するために、ユーザーが用いるユーザー端末110、コード管理システム120及び生成AIモデルを提供するプラットフォーム130とインターネット等のIPネットワークを介して通信する。生成AIモデルは、装置100と通信可能なプラットフォーム130により提供されるものとして例示的に説明をするが、装置100上で生成AIモデルを提供するためのアプリケーションを実行して、装置100により生成AIモデルが提供されるようにすることもできる。また、装置100は、技術文書に対応するソースコードを生成するソースコード生成サービスをユーザーに提供するものとすることができる。
Figure 1 shows a system for generating technical documentation according to one embodiment of the present invention. In order to create technical documentation for software, the
装置100は、通信インターフェースなどの通信部101と、プロセッサ、CPU等の処理部102と、メモリ、ハードディスク等の記憶装置又は記憶媒体を含む記憶部103とを備え、各処理又は各動作を行うためのプログラムを処理部102において実行することによって構成することができる。装置100は、1又は複数の装置、コンピュータないしサーバを含むことがある。また、当該プログラムは、1又は複数のプログラムを含むことがあり、また、コンピュータ読み取り可能な記憶媒体に記録して非一過性のプログラムプロダクトとすることができる。当該プログラムは、記憶部103又は装置100からIPネットワークを介してアクセス可能なデータベース104等の記憶装置又は記憶媒体に記憶しておき、処理部102の少なくとも1つのプロセッサにおいて当該プログラムに含まれる命令を実行することができる。以下で記憶部103に記憶されるものとして記述されるデータはデータベース104等の記憶装置又は記憶媒体に記憶してもよく、またその逆も同様である。
The
まず、装置100は、ユーザー端末110から、技術文書を作成したいソフトウェアを管理するコード管理システム120上のレポジトリの選択を受信する(S201)。この選択は、たとえば、装置100が提供するサービスにログインしたユーザーに対して、当該ユーザーに関連づけられた1又は複数のレポジトリの選択画面を表示して、当該ユーザーがいずれかを選択することによって行うことができる。
First, the
次に、装置100は、コード管理システム120に対して、当該リポジトリに関するリポジトリ情報を要求し(S202)、当該リポジトリ情報を受信する(S203)。リポジトリ情報は、選択されたリポジトリ内のすべてのファイルを含んでもよく、一部のファイルが除かれてもよい。ここでは、ユーザーがリポジトリを選択したことに応じて、装置100がリポジトリ情報を取得する例を説明したが、装置100がユーザーに関連づけられたリポジトリ内のファイルの更新等の変化を検知して、当該変化を検知したことに応じて、当該リポジトリに関するリポジトリ情報を取得するようにすることもできる。
Next, the
リポジトリ情報を取得した装置100は、次いで、必要に応じて、当該リポジトリ情報から、複数のAPIコード候補及び1又は複数のルートファイル候補を抽出する(S204)。当該抽出は、一例として、取得したリポジトリ情報に含まれる複数のファイルのパスをベクターデータベースに登録し、指定された用語との類似度が所定の閾値以上の1又は複数のファイルを特定することによって行うことができる。API文書を生成したい場合、当該用語としては、“API”、“APIs”、“Controller”、“Controllers”、“Route”、“Routes”等が挙げられる。また、ビジネスロジックを生成したい場合、当該用語としては、“Service”、“Services”、“Business Logic”、“Business Logics”、“Domain Logic”、“Domain Logics”、“Handler”、“Handlers”が挙げられる。ソフトウェアの開発規模が大きくなればなるほど、生成したい技術文書に関連しないファイルの数が増えていくことから、関連するファイル候補を抽出して、その後の処理対象となるファイル数を削減することによって、技術文書の生成速度を大幅に上げることができる。ここで、「API文書」とは、APIの機能及び使用方法を記述した文書をいう。
The
そして、装置100は、ファイル候補の抽出をした場合には抽出されたファイル候補を用いて、しなかった場合には取得したリポジトリ情報を用いて、複数のAPIコード及び1又は複数のルートファイルのパスを判定することを生成AIモデルであるAIモデル(「生成AIモデル(k)」とも呼ぶ。)に要求(「要求k」とも呼ぶ。)する(S205)。
Then, the
図3に、本発明の一実施形態にかかる生成AIモデル(k)に対する要求kのためのコードに一部として含まれるプロンプトと呼ばれる指示(instruction)の一例を示す。当該プロンプトでは、変数{files}に、リポジトリ情報に含まれる全部のファイル又は複数のファイルのパスが設定される。そして、当該プロンプトには、ビジネスロジックコード、APIコード又はルートファイルを特定して、特定された各ファイルのパスをカテゴリ名とともに所定の形式で出力することが記述されている。API文書の生成が目的であり、ビジネスロジックの生成は不要である場合には、ビジネスロジックコードの特定は必ずしも必要ではない。ここで、「ビジネスロジック」とは、ユーザーインターフェース(UI)との通信で送信又は受信されるデータをビジネス上の要求に基づいて処理するためのロジック(logic)をいい、「ロジック」とは、一連の命令を意味する。 Figure 3 shows an example of an instruction called a prompt that is included as part of the code for request k to a generative AI model (k) according to one embodiment of the present invention. In this prompt, the variable {files} is set to the path of all files or multiple files included in the repository information. The prompt also describes how to specify the business logic code, API code, or root file, and output the path of each specified file together with the category name in a specified format. If the purpose is to generate API documentation and generation of business logic is not required, it is not necessarily necessary to specify the business logic code. Here, "business logic" refers to logic for processing data sent or received in communication with a user interface (UI) based on business requirements, and "logic" means a series of instructions.
図3の例は、プログラミング言語TypeScriptで記述したコードに一部として含まれる、自然言語で記述したプロンプトの一例であり、当該コードを実行することによって、OpenAI APIを呼び出し、プラットフォーム130上で提供される生成AIモデル(k)にパスを判定させることができる。OpenAI APIは例示であり、その他のAPIを用いてもよい。プログラミング言語TypeScriptは例示であり、その他の言語を用いてもよい。要求kを行うためのコードは、記憶部103に記憶しておき、装置100がこれを取得して、当該コードに含まれる変数に所要の値を設定して得られる指示を含むコードを実行することによって、要求kを行うことができる。
The example in FIG. 3 is an example of a prompt written in natural language that is included as part of code written in the programming language TypeScript, and by executing this code, the OpenAI API can be called and the generative AI model (k) provided on the
装置100は、判定されたパスを受信した後(S206)、各APIコードについて、当該APIコードに対応するAPI文書を生成することを生成AIモデルであるAIモデル(「生成AIモデル(l)」とも呼ぶ。)に要求(「要求l」とも呼ぶ。)する(S207)。生成AIモデル(l)が技術文書を作成した後(S208)、装置100は、当該技術文書を受信して記憶する(S209)。
After receiving the determined path (S206), the
要求lは、パスが判定されたすべてのルートファイルを含むことが好ましい。各APIコードに対して、当該APIコードに関連する1又は複数のルートファイルを判定して、判定されたルートファイルのみを要求lに含めることも可能であるが、当該判定をせずとも、ルートファイルの数は膨大ではないため、すべてのルートファイルに含まれるすべてのコードを要求lに含めることで、技術文書の生成速度を大幅に落とすことなく、精度を高めることができる。 It is preferable that request l includes all root files whose paths have been determined. It is also possible to determine one or more root files associated with each API code and include only the determined root files in request l, but since the number of root files is not huge even without making such a determination, by including all codes contained in all root files in request l, it is possible to increase accuracy without significantly slowing down the generation speed of technical documentation.
図4に、本発明の一実施形態にかかる生成AIモデル(l)に対する要求lのためのコードに一部として含まれるプロンプトを作成するコードの一例を示す。この例では、変数“code”にAPIコード、変数“route”にルートファイル内のコード、変数“response_introduction”に要求lに対する応答の形式、そして変数“module”にAPIコードにより提供されるAPIが属するモジュールがテンプレート “BUILD_API_FROM_CODE”において設定される。変数“module”及び変数“response_introduction”は必ずしも必須ではない。また、変数“response_introduction”は、ユーザーにより指定された応答の形式を設定するようにしてもよい。図5に、図4で用いられるテンプレート“BUILD_API_FROM_CODE”の一例を示す。 Figure 4 shows an example of code for creating a prompt included as part of the code for request l to a generative AI model (l) according to one embodiment of the present invention. In this example, the API code is set in the variable "code", the code in the route file in the variable "route", the format of the response to request l in the variable "response_introduction", and the module to which the API provided by the API code belongs in the variable "module" in the template "BUILD_API_FROM_CODE". The variables "module" and "response_introduction" are not necessarily required. The variable "response_introduction" may also be set to the format of the response specified by the user. Figure 5 shows an example of the template "BUILD_API_FROM_CODE" used in Figure 4.
図2においては生成AIモデル(k)生成AIモデル(l)を区別しているところ、これらは、同一の生成AIモデルとしてもよい。本明細書において「AIモデル」とは、入力に対して出力を予測可能に訓練済みの機械学習モデル」をいい、「生成AIモデル(generative AI model)」とは、入力に対して当該入力に含まれない出力を生成可能にテキストデータを用いて訓練済みの大規模言語モデル(LLM)を指す。生成AIモデルとしては、特にトランスフォーマーアーキテクチャを適用したLLMが好ましいが、技術の進展によってアーキテクチャの呼称が変わることは想定される。したがって、本明細書において「トランスフォーマーアーキテクチャ」とは、トランスフォーマーアーキテクチャの1若しくは複数の特徴又はその改良を用いたアーキテクチャを包含する。本明細書において「生成AIモデル」が同一であるか否かは、ユーザーが指定した生成AIモデルの種類が同一であるか否かによって判断する。Open AI APIの例でいえば、GPT-4の場合、変数“model”の値が同一であれば、生成AIモデルとして同一であると表現する。第1の生成AIモデルと第2の生成AIモデルが同一でない場合、同一のプラットフォーム130上で提供されるものでもよい。図2の例では、要求kの後に要求lをしているところ、生成AIモデル(k)と生成AIモデル(l)が同一の生成AIモデルであるか同一のプラットフォーム上で提供される生成AIモデルである場合には、APIの単一の呼び出しによって、これらの要求を行ってもよい。また、言うまでもないが、要求k及び要求lは、それぞれ複数の要求を含んでもよく、生成AIモデルに対する要求以外の装置100により行われる1又は複数の処理を含んでもよい。
In FIG. 2, generative AI model (k) and generative AI model (l) are distinguished, but they may be the same generative AI model. In this specification, "AI model" refers to a machine learning model trained to predict an output for an input, and "generative AI model" refers to a large-scale language model (LLM) trained using text data to generate an output that is not included in the input. As a generative AI model, an LLM that applies a transformer architecture is particularly preferable, but it is expected that the name of the architecture will change as technology advances. Therefore, in this specification, "transformer architecture" includes an architecture that uses one or more features of the transformer architecture or an improvement thereof. In this specification, whether "generative AI models" are the same is determined by whether the type of generative AI model specified by the user is the same. In the case of Open AI API, for example, in the case of GPT-4, if the value of the variable "model" is the same, it is expressed as the same generative AI model. If the first generative AI model and the second generative AI model are not the same, they may be provided on the
そして、装置100は、生成された複数の技術文書の少なくともいずれかを閲覧するための技術文書閲覧情報をユーザー端末110に送信する(S210)。技術文書閲覧情報は、たとえば、HTML形式のファイルとすることができ、ユーザー端末110はこれを用いて表示画面に技術文書閲覧画面を表示することができる。また、ユーザー端末110にインストールされたアプリケーションを動作させ、受信した技術文書閲覧情報を用いて当該アプリケーション内で技術文書閲覧画面を表示させてもよい。なお、「閲覧画面」は、ウェブブラウザ上で表示される場合にはウェブページ、モーダルウィンドウ、ポップアップウィンドウ等のさまざまな形式を採用することができ、アプリケーション内で表示される場合には当該アプリケーションの一画面とすることができる。いずれにおいても、生成された技術文書を閲覧可能に表示するための領域を含む画面であれば、閲覧画面に該当する。
Then, the
このとおり、ソースコードから技術文書を自動生成することで、ソフトウェア開発とドキュメント作成との間の溝が埋まり、正確で最新の技術文書を作成するために通常必要とされる手作業を大幅に削減することができる。生成すべき技術文書が重複することもあるので、パスが判定されたいくつかのファイルについては、当該ファイルに対応する技術文書を必ず生成しなくともよい。 As such, automatic generation of technical documentation from source code bridges the gap between software development and documentation creation, and significantly reduces the manual work typically required to create accurate and up-to-date technical documentation. Since the technical documentation to be generated may be duplicated, it is not necessary to generate technical documentation for some files whose paths have been determined.
なお、上述の実施形態において、「のみに基づいて」、「のみに応じて」、「のみの場合」、「のみを参照して」というように「のみ」との記載がなければ、本明細書においては、付加的な情報も考慮し得ることが想定されていることに留意されたい。また、一例として、「aの場合にbする」という記載は、明示した場合を除き、「aの場合に常にbする」こと、「aの直後にbする」ことを必ずしも意味しないことに留意されたい。また、「Aを構成する各a」という記載は、必ずしもAが複数の構成要素によって構成されることを意味するものではなく、構成要素が単数であることを含む。 Please note that in the above embodiments, unless there is a statement of "only", such as "based only on", "only in response to", "only in the case of", or "with reference only", it is assumed in this specification that additional information may be taken into consideration. As an example, please note that the statement "do b when a" does not necessarily mean "do b always when a" or "do b immediately after a" unless expressly stated. Furthermore, the statement "each a constituting A" does not necessarily mean that A is composed of multiple components, but includes the case where the component is singular.
また、念のため、なんらかの方法、プログラム、端末、装置、サーバ又はシステム(以下「方法等」)において、本明細書で記述された動作と異なる動作を行う側面があるとしても、本発明の各態様は、本明細書で記述された動作のいずれかと同一の動作を対象とするものであり、本明細書で記述された動作と異なる動作が存在することは、当該方法等を本発明の各態様の範囲外とするものではないことを付言する。 For the avoidance of doubt, even if there is an aspect of a method, program, terminal, device, server, or system (hereinafter "method, etc.") that performs an operation different from that described in this specification, each aspect of the present invention is directed to an operation identical to any of the operations described in this specification, and the existence of an operation different from that described in this specification does not cause the method, etc. to fall outside the scope of each aspect of the present invention.
また、上述した本発明の各実施形態は、互いに矛盾しない範囲でそれらを任意に組み合わせることが本明細書の開示に含まれることに留意されたい。 Please note that the disclosure of this specification includes any combination of the above-mentioned embodiments of the present invention to the extent that they are not mutually exclusive.
本明細書においては、要求kの後に要求lを行う流れで説明をしたが、パスの判定に生成AIモデルを必ずしも用いない場合においては、生成AIモデル(l)を第1の生成AIモデル、要求lを第1の要求と呼ぶことがある。 In this specification, we have explained the flow of making request l after request k, but in cases where the generative AI model is not necessarily used to determine the path, the generative AI model (l) may be referred to as the first generative AI model and request l as the first request.
100 装置
101 通信部
102 処理部
103 記憶部
104 データベース
110 ユーザー端末
120 ソースコード管理システム
130 プラットフォーム
REFERENCE SIGNS
Claims (9)
コンピュータが、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、
前記コンピュータが、前記リポジトリ情報から、複数のAPIコード及び1又は複数のルートファイルのパスを判定するステップと、
前記コンピュータが、前記複数のAPIコードのうちの少なくともいずれかについて、当該APIコードに対応するAPI文書を生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップであって、前記第1の要求は、前記1又は複数のルートファイルの中のコードを含むステップと、
前記コンピュータが、生成された1又は複数のAPI文書を記憶するステップと
を含む。 1. A method for generating technical documentation corresponding to source code managed in a code management system, comprising:
receiving , by a computer, repository information regarding a repository in which the source code is managed;
The computer determines, from the repository information, paths of a plurality of API codes and one or more root files;
A step of the computer making a first request to a first AI model, which is a generative AI model, for at least one of the plurality of API codes to generate API documentation corresponding to the API code, the first request including a code in the one or more root files;
and storing , by the computer, the generated one or more API documents.
前記判定するステップは、
前記リポジトリ情報から、前記複数のAPIコード及び前記1又は複数のルートファイルのパスを判定することを生成AIモデルである第2のAIモデルに要求する第2の要求を行うステップを含む。 2. The method of claim 1 ,
The determining step includes:
The method includes making a second request to a second AI model, which is a generative AI model, to determine paths of the plurality of API codes and the one or more root files from the repository information.
前記判定は、前記リポジトリのディレクトリ構造を用いて行う。 2. The method of claim 1 ,
The determination is made using the directory structure of the repository.
前記1又は複数のAPI文書のうちの少なくともいずれかを閲覧するためのAPI文書閲覧情報をユーザー端末に送信するステップをさらに含む。 4. A method according to any one of claims 1 to 3, comprising:
The method further includes a step of transmitting API document viewing information to a user terminal for viewing at least one of the one or more API documents.
コンピュータが、前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、
前記コンピュータが、前記リポジトリ情報から、複数のビジネスロジックコードのパスを判定するステップと、
前記コンピュータが、前記複数のビジネスロジックコードの少なくともいずれかについて、当該ビジネスロジックコードに対応するビジネスロジックを生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップと、
前記コンピュータが、生成された1又は複数のビジネスロジックを記憶するステップと
を含む。 1. A method for generating technical documentation corresponding to source code managed in a code management system, comprising:
receiving , by a computer, repository information regarding a repository in which the source code is managed;
determining , by the computer, from the repository information, paths of a plurality of business logic codes;
A step of the computer making a first request to a first AI model, which is a generative AI model, for at least one of the plurality of business logic codes to generate business logic corresponding to the business logic code;
and storing , by the computer, the generated one or more business logics.
前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、
前記リポジトリ情報から、複数のAPIコード及び1又は複数のルートファイルのパスを判定するステップと、
前記複数のAPIコードの少なくともいずれかについて、当該APIコードに対応するAPI文書を生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップであって、前記第1の要求は、前記1又は複数のルートファイルの中のコードを含むステップと、
生成された1又は複数のAPI文書を記憶するステップと
を含む。 A program for causing a computer to execute a method for generating technical documentation corresponding to source code managed in a code management system, the method comprising:
receiving repository information regarding a repository in which the source code is managed;
determining a plurality of API codes and paths of one or more root files from the repository information;
making a first request to a first AI model, which is a generative AI model, to generate API documentation corresponding to at least one of the API codes, the first request including a code in the one or more root files;
and storing the generated one or more API documents.
前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信し、
前記リポジトリ情報から、複数のAPIコード及び1又は複数のルートファイルのパスを判定し、
前記複数のAPIコードの少なくともいずれかについて、当該APIコードに対応するAPI文書を生成することを生成AIモデルである第1のAIモデルに要求する第1の要求であって、前記1又は複数のルートファイルの中のコードを含む第1の要求を行い、
生成された1又は複数のAPI文書を記憶するように構成されている。 An apparatus for generating technical documentation corresponding to source code managed in a code management system, comprising:
receiving repository information regarding a repository in which the source code is managed;
determining a plurality of API codes and paths to one or more root files from the repository information;
making a first request to a first AI model, which is a generative AI model, to generate API documentation corresponding to at least one of the API codes, the first request including code in the one or more root files;
A storage device is configured to store the generated API document or documents.
前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信するステップと、
前記リポジトリ情報から、複数のビジネスロジックコードのパスを判定するステップと、
前記複数のビジネスロジックコードの少なくともいずれかについて、当該ビジネスロジックコードに対応するビジネスロジックを生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行うステップと、
生成された1又は複数のビジネスロジックを記憶するステップと
を含む。 A program for causing a computer to execute a method for generating technical documentation corresponding to source code managed in a code management system, the method comprising:
receiving repository information regarding a repository in which the source code is managed;
determining a plurality of business logic code paths from the repository information;
making a first request to a first AI model, which is a generative AI model, for at least one of the plurality of business logic codes to generate business logic corresponding to the business logic code;
and storing the generated one or more business logics.
前記ソースコードが管理されるリポジトリに関するリポジトリ情報を受信し、
前記リポジトリ情報から、複数のビジネスロジックコードのパスを判定し、
前記複数のビジネスロジックコードの少なくともいずれかについて、当該ビジネスロジックコードに対応するビジネスロジックを生成することを生成AIモデルである第1のAIモデルに要求する第1の要求を行い、
生成された複数のビジネスロジックを記憶するように構成されている。 An apparatus for generating technical documentation corresponding to source code managed in a code management system, comprising:
receiving repository information regarding a repository in which the source code is managed;
determining a path for a plurality of business logic codes from the repository information;
making a first request to a first AI model, which is a generative AI model, for at least one of the plurality of business logic codes to generate business logic corresponding to the business logic code;
The database is configured to store a plurality of generated business logics.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2024107078A JP7641701B1 (en) | 2024-05-10 | 2024-07-03 | Apparatus, method and program for generating technical documentation for software |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2024077170 | 2024-05-10 | ||
| JP2024107078A JP7641701B1 (en) | 2024-05-10 | 2024-07-03 | Apparatus, method and program for generating technical documentation for software |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2024077170 Division | 2024-05-10 | 2024-05-10 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP7641701B1 true JP7641701B1 (en) | 2025-03-07 |
| JP2025171894A JP2025171894A (en) | 2025-11-20 |
Family
ID=94826181
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2024107078A Active JP7641701B1 (en) | 2024-05-10 | 2024-07-03 | Apparatus, method and program for generating technical documentation for software |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7641701B1 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113094093A (en) | 2021-03-29 | 2021-07-09 | 四川新网银行股份有限公司 | Method for generating system-interactive API (application program interface) document from source code based on Internet financial system |
| JP2022072664A (en) | 2020-10-30 | 2022-05-17 | バンキングチャネルソリューションズ株式会社 | Information processing device, information processing method, and information processing program |
| CN116991378A (en) | 2023-08-10 | 2023-11-03 | 天津租赁资产交易中心股份有限公司 | A software multi-terminal collaborative development method |
-
2024
- 2024-07-03 JP JP2024107078A patent/JP7641701B1/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022072664A (en) | 2020-10-30 | 2022-05-17 | バンキングチャネルソリューションズ株式会社 | Information processing device, information processing method, and information processing program |
| CN113094093A (en) | 2021-03-29 | 2021-07-09 | 四川新网银行股份有限公司 | Method for generating system-interactive API (application program interface) document from source code based on Internet financial system |
| CN116991378A (en) | 2023-08-10 | 2023-11-03 | 天津租赁资产交易中心股份有限公司 | A software multi-terminal collaborative development method |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2025171894A (en) | 2025-11-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11822919B2 (en) | Auto-generation of API documentation via implementation-neutral analysis of API traffic | |
| CN113961584A (en) | Method and device for analyzing field blood relationship, electronic equipment and storage medium | |
| CN111722839B (en) | Code generation method and device, electronic equipment and storage medium | |
| CN110858172B (en) | A method and device for generating automatic test code | |
| CN108762743B (en) | Data table operation code generation method and device | |
| CN118466911B (en) | Recommendation method, recommendation device, recommendation equipment and storage medium | |
| CN114637672A (en) | Automated data testing method, device, computer equipment and storage medium | |
| CN118170378B (en) | Page generation method, device, electronic device, storage medium, and program product | |
| US20200395004A1 (en) | Computer System, Model Generation Method, and Computer Readable Recording Medium | |
| CN115220721A (en) | Front-end route generation method and device, electronic equipment and storage medium | |
| CN106484389A (en) | Stream of action sectional management | |
| CN114443022A (en) | Method and electronic device for generating page building blocks | |
| CN116842926A (en) | Template generation method and device, electronic equipment and storage medium | |
| CN119088449B (en) | Method, device, equipment and medium for dynamically updating system demand document in real time | |
| CN114676786A (en) | Annotation template generation method, data annotation method and device | |
| JP7641701B1 (en) | Apparatus, method and program for generating technical documentation for software | |
| CN119476238A (en) | Method, device and equipment for generating engineering project report based on AI big model | |
| JP7789284B1 (en) | Apparatus, method and program for generating technical documentation for software | |
| WO2024214682A1 (en) | Device for supporting preparation of trademark registration application, method, and program for same | |
| CN118689468A (en) | Code generation method, device, electronic device and storage medium based on large model | |
| WO2005098658A1 (en) | Document processing device and document processing method | |
| WO2005098660A1 (en) | Document processing device and document processing method | |
| CN117667566B (en) | Methods, devices, equipment, and media for monitoring use case generation and language model training | |
| CN118568006B (en) | Application interface awakening method, device, equipment, storage medium and program product | |
| CN109800332A (en) | Method, apparatus, computer storage medium and the terminal of processing field name |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240703 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20240703 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20241004 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241105 |
|
| 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: 20250117 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20250214 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250223 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7641701 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |