Wolfram Language

Umfassenderer Zugang zur Knowledgebase

EntityProperty-Abfragen in freier Form

Bauen Sie mit Interpreter eine Funktion, die EntityValue ähnelt, aber erlauben Sie Spezifizierungen der EntityType, Entity und EntityProperty-Befehle in natürlicher englischer Sprache.

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"]]]

Wenden Sie die Funktion auf verschiedene Entitätstypen, Entitäten und Eigenschaften an.

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]=

Verwandte Beispiele

en es fr ja ko pt-br ru zh