JP2017142640A - Similar document recommendation system, similar document recommendation method, and similar document recommendation program - Google Patents

Similar document recommendation system, similar document recommendation method, and similar document recommendation program Download PDF

Info

Publication number
JP2017142640A
JP2017142640A JP2016023297A JP2016023297A JP2017142640A JP 2017142640 A JP2017142640 A JP 2017142640A JP 2016023297 A JP2016023297 A JP 2016023297A JP 2016023297 A JP2016023297 A JP 2016023297A JP 2017142640 A JP2017142640 A JP 2017142640A
Authority
JP
Japan
Prior art keywords
api
document
similarity
unit
similar
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.)
Pending
Application number
JP2016023297A
Other languages
Japanese (ja)
Inventor
嵩士 白井
Takashi Shirai
嵩士 白井
一貴 平石
Kazutaka Hiraishi
一貴 平石
裕司 副島
Yuji Soejima
裕司 副島
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016023297A priority Critical patent/JP2017142640A/en
Publication of JP2017142640A publication Critical patent/JP2017142640A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To enable selection of one with the same purpose with an API relating to a service from an API relating to another service at a short time.SOLUTION: A recommendation device 5 comprises an API information holding unit 53 which holds a plurality of pieces of API information including sentences explaining a plurality of first APIs, an input unit which accepts input of an API document having a sentence explaining a second API, a similarity calculation unit 59 which calculates the similarity between the API document and the API information, and an API recommendation unit 54 which recommends one or a plurality of first APIs similar to the second API on the basis of the similarity calculated by the similarity calculation unit 59.SELECTED DRAWING: Figure 2

Description

本発明は、類似文書推薦システム、類似文書推薦方法および類似文書推薦プログラムに関する。   The present invention relates to a similar document recommendation system, a similar document recommendation method, and a similar document recommendation program.

近年のネットワークの高速化とウェブブラウザの普及により、インターネットを経由して所定の処理を提供するAPI(Application-Program Interface)が広く普及している。このAPIは、インターネット経由で或るサーバ上にあるプログラムや管理データなどを、他のサーバや端末などから呼び出して利用するための手順やデータ形式などを定めた規約であり、コンピュータプログラムの機能を呼び出して利用するための規約であるAPIに擬えて呼ばれている。   With the recent increase in network speed and the spread of web browsers, APIs (Application-Program Interface) that provide predetermined processing via the Internet have become widespread. This API is a rule that defines the procedure and data format for calling and using programs and management data on a server via the Internet from other servers and terminals. It is called by imitating an API that is a convention for calling and using.

開発者は、APIを活用することによって、容易にエンドユーザ向けアプリケーションを開発することができる。またAPIの提供者は、このAPIを活用したアプリケーションにより、自社のサービスやコンテンツをエンドユーザ等に訴求することができる。例えば通信キャリアは、ネットワーク機能やオペレーション機能をAPIとしてエンドユーザ向けアプリケーションの開発を促し、自社の通信サービスをエンドユーザ等に訴求することができる。   Developers can easily develop applications for end users by using APIs. In addition, API providers can appeal their services and content to end users, etc., using applications that utilize this API. For example, a communication carrier can promote development of an application for an end user by using a network function or an operation function as an API, and can appeal its communication service to an end user or the like.

また近年では、スマートフォン等のデバイスが多様化し、また市場がグローバル化して、ニッチな領域への事業者の新規参入が容易になった。このような中で、APIを収益確保可能な形で提供することが重要である。これらサービスの実現と収益確保のためには、事業者間でAPIの連携(マッシュアップ)が容易であることが望ましい。APIの連携を可能とするには、APIの技術標準を定め、これに準拠した標準APIに統一することが望まれる。   In recent years, devices such as smartphones have diversified, and the market has become global, making it easier for businesses to enter new niche areas. Under such circumstances, it is important to provide APIs in a form that can secure profits. In order to realize these services and secure profits, it is desirable that APIs (mashups) be easy between operators. To enable API linkage, it is desirable to define API technical standards and unify them into standard APIs that conform to them.

例えば非特許文献1には、この標準APIのモデルについて記載されている。この非特許文献1の発行元であるTM(TeleManagement) FORUMは、相互運用のできる情報通信システムのネットワーク管理を実現するため、業界標準の検討と、それに基づく製品化の促進、業界の活性化を目的に設立された非営利の業界団体であり、複数事業者を跨ったサービスを提供するための標準APIについて検討している。   For example, Non-Patent Document 1 describes this standard API model. TM (TeleManagement) FORUM, the publisher of this Non-Patent Document 1, is working on the examination of industry standards, the promotion of commercialization based on that, and the activation of the industry in order to realize network management of interoperable information communication systems. It is a non-profit industry organization established for the purpose, and is examining a standard API for providing services across multiple operators.

TeleManagement FORUM,“Frameworx Specification Product Ordering API REST Specification”,Release 14.5.0,November 2014TeleManagement FORUM, “Frameworx Specification Product Ordering API REST Specification”, Release 14.5.0, November 2014

サービス事業者などによってAPIが提供されているサービスAについて、サービスXのAPI_XをサービスAのAPI_Aに合わせたい場合がある。すなわちAPIの仕様を共通化し、標準APIに統一するという需要が存在する。これにより、サービスAの相互運用性が高まり、より多くのネットワーク事業者やクラウド事業者に跨がってサービスAを提供することができる。そのためには、入力したサービスXのAPI文書に対し、サービスAのAPI群のうち同一目的で使用するAPI文書を選定して推薦することが考えられる。   For service A for which an API is provided by a service provider or the like, it may be desired to match API_X of service X with API_A of service A. In other words, there is a demand for standardizing API specifications and unifying them into standard APIs. As a result, the interoperability of the service A is improved, and the service A can be provided across more network operators and cloud operators. For this purpose, it is conceivable to select and recommend an API document to be used for the same purpose from the API group of service A for the input service X API document.

しかしながら、APIの共通化にあたっては、同一目的で用いるAPIの選定が必要だが、現状は手作業でAPIの仕様文書を読み、各APIをマッチングしており、多大な時間を要している。   However, in order to standardize APIs, it is necessary to select APIs to be used for the same purpose, but at present, it takes a lot of time to manually read API specification documents and match each API.

本発明は、前記した問題を解決し、サービスに係るAPIと同一目的のものを、異なるサービスに係るAPIから短時間で選定可能とすることを課題とする。   An object of the present invention is to solve the above-described problems and to select an API having the same purpose as an API related to a service from APIs related to different services in a short time.

請求項1に記載の発明では、複数の第1APIを説明する文章を有する複数のAPI情報を保有する保有部と、第2APIを説明する文章を有するAPI文書の入力を受け付ける入力部と、前記API文書と前記API情報との類似度を算出する類似度算出部と、前記類似度算出部が算出した類似度に基づき、前記第2APIに類似する一または複数の第1APIを推薦する推薦部と、を備えることを特徴とする類似文書推薦システムとした。   In the first aspect of the present invention, a holding unit that holds a plurality of API information having a sentence that describes a plurality of first APIs, an input unit that receives an input of an API document having a sentence that describes a second API, and the API A similarity calculator that calculates the similarity between the document and the API information, a recommendation unit that recommends one or more first APIs similar to the second API based on the similarity calculated by the similarity calculator, A similar document recommendation system characterized by comprising:

