Wolfram言語

Knowledgebaseへの幅広いアクセス

実体と特性についての自由形式クエリ

Interpreterを使ってEntityValueに似た,自然言語のEntityTypeEntityEntityProperty指定が使える関数を作る.

In[1]:=
Click for copyable input
NLEntityValue[type_String, entity_String, property_String] := With[{res = Map[{Replace[#, AmbiguityList[{a___}, ___] :> a]} &, Interpreter[ CompoundElement[{"EntityType", "Entity", "EntityProperty"}], AmbiguityFunction -> All][{type, entity, property}]]}, If[FreeQ[res, Failure], EntityValue[FirstCase[res[[2]], Entity[res[[1, 1]], ___]], FirstCase[res[[3]], EntityProperty[res[[1, 1]], ___]]], Missing["Unknown"]]]

この関数をさまざまな実体タイプ,実体,特性に適用する.

In[2]:=
Click for copyable input
NLEntityValue["country", "GB", "oil imports"]
Out[2]=
In[3]:=
Click for copyable input
NLEntityValue["city", "windy city", "elderly population"]
Out[3]=
In[4]:=
Click for copyable input
NLEntityValue["celebrity", "the Boss", "birthday"]
Out[4]=
In[5]:=
Click for copyable input
NLEntityValue["moon", "ganymede", "image"]
Out[5]=
In[6]:=
Click for copyable input
Row[NLEntityValue["popular curve", #, "image"] & /@ {"trump", "hillary clinton"}]
Out[6]=

関連する例

de en es fr ko pt-br ru zh