Método evaluateevaluate Method

El método evaluate evalúa y devuelve la salida de una expresión de consulta estructurada en función de los datos de índice.The evaluate method evaluates and returns the output of a structured query expression based on the index data.

Normalmente, una expresión se obtiene de una respuesta al método interpret.Typically, an expression will be obtained from a response to the interpret method. Pero también puede crear expresiones de consulta por su cuenta (consulte Expresión de consulta estructurada).But you can also compose query expressions yourself (see Structured Query Expression).

SolicitudRequest

http://<host>/evaluate?expr=<expr>&attributes=<attrs>[&<options>]

NOMBREName ValorValue DESCRIPCIÓNDescription
exprexpr Cadena de textoText string Expresión de consulta estructurada que selecciona un subconjunto de entidades de índice.Structured query expression that selects a subset of index entities.
attributesattributes Cadena de textoText string Lista delimitada por comas de atributos para incluir en la respuesta.Comma-delimited list of attributes to include in response.
countcount Número (valor predeterminado= 10)Number (default=10) El número máximo de resultados que se devolverán.Maximum number of results to return.
Offsetoffset Número (valor predeterminado= 0)Number (default=0) Índice del primer resultado que se va a devolver.Index of the first result to return.
orderbyorderby Cadena de textoText string Nombre del atributo que se usa para ordenar los resultados, seguido por un criterio de ordenación opcional (valor predeterminado= asc): "attrname[:(asc|desc)]".Name of attribute used to sort the results, followed by optional sort order (default=asc): "attrname[:(asc|desc)]". Si no se especifica, los resultados se devuelven reduciendo la probabilidad logarítmica natural.If not specified, the results are returned by decreasing natural log probability.
timeouttimeout Número (valor predeterminado=1000)Number (default=1000) Tiempo de espera en milisegundos.Timeout in milliseconds. Se devuelven únicamente los resultados calculados antes de que haya transcurrido el tiempo de expiración.Only results computed before the timeout has elapsed are returned.

Mediante los parámetros count y offset, puede obtenerse un gran número de resultados incrementalmente sobre varias solicitudes.Using the count and offset parameters, a large number of results may be obtained incrementally over multiple requests.

Respuesta (JSON)Response (JSON)

JSONPathJSONPath DESCRIPCIÓNDescription
$.expr$.expr El parámetro expr de la solicitud.expr parameter from the request.
$.entities$.entities Matriz de 0 o más entidades de objetos que coinciden con la expresión de consulta estructurada.Array of 0 or more object entities matching the structured query expression.
$.aborted$.aborted True si la solicitud ha agotado el tiempo de espera.True if the request timed out.

Cada entidad contiene un valor logprob y los valores de los atributos solicitados.Each entity contains a logprob value and the values of the requested attributes.

EjemploExample

En el ejemplo de publicaciones académicas, la siguiente solicitud pasa una expresión de consulta estructurada (posiblemente desde la salida de una solicitud interpret) y recupera unos cuantos atributos para las 2 entidades coincidentes principales:In the academic publications example, the following request passes a structured query expression (potentially from the output of an interpret request) and retrieves a few attributes for the top 2 matching entities:

http://<host>/evaluate?expr=Composite(Author.Name=='jaime teevan')&attributes=Title,Y,Author.Name,Author.Id&count=2

La respuesta contiene las 2 entidades principales ("count=2") que es más probable que coincidan.The response contains the top 2 ("count=2") most likely matching entities. Para cada entidad se devuelven los atributos de título, año, nombre del autor e identificador del autor.For each entity, the title, year, author name, and author ID attributes are returned. Observe cómo la estructura de los valores de atributo compuestos coincide con la forma en que se especifican en el archivo de datos.Note how the structure of composite attribute values matches the way they are specified in the data file.

{
  "expr": "Composite(Author.Name=='jaime teevan')",
  "entities": 
  [
    {
      "logprob": -6.645,
      "Ti": "personalizing search via automated analysis of interests and activities",
      "Y": 2005,
      "Author": [
        {
          "Name": "jaime teevan",
          "Id": 1968481722
        },
        {
          "Name": "susan t dumais",
          "Id": 676500258
        },
        {
          "Name": "eric horvitz",
          "Id": 1470530979
        }
      ]
    },
    {
      "logprob": -6.764,
      "Ti": "the perfect search engine is not enough a study of orienteering behavior in directed search",
      "Y": 2004,
      "Author": [
        {
          "Name": "jaime teevan",
          "Id": 1982462162
        },
        {
          "Name": "christine alvarado",
          "Id": 2163512453
        },
        {
          "Name": "mark s ackerman",
          "Id": 2055132526
        },
        {
          "Name": "david r karger",
          "Id": 2012534293
        }
      ]
    }
  ]
}