このようにすることで、サービスに係る第2APIと同一目的のものを、異なるサービスに係る第1APIから短時間で選定することができる。   By doing in this way, the thing with the same purpose as 2nd API which concerns on a service can be selected from 1st API which concerns on a different service in a short time.

請求項2に記載の発明では、前記類似度算出部は、教師データを用いて前記API文書が有している文章を補正する、ことを特徴とする請求項1に記載の類似文書推薦システムとした。   The invention according to claim 2, wherein the similarity calculation unit corrects a sentence included in the API document using teacher data, and the similar document recommendation system according to claim 1, did.

このようにすることで、表記揺れしている用語を正規化して、類似度計算の精度を向上させることができる。   In this way, it is possible to normalize the terms that are notating and improve the accuracy of similarity calculation.

請求項3に記載の発明では、前記API文書は、リクエストパラメータ例または/およびレスポンスパラメータ例を有しており、前記入力部は、前記API文書に含まれるリクエストパラメータ例およびレスポンスパラメータ例を削除する、ことを特徴とする請求項1に記載の類似文書推薦システムとした。   In the invention according to claim 3, the API document has a request parameter example and / or a response parameter example, and the input unit deletes the request parameter example and the response parameter example included in the API document. The similar document recommendation system according to claim 1, wherein:

このようにすることで、文書ベクトルのノイズとなるリクエストパラメータ例やレスポンスパラメータ例を削除して、類似度計算の精度を向上させることができる。   In this way, it is possible to delete the request parameter example and the response parameter example that cause noise in the document vector, and improve the accuracy of similarity calculation.

請求項4に記載の発明では、前記API文書は、数字を含む文字列または単語を有しており、前記入力部は、前記API文書が有している数字を含む文字列または単語を削除する、ことを特徴とする請求項1に記載の類似文書推薦システムとした。   In the invention according to claim 4, the API document includes a character string or a word including a number, and the input unit deletes the character string or the word including the number included in the API document. The similar document recommendation system according to claim 1, wherein:

このようにすることで、文書ベクトルのノイズとなるリクエストパラメータ例における数字を含む文字列または単語を削除して、類似度計算の精度を向上させることができる。   In this way, it is possible to delete the character string or word including a number in the request parameter example that causes noise in the document vector, and improve the accuracy of similarity calculation.

請求項5に記載の発明では、前記API文書は、キャメルケースまたはスネークケースの文字列を含んでおり、前記入力部は、前記API文書が有しているキャメルケースまたはスネークケースの文字列を単語に分解する、ことを特徴とする請求項1に記載の類似文書推薦システムとした。   In the invention according to claim 5, the API document includes a camel case or snake case character string, and the input unit uses the camel case or snake case character string included in the API document as a word. The similar document recommendation system according to claim 1, wherein

このようにすることで、文書ベクトルのノイズとなるキャメルケースまたはスネークケースの文字列を、文書ベクトルの構成要素となる単語に分解して、類似度計算の精度を向上させることができる。   By doing so, the character string of the camel case or snake case that becomes the noise of the document vector can be decomposed into words that become the constituent elements of the document vector, and the accuracy of the similarity calculation can be improved.

請求項6に記載の発明では、前記推薦部は、第1APIの推薦結果に対するユーザの正誤判定を保存する、ことを特徴とする請求項1に記載の類似文書推薦システムとした。   According to a sixth aspect of the present invention, in the similar document recommendation system according to the first aspect, the recommendation unit stores a user's correctness / incorrectness determination for the recommendation result of the first API.

このようにすることで、正誤判定結果は次回の類似度計算に反映するので、類似度計算の精度を次第に向上させることができる。   By doing in this way, the correctness determination result is reflected in the next similarity calculation, so that the accuracy of the similarity calculation can be gradually improved.

請求項7に記載の発明では、複数の第1APIを説明する文章を有する複数のAPI情報を保有するステップと、第2APIを説明する文章を有するAPI文書の入力を受け付けるステップと、前記API文書と前記API情報との類似度を算出するステップと、前記類似度に基づき、前記第2APIに類似する一または複数の第1APIを推薦するステップと、を含むことを特徴とする類似文書推薦方法とした。   In the invention according to claim 7, a step of holding a plurality of API information having a sentence explaining a plurality of first APIs, a step of receiving an input of an API document having a sentence explaining a second API, the API document, A similar document recommendation method comprising: calculating a similarity with the API information; and recommending one or more first APIs similar to the second API based on the similarity .

このようにすることで、サービスに係る第2APIと同一目的のものを、異なるサービスに係る第1APIから短時間で選定することができる。   By doing in this way, the thing with the same purpose as 2nd API which concerns on a service can be selected from 1st API which concerns on a different service in a short time.

請求項8に記載の発明では、複数の第1APIを説明する文章を有する複数のAPI情報を保有する保有手段、第2APIを説明する文章を有するAPI文書の入力を受け付ける入力手段、前記API文書と前記API情報との類似度を算出する類似度算出手段、前記類似度算出手段が算出した類似度に基づき、前記第2APIに類似する一または複数の第1APIを推薦する推薦手段、としてコンピュータを機能させるための類似文書推薦プログラムとした。   In the invention according to claim 8, holding means for holding a plurality of API information having a sentence explaining a plurality of first API, input means for receiving an input of an API document having a sentence explaining a second API, the API document, The computer functions as a similarity calculation unit that calculates a similarity with the API information, and a recommendation unit that recommends one or more first APIs similar to the second API based on the similarity calculated by the similarity calculation unit. This is a similar document recommendation program.

このようにすることで、サービスに係る第2APIと同一目的のものを、異なるサービスに係る第1APIから短時間で選定することができる。   By doing in this way, the thing with the same purpose as 2nd API which concerns on a service can be selected from 1st API which concerns on a different service in a short time.

本発明によれば、サービスに係るAPIと同一目的のものを、異なるサービスに係るAPIから短時間で選定可能とすることができる。   According to the present invention, an API having the same purpose as an API related to a service can be selected from APIs related to different services in a short time.

本実施形態におけるシステムの構成図である。It is a block diagram of the system in this embodiment. 推薦装置の詳細を示す図である。It is a figure which shows the detail of a recommendation apparatus. API文書例を示す図である。It is a figure which shows an API document example. ドキュメント加工処理と類似度算出処理を示すフローチャートである。It is a flowchart which shows a document process process and a similarity calculation process. API共通化の目的を示す図である。It is a figure which shows the objective of API commonization. 比較例のメディエータによる共通API化を示す構成図である。It is a block diagram which shows common API conversion by the mediator of a comparative example.

次に、本発明を実施するための形態(「実施形態」という)について、適宜図面を参照しながら詳細に説明する。   Next, modes for carrying out the present invention (referred to as “embodiments”) will be described in detail with reference to the drawings as appropriate.

APIの仕様を共通化して統一することにより、サービスの相互運用性が高まり、より多くのネットワーク事業者やクラウド事業者に跨がってサービスを提供することができる。一方、既存のサービスは、共通APIに準拠しない独自APIを既に公開している場合があり、共通API化するにはサービス事業者システムやネットワーク事業者システムの改修が必要になる。
図5(a),(b)は、API共通化の目的を示す図であり、うち図5(a)は、API共通化前における状態を示す図である。
サービス事業者システム1aは、API_Xによってネットワーク事業者システム2aにサービスを提供し、API_Yによってネットワーク事業者システム2bにサービスを提供し、API_Zによってクラウド事業者システム2cにサービスを提供している。つまり、これらAPI_X、API_Y、API_Zには相互に異なっている。つまりサービス事業者システム1aと、ネットワーク事業者システム2a,2bやクラウド事業者システム2cとの接続は困難である。
By standardizing and unifying API specifications, service interoperability is improved, and services can be provided across more network operators and cloud operators. On the other hand, existing services may already have their own APIs that do not conform to the common API, and the service provider system or the network provider system needs to be modified to make it a common API.
5 (a) and 5 (b) are diagrams showing the purpose of API sharing, and FIG. 5 (a) is a diagram showing a state before API sharing.
The service provider system 1a provides services to the network provider system 2a through API_X, provides services to the network provider system 2b through API_Y, and provides services to the cloud provider system 2c through API_Z. That is, these API_X, API_Y, and API_Z are different from each other. That is, it is difficult to connect the service provider system 1a with the network provider systems 2a and 2b and the cloud provider system 2c.

図5(b)は、API共通化後における状態を示す図である。
サービス事業者システム1aは、API_Aによってネットワーク事業者システム2a,2bとクラウド事業者システム2cにサービスを提供している。更に、他のサービス事業者システム1bも、API_Aによってネットワーク事業者システム2a,2bとクラウド事業者システム2cにサービスを提供している。つまり、このシステムは、APIを共通化している。
API共通化により、サービス事業者システム1aは、サービスの拡大時にネットワーク事業者システム2a,2bやクラウド事業者システム2cとの接続が容易となる。他のサービス事業者システム1bなどは、サービスへの新規参入が容易となる。また、各サービス事業者システム1a,1bは、新規顧客の獲得が容易となる。
更にネットワーク事業者やラウド事業者は、市販品活用によるコスト削減を図ることができる。
しかし、サービス事業者システム1aやネットワーク事業者システム2aが、既存の処理部を改修してAPI_XをAPI_Aに共通化するには、多大な移行工数が掛かる。そこで、共通API化のために、メディエータ(後記する図6参照)と呼ばれるAPI変換装置を用いることが多い。
FIG. 5B is a diagram showing a state after API sharing.
The service provider system 1a provides services to the network provider systems 2a and 2b and the cloud provider system 2c by API_A. Further, the other service provider system 1b also provides services to the network provider systems 2a and 2b and the cloud provider system 2c by API_A. In other words, this system has a common API.
By sharing the API, the service provider system 1a can be easily connected to the network provider systems 2a and 2b and the cloud provider system 2c when expanding the service. Other service provider systems 1b and the like can easily enter a service. In addition, each service provider system 1a, 1b can easily acquire a new customer.
Furthermore, network operators and loud operators can reduce costs by using commercially available products.
However, in order for the service provider system 1a and the network provider system 2a to modify the existing processing unit so that API_X is shared with API_A, it takes a large number of migration steps. Therefore, an API conversion device called a mediator (see FIG. 6 to be described later) is often used for common API.

図6は、比較例のメディエータ4による共通API化を示す構成図である。
メディエータ4は、API変換部45と、API入力部41,44と、API出力部42,43と、シナリオ入力部46と、API変換シナリオ47とを含んで構成される。ユーザは、シナリオ入力部46を介してAPI変換シナリオ47を予め登録する。ネットワーク事業者システム2は、既存のサービスXに係るAPI_X仕様のAPIをリクエストする。サービス事業者システム1は、共通化されたサービスAに係るAPI_A仕様のAPIを提供する。このメディエータ4は、API変換シナリオ47に基づいてAPI_XをAPI_Aに変換してサービス事業者システム1に出力すると共に、API_AをAPI_Xに変換してネットワーク事業者システム2に出力する。
FIG. 6 is a configuration diagram showing common API conversion by the mediator 4 of the comparative example.
The mediator 4 includes an API conversion unit 45, API input units 41 and 44, API output units 42 and 43, a scenario input unit 46, and an API conversion scenario 47. The user registers the API conversion scenario 47 in advance via the scenario input unit 46. The network operator system 2 requests an API of the API_X specification related to the existing service X. The service provider system 1 provides an API of API_A specifications related to the common service A. The mediator 4 converts API_X into API_A based on the API conversion scenario 47 and outputs it to the service provider system 1, and converts API_A into API_X and outputs it to the network provider system 2.

ネットワーク事業者システム2は、メディエータ4を介してAPI_X仕様によるコマンドをサービス事業者システム1に送信する。API入力部44は、ネットワーク事業者システム2から送信されたAPIリクエストを受け付け、API変換部45は、このAPIリクエストをAPI変換シナリオ47に基づいてAPI_A仕様に変更する。API出力部43は、変換されたAPIリクエストをサービス事業者システム1に出力する。   The network operator system 2 transmits a command based on the API_X specification to the service operator system 1 via the mediator 4. The API input unit 44 receives the API request transmitted from the network operator system 2, and the API conversion unit 45 changes the API request to the API_A specification based on the API conversion scenario 47. The API output unit 43 outputs the converted API request to the service provider system 1.

サービス事業者システム1は、APIリクエストに基づく処理を実行したのち、APIレスポンスをネットワーク事業者システム2に送信する。サービス事業者システム1が送信するAPIレスポンスは、メディエータ4を介してネットワーク事業者システム2に送信される。
API入力部41は、サービス事業者システム1から送信されたAPI_A仕様のAPIレスポンスを受け付け、API変換部45は、このAPIレスポンスをAPI変換シナリオ47に基づいてAPI_X仕様に変更する。API出力部42は、変換されたAPIレスポンスを出力する。
これにより、API_X仕様のネットワーク事業者システム2は、API_A仕様のサービス事業者システム1で動作可能となる。つまり、ネットワーク事業者システム2は、メディエータ4によって共通API化される。
The service provider system 1 transmits the API response to the network provider system 2 after executing processing based on the API request. The API response transmitted by the service provider system 1 is transmitted to the network provider system 2 via the mediator 4.
The API input unit 41 receives the API response of the API_A specification transmitted from the service provider system 1, and the API conversion unit 45 changes the API response to the API_X specification based on the API conversion scenario 47. The API output unit 42 outputs the converted API response.
As a result, the API_X specification network operator system 2 can operate with the API_A specification service operator system 1. That is, the network operator system 2 is converted into a common API by the mediator 4.

メディエータ4の実装にあたっては、API変換シナリオ47を予め作成して、シナリオ入力部46を介して入力しておく必要がある。このとき、メディエータ4のユーザは、既存サービスであるAPI_X仕様を紐解いたうえで、API_A仕様に含まれる各APIにマッチングさせる必要があり、API変換シナリオ47には多大な時間と工数とを要する。本実施形態の推薦装置は、API変換シナリオ47の作成を省力化すべく、APIを自動マッチングし、API変換シナリオ47の生成をサポートする。   In implementing the mediator 4, it is necessary to create an API conversion scenario 47 in advance and input it via the scenario input unit 46. At this time, it is necessary for the user of the mediator 4 to match the API_X specifications that are existing services and match each API included in the API_A specifications, and the API conversion scenario 47 requires a lot of time and man-hours. The recommendation device according to the present embodiment supports the generation of the API conversion scenario 47 by automatically matching APIs in order to save the creation of the API conversion scenario 47.

図1は、本実施形態におけるシステムの構成図である。
メディエータ4は、API変換部45と、API入力部41,44と、API出力部42,43と、シナリオ入力部46と、API変換シナリオ47とを含んで構成される。ユーザは、推薦装置5によってAPIの推薦を受けてAPI変換シナリオ47を作成し、作成したAPI変換シナリオ47をメディエータ4のシナリオ入力部46により登録する。
推薦装置5は、APIドキュメント入力部51、APIマッチング部52、API情報保有部53、API推薦部54を含んで構成される。
APIドキュメント入力部51はユーザが入力するAPI文書6を受け付け、APIマッチング部52は、APIをマッチングする。API推薦部54は、ユーザにAPIを推薦する。API情報保有部53は、共通化APIに関する情報を保有する。この推薦装置5は、後記する図2と図3にて詳細に説明する。
FIG. 1 is a configuration diagram of a system in the present embodiment.
The mediator 4 includes an API conversion unit 45, API input units 41 and 44, API output units 42 and 43, a scenario input unit 46, and an API conversion scenario 47. The user receives an API recommendation from the recommendation device 5 and creates an API conversion scenario 47, and registers the created API conversion scenario 47 using the scenario input unit 46 of the mediator 4.
The recommendation device 5 includes an API document input unit 51, an API matching unit 52, an API information holding unit 53, and an API recommendation unit 54.
The API document input unit 51 receives the API document 6 input by the user, and the API matching unit 52 matches the API. The API recommendation unit 54 recommends an API to the user. The API information holding unit 53 holds information related to the common API. The recommendation device 5 will be described in detail with reference to FIGS. 2 and 3 to be described later.

ネットワーク事業者システム2は、既存のサービスXに係るAPI_X仕様のAPIをリクエストする。サービス事業者システム1は、共通化されたサービスAに係るAPI_A仕様のAPIを提供する。このメディエータ4は、API_X仕様のAPIリクエストをAPI_A仕様に変換してサービス事業者システム1に出力すると共に、API_A仕様のAPIレスポンスをAPI_X仕様に変換してネットワーク事業者システム2に出力する。   The network operator system 2 requests an API of the API_X specification related to the existing service X. The service provider system 1 provides an API of API_A specifications related to the common service A. The mediator 4 converts the API request of the API_X specification into the API_A specification and outputs it to the service provider system 1, and converts the API response of the API_A specification into the API_X specification and outputs it to the network operator system 2.

ネットワーク事業者システム2は、メディエータ4を介してAPI_X仕様によるコマンドをサービス事業者システム1に送信する。API入力部44は、ネットワーク事業者システム2から送信されたAPIリクエストを受け付け、API変換部45は、このAPIリクエストをAPI変換シナリオ47に基づいてAPI_A仕様に変更する。API出力部43は、変換されたAPIリクエストをサービス事業者システム1に出力する。
サービス事業者システム1は、APIリクエストに基づく処理を実行したのち、APIレスポンスをネットワーク事業者システム2に送信する。サービス事業者システム1が送信するAPIレスポンスは、メディエータ4を介してネットワーク事業者システム2に送信される。
The network operator system 2 transmits a command based on the API_X specification to the service operator system 1 via the mediator 4. The API input unit 44 receives the API request transmitted from the network operator system 2, and the API conversion unit 45 changes the API request to the API_A specification based on the API conversion scenario 47. The API output unit 43 outputs the converted API request to the service provider system 1.
The service provider system 1 transmits the API response to the network provider system 2 after executing processing based on the API request. The API response transmitted by the service provider system 1 is transmitted to the network provider system 2 via the mediator 4.

API入力部41は、サービス事業者システム1から送信されたAPI_A仕様のAPIレスポンスを受け付け、API変換部45は、このAPIレスポンスをAPI変換シナリオ47に基づいてAPI_X仕様に変更する。API出力部42は、変換されたAPIレスポンスを出力する。   The API input unit 41 receives the API response of the API_A specification transmitted from the service provider system 1, and the API conversion unit 45 changes the API response to the API_X specification based on the API conversion scenario 47. The API output unit 42 outputs the converted API response.

図2は、推薦装置5の詳細を示す図である。
推薦装置5は、図1に示したAPIドキュメント入力部51、APIマッチング部52、API情報保有部53、API推薦部54に加えて更に、正誤判定結果部55、教師データ保有部56を含んで構成される。APIドキュメント入力部51は、受付部57と加工部58とを含んで構成される。APIマッチング部52は、類似度算出部59を含んで構成される。API情報保有部53は、予め比較先となるサービスAに係るAPI_A(第1API)の仕様であるAPI情報を保有している。このAPI情報は、複数のAPIを説明する文章を含んでいる。
ユーザが推薦装置5に比較したいAPI文書の文章全体とパラメータ情報の2つを入力することで、推薦装置5は、API文書間の類似度を算出し、同一目的で用いるAPIをユーザに推薦する。
FIG. 2 is a diagram showing details of the recommendation device 5.
In addition to the API document input unit 51, API matching unit 52, API information holding unit 53, and API recommendation unit 54 shown in FIG. 1, the recommendation device 5 further includes a correct / incorrect determination result unit 55 and a teacher data holding unit 56. Composed. The API document input unit 51 includes a receiving unit 57 and a processing unit 58. The API matching unit 52 includes a similarity calculation unit 59. The API information holding unit 53 holds API information that is a specification of API_A (first API) related to the service A as a comparison destination in advance. This API information includes sentences describing a plurality of APIs.
When the user inputs the entire text of the API document to be compared with the recommendation device 5 and the parameter information, the recommendation device 5 calculates the similarity between the API documents and recommends the API to be used for the same purpose to the user. .

受付部57は、APIドキュメント入力部51の一部であり、ユーザが入力したサービスXに係るAPI_X(第2API)の仕様のうち、1または複数のAPIの仕様が記載されたAPI文書6(API情報)の入力を受け付ける。なお、図2ではAPI文書6のことを、APIドキュメントと記載している。
受付部57は、API文書6の文章全体と、リクエストパラメータやレスポンスパラメータを有する文章の2種類の受付を許容する。ただしAPI文書6の文章全体の受付は必須とする。API文書6の文章全体が入力された場合は、API推薦までを実施し、パラメータの推薦は行わない。ユーザが受付部57に入力するAPIは、個々に一つずつ入力してもよいし、あるAPI群をまとめて入力してもよい。なお、受付部57は、リクエストパラメータ例やレスポンスパラメータ例が含まれるAPI文書6を受け付けることができる。
The accepting unit 57 is a part of the API document input unit 51, and an API document 6 (API) that describes one or more API specifications among API_X (second API) specifications related to the service X input by the user. Information). In FIG. 2, the API document 6 is described as an API document.
The receiving unit 57 allows two types of reception of the entire sentence of the API document 6 and a sentence having a request parameter and a response parameter. However, reception of the entire text of the API document 6 is essential. When the entire sentence of the API document 6 is input, the API recommendation is performed and the parameter is not recommended. The APIs that the user inputs to the reception unit 57 may be input individually one by one, or a certain API group may be input collectively. The accepting unit 57 can accept the API document 6 including a request parameter example and a response parameter example.

加工部58は、APIドキュメント入力部51の一部であり、API文書6のうち、リクエストパラメータ例やレスポンスパラメータ例が記載された部分を削除することで、同一目的で用いるAPIの選定精度を高めている。リクエストパラメータ例やレスポンスパラメータ例は、API文書6の固有表現であり、既存の文書類似度の算出に対するノイズとなるためである。具体的に加工部58は、JSON(JavaScript(登録商標) Object Notation)形式やXML(eXtensible Markup Language)形式で記述されている部分と、数字を含む単語の文字列とを判定して削除する。JSON形式やXML形式の判定は、中括弧{}や山括弧<>で括られる部分を見つけることにより行う。加工部58の処理により、類似度算出部59の演算におけるノイズを除去することができる。   The processing unit 58 is a part of the API document input unit 51, and by deleting a part in which the request parameter example and the response parameter example are described in the API document 6, the selection accuracy of the API used for the same purpose is increased. ing. This is because the request parameter example and the response parameter example are specific expressions of the API document 6 and become noise for the calculation of the existing document similarity. Specifically, the processing unit 58 determines and deletes a portion described in JSON (JavaScript (registered trademark) Object Notation) format or XML (eXtensible Markup Language) format and a character string of a word including a number. Judgment of JSON format and XML format is performed by finding the part enclosed in braces {} and angle brackets <>. By the processing of the processing unit 58, noise in the calculation of the similarity calculation unit 59 can be removed.

類似度算出部59は、API文書6と、API情報保有部53が保有する各API情報との類似度を算出する。類似度算出部59は、教師データ保有部56に保有した業界特有用語集561の類義語セットを用いて単語の置換を行うことで、サービス固有の表現の揺れを吸収してAPI選定の精度を高める。更に類似度算出部59は、業界特有用語集561における単語と業務区分との対応に基づき、その区分に当てはまるAPI群を全て候補として提示する。類似度算出部59は、ベクトル生成にてAPI文書の内容を正確に表すため、他のドキュメントに現れていない、このドキュメント特有の単語に対して、より大きな重み付けを行う。類似度算出部59は、文章を単語に分解し、単語ごとの出現数を要素に文章ベクトルを生成し、2つの文章に係るベクトルの大きさや向きの差を、2つの文章の類似度として扱い、類似度上位のAPIを複数個抽出する。なお、類似度算出部59は、類似度が閾値以上であり、かつAPI名が同一のものは、優先的にマッチング先に選定してもよい。   The similarity calculation unit 59 calculates the similarity between the API document 6 and each API information held by the API information holding unit 53. The similarity calculation unit 59 uses the synonym set of the industry-specific terminology 561 held in the teacher data holding unit 56 to replace words, thereby absorbing the fluctuation of the service-specific expression and improving the accuracy of API selection. . Furthermore, the similarity calculation unit 59 presents all API groups applicable to the category as candidates based on the correspondence between the word and the business category in the industry-specific terminology 561. In order to accurately represent the contents of the API document by vector generation, the similarity calculation unit 59 gives a higher weight to a word unique to this document that does not appear in other documents. The similarity calculation unit 59 breaks the sentence into words, generates a sentence vector using the number of occurrences for each word as an element, and treats the difference in the size and direction of the vectors related to the two sentences as the similarity between the two sentences. Extract multiple APIs with high similarity. Note that the similarity calculation unit 59 may preferentially select a matching destination that has a similarity greater than or equal to a threshold and the same API name.

API推薦部54は、類似度算出部59の算出の結果として、マッチング先として推薦するAPI候補群を、ユーザ端末の画面上(表示装置)に提示する。API推薦部54は更に、API候補ごとに正誤判定結果をユーザに入力してもらい、正誤判定の結果を正誤判定結果部55に格納する。正誤判定結果部55に保有される判定結果に基づいて教師データ保有部56のデータが更にアップデートされることで、類似度算出部59の精度が向上する。このようにすることで、類似度算出部59の算出精度は、API推薦を繰り返すほど向上する。   As a result of the calculation by the similarity calculation unit 59, the API recommendation unit 54 presents an API candidate group recommended as a matching destination on the screen (display device) of the user terminal. The API recommendation unit 54 further asks the user to input a correct / incorrect determination result for each API candidate, and stores the correct / incorrect determination result in the correct / incorrect determination result unit 55. The accuracy of the similarity calculation unit 59 is improved by further updating the data in the teacher data holding unit 56 based on the determination result held in the correct / incorrect determination result unit 55. By doing in this way, the calculation accuracy of the similarity calculation unit 59 is improved as the API recommendation is repeated.

API情報保有部53(保有部)は、マッチング先となるサービスAに係るAPI_A(第1API)の仕様情報を保有するデータベースである。API仕様7は、各APIを説明する文章71と、リクエストパラメータ72と、レスポンスパラメータ73の組合せを複数含んで構成される。なおAPI情報保有部53は、マッチング先となる複数のサービスに係るAPI仕様情報を保有してもよい。API情報保有部53は、例えばTMF(TeleManagement FORUM)のAPI仕様情報や、AWS(Amazon(登録商標) Web Service)のAPI仕様情報を保有してもよい。
教師データ保有部56は、業界特有用語集561を保有する。具体的には、「所定業務に特有のキーワード」を有する。例えば業務区分を「計画・建設系業務」「保全系業務」「課金系業務」に分類した、分類された各業務ごとの区分に、それぞれ100個のAPI群が分類されている場合を考える。この場合、業務ごとの区分情報に依らずにAPIを推薦するならば、300個のAPI群から探索する必要がある。
しかし、例えばAPIの文書中に単語“Alarm”が多く出現する場合に「保全系業務で使うAPI」であると推測すると、マッチング先APIの推薦にあたり、候補を「保全系業務で使うAPI群」の100個に絞り込むことができる。これにより、より正解のAPIを見つけやすくなる。このような対応関係は、例えばTMFのAPI仕様情報からキーワードを抽出するとよい。教師データ保有部56の各データは、類似度算出部59に参照され、類似度の重み付けに活用される。
The API information holding unit 53 (holding unit) is a database that holds specification information of API_A (first API) related to the service A as a matching destination. The API specification 7 includes a plurality of combinations of a sentence 71 describing each API, a request parameter 72, and a response parameter 73. Note that the API information holding unit 53 may hold API specification information related to a plurality of services as matching destinations. The API information holding unit 53 may hold, for example, API specification information of TMF (TeleManagement FORUM) and API specification information of AWS (Amazon (registered trademark) Web Service).
The teacher data holding unit 56 holds an industry-specific terminology 561. Specifically, it has “a keyword specific to a predetermined task”. For example, let us consider a case where 100 API groups are classified into each classified business category in which business categories are classified into “planning / construction business”, “maintenance business”, and “charging business”. In this case, if an API is recommended regardless of the division information for each business, it is necessary to search from 300 API groups.
However, for example, if the word “Alarm” appears frequently in the API document, assuming that it is an “API to be used for maintenance work”, the candidate is “API group to be used for maintenance work” in recommending the matching destination API. Can be narrowed down to 100. This makes it easier to find the correct API. For such correspondence, for example, keywords may be extracted from API specification information of TMF. Each data of the teacher data holding unit 56 is referred to by the similarity calculation unit 59 and used for weighting the similarity.

正誤判定結果部55は、ユーザによる正誤判定結果を保有する。例えばcloudn(登録商標)の“Template”は、AWSの“Image”と同等であることが分かっているが、機械的に類似度を算出するだけでは同等とみなされない。手作業で判断した結果として“Template”は“Image”と同等であるというルールを生成して保有するとよい。 The correctness / incorrectness determination result unit 55 holds the correctness / incorrectness determination result by the user. For example, “Template” of cloud n (registered trademark) is known to be equivalent to “Image” of AWS, but is not regarded as equivalent only by mechanically calculating the similarity. As a result of manual determination, it is preferable to generate and hold a rule that “Template” is equivalent to “Image”.

図3は、API文書6の例を示す図である。
API文書6は、API仕様に関する文書であり、APIの名称を保有するAPI名61、APIに係る仕様を説明するAPI説明62、リクエストパラメータ63、レスポンスパラメータ64、リクエストパラメータ例65、レスポンスパラメータ例66を含んで構成される。リクエストパラメータ例65には、リクエストパラメータ63の例が示されている。レスポンスパラメータ例66には、レスポンスパラメータ64の例が示されている。
API名61が保有するAPIの名称は、複合語であるキャメルケースやスネークケースで記載されることが多い。ここでキャメルケースとは、複数の単語間のスペースを詰めて次の語を大文字から始めた文字列である。スネークケースとは、複数の単語間のスペースをアンダースコアに置き換えた文字列である。これは一つの文字列トークンのみがAPIの名称として認められるという実装上の制約による。
例えば“alarm name”をキャメルケースで記載すると“AlarmName”であり、スネークケースで記載すると“alarm_name”となる。よって、文書ベクトルのノイズとなるキャメルケースやスネークケースの文字列を各単語に分解することで、文書ベクトルを構成する単語を増やして類似度計算の精度を向上させることができる。
リクエストパラメータ例65やレスポンスパラメータ例66は、JSON形式やXML形式で記載され、または数字を含む文字列または単語によって記載されていることが多い。ここで数字を含む文字列または単語とは、例えば“id=1234”などをいう。ここで“1234”という数字はあくまで例であり、APIの利用目的を知るためには不要な要素である。よって、中括弧{}や山括弧<>で括られたJSON形式やXML形式を判定して削除し、数字を含む文字列または単語を判定して削除することにより、リクエストパラメータ例65やレスポンスパラメータ例66を削除することができる。
FIG. 3 is a diagram illustrating an example of the API document 6.
The API document 6 is a document related to the API specification. The API name 61 holds the name of the API, the API description 62 explains the specification related to the API, the request parameter 63, the response parameter 64, the request parameter example 65, and the response parameter example 66. It is comprised including. The request parameter example 65 shows an example of the request parameter 63. In the response parameter example 66, an example of the response parameter 64 is shown.
The API name possessed by the API name 61 is often described in a camel case or snake case that is a compound word. Here, the camel case is a character string in which a space between a plurality of words is filled and a next word is started from an upper case letter. A snake case is a character string in which spaces between a plurality of words are replaced with underscores. This is due to implementation restrictions that only one string token is allowed as an API name.
For example, “alarm name” is described as “AlarmName” when described in a camel case, and “alarm_name” when described as a snake case. Therefore, by decomposing the character string of the camel case or snake case that causes noise in the document vector into each word, the number of words constituting the document vector can be increased and the accuracy of similarity calculation can be improved.
The request parameter example 65 and the response parameter example 66 are often described in JSON format or XML format, or are often described by character strings or words including numbers. Here, the character string or word including a number means, for example, “id = 1234”. Here, the number “1234” is merely an example, and is an unnecessary element for knowing the purpose of use of the API. Therefore, by determining and deleting the JSON format or XML format enclosed in braces {} and angle brackets <> and determining and deleting character strings or words including numbers, request parameter example 65 and response parameter Example 66 can be deleted.

図4は、ドキュメント加工処理と類似度算出処理を示すフローチャートであり、適宜図2などを参照して説明する。
ユーザが入力したAPI文書6を受付部57が受け付けると、図4に示す処理が開始する。受付部57は、API文書6における文章全体と、これにリクエストパラメータ63やレスポンスパラメータ64を有する文章の2種類を受け付けることができる。ユーザは、個々に一つずつのAPIを入力してもよく、或るAPI群をまとめて入力してもよい。
FIG. 4 is a flowchart showing the document processing process and the similarity calculation process, which will be described with reference to FIG.
When the accepting unit 57 accepts the API document 6 input by the user, the process shown in FIG. 4 starts. The accepting unit 57 can accept the two types of text, the entire text in the API document 6 and the text having the request parameter 63 and the response parameter 64. The user may input one API individually or may input a certain API group collectively.

API文書6には、API説明62とリクエストパラメータ63とレスポンスパラメータ64に加え、リクエストパラメータ例65とレスポンスパラメータ例66も記載されている。加工部58は、入力されたAPI文書6のうちリクエストパラメータ例65とレスポンスパラメータ例66に係る記載を削除する(ステップS10)。これにより、類似度算出部59の処理におけるノイズを除去することができる。
類似度算出部59は、教師データ保有部56に基づき、API文書6の文章を補正する(ステップS11)。具体的に言うと、類似度算出部59は、入力されたサービスXのAPIドキュメントと、比較先となるサービスAのAPIドキュメント群の単語の置換により、類義語を正規化する。このように教師データ保有部56の情報を活用することで、サービス毎に異なる固有の表現の差分を吸収し、API選定の精度を高めることができる。
In the API document 6, in addition to the API description 62, the request parameter 63, and the response parameter 64, a request parameter example 65 and a response parameter example 66 are also described. The processing unit 58 deletes the description related to the request parameter example 65 and the response parameter example 66 from the input API document 6 (step S10). Thereby, the noise in the process of the similarity calculation part 59 can be removed.
The similarity calculation unit 59 corrects the text of the API document 6 based on the teacher data holding unit 56 (step S11). More specifically, the similarity calculation unit 59 normalizes the synonyms by replacing the input API document of the service X and the word of the API document group of the service A as a comparison destination. In this way, by utilizing the information of the teacher data holding unit 56, it is possible to absorb the difference in unique expressions that differ for each service and to improve the accuracy of API selection.

次いで類似度算出部59は、API文書6やAPI仕様7の文章を単語に分解し(ステップS12)、このドキュメント特有の単語に対し重み付けを行う(ステップS13)。これにより、APIドキュメントの内容を正確に表すことができる。類似度算出部59は、単語ごとの出現数を要素に文章ベクトルを生成し(ステップS14)、ベクトルの大きさ・向きの差を類似度として扱う。   Next, the similarity calculation unit 59 breaks down the text of the API document 6 or API specification 7 into words (step S12), and weights the words unique to the document (step S13). As a result, the contents of the API document can be accurately represented. The similarity calculation unit 59 generates a text vector using the number of occurrences for each word as an element (step S14), and treats the difference in vector size and direction as the similarity.

類似度算出部59は、入力されたAPI文書6が複数のAPI群に係るものならば(ステップS15→Yes)、全体の類似度を最大化するマッチングペアを生成して第一候補に位置づけ(ステップS16)、類似度上位のAPI群を第二候補〜第N候補として(ステップS17)、マッチングペアの候補群を不図示の表示装置などに表示する(ステップS18)。類似度算出部59は、これら候補群の正誤判定結果の入力を受け付け(ステップS19)、正誤判定結果部55に格納する(ステップS23)。   If the input API document 6 relates to a plurality of API groups (step S15 → Yes), the similarity calculation unit 59 generates a matching pair that maximizes the overall similarity and positions it as the first candidate ( In step S16), the API group with higher similarity is set as the second candidate to the Nth candidate (step S17), and the candidate group of matching pairs is displayed on a display device (not shown) or the like (step S18). The similarity calculation unit 59 receives input of the correctness / incorrectness determination results of these candidate groups (step S19) and stores them in the correctness / incorrectness determination result unit 55 (step S23).

類似度算出部59は、入力されたAPI文書6が単一のAPIに係るものならば(ステップS15→No)、類似度上位のAPIを第一候補〜第N候補として(ステップS20)、APIの候補群を不図示の表示装置などに表示する(ステップS21)。類似度算出部59は、これら候補群の正誤判定結果の入力を受け付け(ステップS22)、正誤判定結果部55に格納する(ステップS23)。この正誤判定結果部55に格納された結果に基づき、新たな教師データを生成して類似度算出部59の算出精度を向上させることができる。
本実施形態によれば、API変換シナリオ47の新規作成工数や、API仕様の更新に伴うAPI変換シナリオ47のアップデート工数を軽減することができる。更に共通APIに準拠しない新サービスの参入が容易となる。
If the input API document 6 relates to a single API (step S15 → No), the similarity calculation unit 59 sets the API with higher similarity as the first candidate to the Nth candidate (step S20). Are displayed on a display device (not shown) or the like (step S21). The similarity calculation unit 59 accepts input of the correctness determination result of these candidate groups (step S22) and stores it in the correctness determination result unit 55 (step S23). Based on the result stored in the correctness determination result section 55, new teacher data can be generated to improve the calculation accuracy of the similarity calculation section 59.
According to the present embodiment, it is possible to reduce the man-hours for newly creating the API conversion scenario 47 and the man-hours for updating the API conversion scenario 47 accompanying the update of the API specification. Furthermore, new services that do not conform to the common API can be easily entered.

(変形例)
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能であり、例えば、次の(a),(b)のようなものがある。
(a) 類似度算出部59の処理は、図4のフローチャートに限定されない。類似度算出部59は、例えば、共通化したいAPI_Aに係る仕様情報を予め単語に分解してもよく、業界特有用語集561によって予め正規化してもよい。
(b) 本発明は、既存サービスを利用しているネットワーク事業者システムのAPIを共通化することに限られない。上記実施形態とは逆に、既存のサービスを提供しているサービス事業者システムのAPIを共通化APIに変換し、共通化APIによるサービスを享受するネットワーク事業者システムに提供してもよい。
(Modification)
The present invention is not limited to the above-described embodiment, and can be modified without departing from the spirit of the present invention. For example, there are the following (a) and (b).
(A) The processing of the similarity calculation unit 59 is not limited to the flowchart of FIG. For example, the similarity calculation unit 59 may decompose specification information related to API_A to be shared into words in advance, or may be normalized in advance using the industry-specific glossary 561.
(B) The present invention is not limited to sharing the API of the network operator system that uses the existing service. Contrary to the above embodiment, the API of a service provider system that provides an existing service may be converted to a common API and provided to a network provider system that enjoys a service using the common API.

1,1a,1b サービス事業者システム
2,2a,2b ネットワーク事業者システム
2c クラウド事業者システム
4 メディエータ
45 API変換部
47 API変換シナリオ
5 推薦装置 (類似文書推薦システム)
51 APIドキュメント入力部 (入力部)
52 APIマッチング部
53 API情報保有部 (保有部)
54 API推薦部 (推薦部)
55 正誤判定結果部
56 教師データ保有部
561 業界特有用語集
57 受付部
58 加工部
59 類似度算出部
6 API文書
7 API仕様
1, 1a, 1b Service provider system 2, 2a, 2b Network provider system 2c Cloud provider system 4 Mediator 45 API converter 47 API conversion scenario 5 Recommendation device (similar document recommendation system)
51 API document input part (input part)
52 API matching section 53 API information holding section (holding section)
54 API recommendation section (Recommendation section)
55 Correctness determination result section 56 Teacher data holding section 561 Industry specific terminology collection 57 Reception section 58 Processing section 59 Similarity calculation section 6 API document 7 API specification

Claims (8)

複数の第1APIを説明する文章を有する複数のAPI情報を保有する保有部と、
第2APIを説明する文章を有するAPI文書の入力を受け付ける入力部と、
前記API文書と前記API情報との類似度を算出する類似度算出部と、
前記類似度算出部が算出した類似度に基づき、前記第2APIに類似する一または複数の第1APIを推薦する推薦部と、
を備えることを特徴とする類似文書推薦システム。
A holding unit that holds a plurality of API information having sentences describing a plurality of first APIs;
An input unit for receiving an input of an API document having a sentence explaining the second API;
A similarity calculator that calculates the similarity between the API document and the API information;
A recommendation unit that recommends one or more first APIs similar to the second API based on the similarity calculated by the similarity calculation unit;
A similar document recommendation system comprising:
前記類似度算出部は、教師データを用いて前記API文書が有している文章を補正する、
ことを特徴とする請求項1に記載の類似文書推薦システム。
The similarity calculation unit corrects a sentence included in the API document using teacher data.
The similar document recommendation system according to claim 1, wherein:
前記API文書は、リクエストパラメータ例または/およびレスポンスパラメータ例を有しており、
前記入力部は、前記API文書が有しているリクエストパラメータ例およびレスポンスパラメータ例を削除する、
ことを特徴とする請求項1に記載の類似文書推薦システム。
The API document has a request parameter example and / or a response parameter example,
The input unit deletes a request parameter example and a response parameter example that the API document has,
The similar document recommendation system according to claim 1, wherein:
前記API文書は、数字を含む文字列または単語を有しており、
前記入力部は、前記API文書が有している数字を含む文字列または単語を削除する、
ことを特徴とする請求項1に記載の類似文書推薦システム。
The API document has a character string or a word including a number,
The input unit deletes a character string or a word including a number that the API document has,
The similar document recommendation system according to claim 1, wherein:
前記API文書は、キャメルケースまたはスネークケースの文字列を含んでおり、
前記入力部は、前記API文書が有しているキャメルケースまたはスネークケースの文字列を単語に分解する、
ことを特徴とする請求項1に記載の類似文書推薦システム。
The API document includes a camel case or snake case string,
The input unit decomposes the camel case or snake case character string of the API document into words,
The similar document recommendation system according to claim 1, wherein:
前記推薦部は、第1APIの推薦結果に対するユーザの正誤判定を保存する、
ことを特徴とする請求項1に記載の類似文書推薦システム。
The recommendation unit stores a user's correct / incorrect determination on the recommendation result of the first API.
The similar document recommendation system according to claim 1, wherein:
複数の第1APIを説明する文章を有する複数のAPI情報を保有するステップと、
第2APIを説明する文章を有するAPI文書の入力を受け付けるステップと、
前記API文書と前記API情報との類似度を算出するステップと、
前記類似度に基づき、前記第2APIに類似する一または複数の第1APIを推薦するステップと、
を含むことを特徴とする類似文書推薦方法。
Holding a plurality of API information having sentences describing a plurality of first APIs;
Receiving an input of an API document having a sentence explaining the second API;
Calculating a similarity between the API document and the API information;
Recommending one or more first APIs similar to the second API based on the similarity;
A method for recommending similar documents, comprising:
複数の第1APIを説明する文章を有する複数のAPI情報を保有する保有手段、
第2APIを説明する文章を有するAPI文書の入力を受け付ける入力手段、
前記API文書と前記API情報との類似度を算出する類似度算出手段、
前記類似度算出手段が算出した類似度に基づき、前記第2APIに類似する一または複数の第1APIを推薦する推薦手段、
としてコンピュータを機能させるための類似文書推薦プログラム。
Holding means for holding a plurality of API information having sentences describing a plurality of first APIs;
An input means for receiving an input of an API document having a sentence explaining the second API;
Similarity calculation means for calculating the similarity between the API document and the API information;
Recommending means for recommending one or more first APIs similar to the second API based on the similarity calculated by the similarity calculating means;
Similar document recommendation program to make computer function as
JP2016023297A 2016-02-10 2016-02-10 Similar document recommendation system, similar document recommendation method, and similar document recommendation program Pending JP2017142640A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016023297A JP2017142640A (en) 2016-02-10 2016-02-10 Similar document recommendation system, similar document recommendation method, and similar document recommendation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016023297A JP2017142640A (en) 2016-02-10 2016-02-10 Similar document recommendation system, similar document recommendation method, and similar document recommendation program

Publications (1)

Publication Number Publication Date
JP2017142640A true JP2017142640A (en) 2017-08-17

Family

ID=59627529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016023297A Pending JP2017142640A (en) 2016-02-10 2016-02-10 Similar document recommendation system, similar document recommendation method, and similar document recommendation program

Country Status (1)

Country Link
JP (1) JP2017142640A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019133621A (en) * 2018-02-02 2019-08-08 富士通株式会社 Collection of api documentation
WO2022215188A1 (en) * 2021-04-07 2022-10-13 日本電信電話株式会社 Information processing device, information processing method, and program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004341649A (en) * 2003-05-13 2004-12-02 Ntt Data Technology Corp Similar document search method
JP2011081494A (en) * 2009-10-05 2011-04-21 Tokyo Electric Power Co Inc:The Document data analyzing device, method and program
JP2011232855A (en) * 2010-04-26 2011-11-17 Nec Software Kyushu Ltd Character conversion device, character conversion system, character conversion method and program
JP2012008948A (en) * 2010-06-28 2012-01-12 Sharp Corp Similarity derivation device and similarity derivation program
JP2012113536A (en) * 2010-11-25 2012-06-14 Hitachi Ltd System transition support device and support method
JP2012208924A (en) * 2011-03-28 2012-10-25 Palo Alto Research Center Inc Document comparison method and document comparison system based on various inter-document similarity calculation method using adaptive weighting

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004341649A (en) * 2003-05-13 2004-12-02 Ntt Data Technology Corp Similar document search method
JP2011081494A (en) * 2009-10-05 2011-04-21 Tokyo Electric Power Co Inc:The Document data analyzing device, method and program
JP2011232855A (en) * 2010-04-26 2011-11-17 Nec Software Kyushu Ltd Character conversion device, character conversion system, character conversion method and program
JP2012008948A (en) * 2010-06-28 2012-01-12 Sharp Corp Similarity derivation device and similarity derivation program
JP2012113536A (en) * 2010-11-25 2012-06-14 Hitachi Ltd System transition support device and support method
JP2012208924A (en) * 2011-03-28 2012-10-25 Palo Alto Research Center Inc Document comparison method and document comparison system based on various inter-document similarity calculation method using adaptive weighting

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
島田 隆次,他: ""開発中のソースコードに基づくソフトウェア部品の自動推薦システムA−SCORE"", 情報処理学会論文誌 論文誌ジャーナル[CD−ROM], vol. 第50巻,第12号, JPN6018048828, 15 December 2009 (2009-12-15), pages 3095 - 3107, ISSN: 0004026466 *
高見 愛,他: ""ソフトウェア部品検索のためのAPIを利用した類似部品検出方法の提案"", 情報処理学会研究報告 2012(平成24)年度▲1▼ 研究報告 組込みシステム(EMB)[CD−RO, JPN6018048829, 15 June 2012 (2012-06-15), pages 1 - 7, ISSN: 0003937074 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019133621A (en) * 2018-02-02 2019-08-08 富士通株式会社 Collection of api documentation
JP7155739B2 (en) 2018-02-02 2022-10-19 富士通株式会社 Collect API documentation
WO2022215188A1 (en) * 2021-04-07 2022-10-13 日本電信電話株式会社 Information processing device, information processing method, and program

Similar Documents

Publication Publication Date Title
CN107491534B (en) Information processing method and device
US11625620B2 (en) Techniques for building a knowledge graph in limited knowledge domains
US10540624B2 (en) System and method to automate provenance-aware application execution
EP3514694B1 (en) Query translation
KR102220127B1 (en) Method and apparatus for customized software development kit (sdk) generation
US20160140106A1 (en) Phrase-based data classification system
US10678682B2 (en) Intelligent batch job testing
US9098583B2 (en) Semantic analysis driven service creation within a multi-level business process
CN110543297B (en) Method and apparatus for generating source code
US11651015B2 (en) Method and apparatus for presenting information
US11675581B1 (en) Automated creation, testing, training, adaptation and deployment of new artificial intelligence (AI) models
CN111159220A (en) Method and apparatus for outputting structured query statement
CN108984202B (en) Electronic resource sharing method and device and storage medium
CN110837356A (en) Data processing method and device
CN111125064B (en) Method and device for generating database schema definition statement
CN112947912A (en) Method and device for generating code, electronic equipment and storage medium
CN110692042A (en) Platform selection to perform requested actions in an audio-based computing environment
CN111008213B (en) Method and apparatus for generating language conversion model
JP2017142640A (en) Similar document recommendation system, similar document recommendation method, and similar document recommendation program
CN111062682B (en) Work order processing method and device
KR102151322B1 (en) Information push method and device
CN114761944A (en) Session broker on domain structure knowledge
WO2019078956A1 (en) Systems and methods for document to order conversion
CN105988992A (en) Icon pushing method and device
Sánchez-Rada et al. A big linked data toolkit for social media analysis and visualization based on W3C web components

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190122

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190507