Worum handelt es sich bei Project Answer Search?What is Project Answer Search?

Die Project Answer Search-API verwendet den Bing-v7-Endpunkt, um Antworten auf interrogative Abfragen zu erhalten.Project Answer Search API uses the Bing v7 endpoint to get answers to interrogative queries. Auf eine Frage wie z.B. „Wie groß ist der Erdumfang?“A question such as "What is the circumference of the earth?" wird eine Antwort mit Fakten zurückgegeben.returns an answer with factual information. Eine Abfrage für eine Person, einen Ort oder eine Sache gibt Informationen über die in der Abfrage angegebene Entität zurück.A query for a person, place, or thing returns information about the entity identified by the query. Diese Szenarien können in Anwendungen wie Konversationsbots, Messaging-Apps, Readern usw. nützlich sein.These scenarios can be useful in applications such as conversational bots, messaging apps, readers, etc.

Abfragen geben Antworten zurück, die vom Abfrageszenario abhängen: Webseiten werden immer zurückgegeben, während Fakten und/oder Entitäten zurückgegeben werden, falls sie relevant sind.Queries return responses that depend on the query scenario: webpages are always returned, while facts and/or entities are returned if relevant.

EndpunktEndpoint

Um Antworten auf eine Frage oder Informationen zu einer Person, einem Ort oder einer Sache zu erhalten, senden Sie eine Anforderung an den Answer Search-API-Endpunkt.To get answers to a question or information about a person, place, or thing, send a request to the Answer Search API endpoint. Verwenden Sie die Header und URL-Parameter für verschiedene Spezifikationen.Use the headers and URL parameters for various specifications. Schließen Sie den Header Ocp-Apim-Subscription-Key mit einem gültigen Token ein.Include Ocp-Apim-Subscription-Key header with a valid token. Der Parameter für den Markt ist erforderlich.The market parameter is required. Derzeit wird nur der en-us-Markt unterstützt.Only en-us market is currently supported.

Mit der folgenden Abfrage werden Antworten auf die Frage „What is the circumference of the earth?“ (Wie groß ist der Erdumfang?) abgerufen:The following query gets answers to the question: "What is the circumference of the earth?"

GET:GET:

https://api.labs.cognitive.microsoft.com/answerSearch/v7.0/search?q=what+is+circumference+of+the=earth?&mkt=en-us

Der URL-Parameter q= ist erforderlich, um das Objekt der Suche anzugeben.The URL parameter q= is required to specify the object of search.

AntwortobjektResponse object

Die Antwort enthält HTTP-Header, Webseiten, Fakten und/oder Entitäten.The response includes HTTP headers, webpages, facts, and/or entities.

BingAPIs-TraceId: AB2E75C998614ADB8EBF5110DF648298
X-MSEdge-ClientID: 1E48FC4F7B8768C80B14F7997A106906
BingAPIs-SessionId: 0504DDD6DAE84861A4842306F8DA7A58
BingAPIs-Market: en-US
X-MSEdge-Ref: Ref A: AB2E75C998614ADB8EBF5110DF648298 Ref B: CO1EDGE0322 Ref C: 2018-04-19T19:57:13Z

JSON Response:

{
  "_type": "SearchResponse",
  "queryContext": {
    "originalQuery": "what is the circumference of earth"
  },
  "webPages": {
    "webSearchUrl": "https://www.bing.com/search?q\u003dwhat+is+the+circumference+of+earth",
    "totalEstimatedMatches": 217000,
    "value": [
      {
        "id": "https://www.bingapis.com/api/v7/#WebPages.0",
        "name": "Circumference of the Earth - Universe Today",
        "url": "https://www.universetoday.com/26461/circumference-of-the-earth/",
        "isFamilyFriendly": true,
        "displayUrl": "https://www.universetoday.com/26461/circumference-of-the-earth",
        "snippet": "The circumference of the Earth in kilometers is 40,075 km, and the circumference of the Earth in miles is 24,901. In other words, if you could drive your car around the equator of the Earth (yes, even over the oceans), you’d put on an extra 40,075 km on the odometer.",
        "deepLinks": [
          {
            "name": "About Earth",
            "url": "https://www.universetoday.com/14382/10-interesting-facts-about-planet-earth/"
          }
        ],
        "dateLastCrawled": "2018-04-12T14:13:00.0000000Z",
        "language": "en"
      },
      {
        "id": "https://www.bingapis.com/api/v7/#WebPages.1",
        "name": "Earth - Wikipedia",
        "url": "https://en.wikipedia.org/wiki/Earth",
        "about": [
          {
            "name": "Earth"
          },
          {
            "name": "Earth"
          }
        ],
        "isFamilyFriendly": true,
        "displayUrl": "https://en.wikipedia.org/wiki/Earth",
        "snippet": "Circumference: 40 075.017 km equatorial (24 901.461 mi) ... Earth is the third planet from the Sun and the only object in the Universe known to harbor life.",
        "deepLinks": [
          {
            "name": "Moon",
            "url": "https://en.wikipedia.org/wiki/Moon"
          },
          {
            "name": "Planet",
            "url": "https://en.wikipedia.org/wiki/Planet"
          },
          {
            "name": "Quasi-Satellites",
            "url": "https://en.wikipedia.org/wiki/Quasi-satellite"
          },
          {
            "name": "World Population",
            "url": "https://en.wikipedia.org/wiki/World_population"
          },
   . . .

    ]
  },
  "entities": {
    "value": [
      {
        "id": "https://www.bingapis.com/api/v7/#Entities.0",
        "contractualRules": [
          {
            "_type": "ContractualRules/LicenseAttribution",
            "targetPropertyName": "description",
            "mustBeCloseToContent": true,
            "license": {
              "name": "CC-BY-SA",
              "url": "https://creativecommons.org/licenses/by-sa/3.0/"
            },
            "licenseNotice": "Text under CC-BY-SA license"
          },
          {
            "_type": "ContractualRules/LinkAttribution",
            "targetPropertyName": "description",
            "mustBeCloseToContent": true,
            "text": "Wikipedia",
            "url": "https://en.wikipedia.org/wiki/Earth"
          },
          {
            "_type": "ContractualRules/MediaAttribution",
            "targetPropertyName": "image",
            "mustBeCloseToContent": true,
            "url": "https://en.wikipedia.org/wiki/Earth"
          }
        ],
        "webSearchUrl": "https://www.bing.com/entityexplore?q\u003dEarth\u0026filters\u003dsid:%226ddb3372-4801-5567-321e-e8a53bd774a4%22\u0026elv\u003dAXXfrEiqqD9r3GuelwApulpmymQx!ODfuQu*veOQHkvP0!Zbvi5F5tVcMSDJvDEWiQWwrdueYTtIszgj03oFQHykYYLYgq3q5!Sf00QxXGIS",
        "name": "Earth",
        "image": {
          "name": "Earth",
          "thumbnailUrl": "https://www.bing.com/th?id\u003dA3ab623665ab412f386c162bd29f0683a\u0026w\u003d110\u0026h\u003d110\u0026c\u003d7\u0026rs\u003d1\u0026qlt\u003d80\u0026cdv\u003d1\u0026pid\u003d16.1",
          "provider": [
            {
              "_type": "Organization",
              "url": "https://en.wikipedia.org/wiki/Earth"
            }
          ],
          "hostPageUrl": "https://upload.wikimedia.org/wikipedia/commons/9/97/The_Earth_seen_from_Apollo_17.jpg",
          "width": 110,
          "height": 110,
          "sourceWidth": 799,
          "sourceHeight": 800
        },
        "description": "Earth is the third planet from the Sun and the only object in the Universe known to harbor life. According to radiometric dating and other sources of evidence, Earth formed over 4.5 billion years ago. Earth\u0027s gravity interacts with other objects in space, especially the Sun and the Moon, Earth\u0027s only natural satellite. Earth revolves around the Sun in 365.26 days, a period known as an Earth year. During this time, Earth rotates about its axis about 366.26 times.",
        "entityPresentationInfo": {
          "entityScenario": "DominantEntity",
          "entityTypeHints": [
            "Generic"
          ]
        },
        "bingId": "6ddb3372-4801-5567-321e-e8a53bd774a4"
      }
    ]
  },
  "facts": {
    "id": "https://www.bingapis.com/api/v7/#Facts",
    "contractualRules": [
      {
        "_type": "ContractualRules/LinkAttribution",
        "text": "www.universetoday.com/26461/circumference-of-the-earth/",
        "url": "http://www.universetoday.com/26461/circumference-of-the-earth/"
      }
    ],
    "attributions": [
      {
        "providerDisplayName": "www.universetoday.com/26461/circumference-of-the-earth/",
        "seeMoreUrl": "http://www.universetoday.com/26461/circumference-of-the-earth/"
      }
    ],
    "value": [
      {
        "description": "The circumference of the Earth in kilometers is 40,075 km, and the circumference of the Earth in miles is 24,901. In other words, if you could drive your car around the equator of the Earth (yes, even over the oceans), you’d put on an extra 40,075 km on the odometer.",
        "subjectName": ""
      }
    ]
  },
  "rankingResponse": {
    "mainline": {
      "items": [
        {
          "answerType": "Facts",
          "value": {
            "id": "https://www.bingapis.com/api/v7/#Facts"
          }
        },
        {
          "answerType": "WebPages",
          "resultIndex": 0,
          "value": {
            "id": "https://www.bingapis.com/api/v7/#WebPages.0"
          }
        },
        {
          "answerType": "WebPages",
          "resultIndex": 1,
          "value": {
            "id": "https://www.bingapis.com/api/v7/#WebPages.1"
          }
        },
        {
          "answerType": "WebPages",
          "resultIndex": 2,
          "value": {
            "id": "https://www.bingapis.com/api/v7/#WebPages.2"
          }
        },
        
        . . . 
      ]
    },
    "sidebar": {
      "items": [
        {
          "answerType": "Entities",
          "resultIndex": 0,
          "value": {
            "id": "https://www.bingapis.com/api/v7/#Entities.0"
          }
        }
      ]
    }
  }
}

NutzungsbedingungenTerms of use

Project Answer Search und Project Video Trends unterliegen den Anforderungen für Verwendung und Anzeige der Bing-Suche.Project Answer Search and Project Video Trends are subject to the Bing Search Use and Display Requirements.

Sie oder ein Dritter in Ihrem Namen dürfen Daten aus der URL-Vorschau-API nicht für Tests, Entwicklung, Schulung, Verteilung oder Bereitstellung eines Nicht-Microsoft-Diensts oder einer Nicht-Microsoft-Funktion verwenden, beibehalten, speichern, zwischenspeichern, freigeben oder verteilen.You, or a third party on your behalf, may not use, retain, store, cache, share, or distribute any data from the URL Preview API for the purpose of testing, developing, training, distributing or making available any non-Microsoft service or feature.

DrosselungsanforderungenThrottling requests

Der Dienst und Ihr Abonnementtyp bestimmen die zulässige Anzahl von Abfragen pro Sekunde (Queries Per Second, QPS).The service and your subscription type determine the number of queries per second (QPS) that you can make. Stellen Sie sicher, dass Ihre Anwendung die erforderliche Logik enthält, um das Kontingent nicht zu überschreiten.Make sure your application includes the logic to stay within your quota. Wenn der QPS-Grenzwert erreicht oder überschritten wird, ist die Anforderung nicht erfolgreich, und es wird ein HTTP 429-Statuscode zurückgegeben.If the QPS limit is met or exceeded, the request fails and an HTTP 429 status code is returned. Die Antwort enthält den Header Retry-After, der angibt, wie lange bis zum Senden einer weiteren Anforderung gewartet werden muss.The response includes the Retry-After header, which indicates how long you must wait before sending another request.

Denial-of-Service im Vergleich zur DrosselungDenial-of-service versus throttling

Der Dienst unterscheidet zwischen einem DoS-Angriff (Denial-of-Service) und einem QPS-Verstoß.The service makes a differentiation between a denial-of-service (DoS) attack and a QPS violation. Wenn der Dienst einen DoS-Angriff vermutet, ist die Anforderung erfolgreich (HTTP-Statuscode: 200 OK).If the service suspects a DoS attack, the request succeeds (HTTP status code is 200 OK). Der Antworttext ist jedoch leer.However, the body of the response is empty.

DatenzuordnungData attribution

Project Answer Search-Antworten enthalten Informationen, deren Besitzer Drittanbieter sind.Project Answer Search responses contain information owned by third parties. Es ist Ihre Aufgabe sicherzustellen, dass Sie diese in geeigneter Form verwenden, z.B. durch Einhaltung von Creative Commons-Lizenzen, auf denen Ihre Benutzeroberfläche möglicherweise basiert.You are responsible to ensure your use is appropriate, for example by complying with any creative commons license your user experience may rely on.

Wenn eine Antwort oder ein Ergebnis die Felder contractualRules, attributions oder provider enthält, müssen Sie die Daten zuordnen.If an answer or result includes the contractualRules, attributions, or provider fields, you must attribute the data. Enthält die Antwort keines dieser Felder, ist keine Zuordnung erforderlich.If the answer does not include any of these fields, no attribution is required. Wenn die Antwort das Feld contractualRules sowie die Felder attributions und/oder provider enthält, müssen Sie die vertraglichen Regeln zum Zuordnen der Daten verwenden.If the answer includes the contractualRules field and the attributions and/or provider fields, you must use the contractual rules to attribute the data.

Das folgende Beispiel zeigt eine Entität, die eine vertragliche MediaAttribution-Regel enthält, sowie ein Bild, das ein provider-Feld umfasst.The following example shows an entity that includes a MediaAttribution contractual rule and an Image that includes a provider field. Die MediaAttribution-Regel identifiziert das Bild als Ziel der Regel, sodass Sie das provider-Feld des Bilds ignorieren und stattdessen die MediaAttribution-Regel für die Zuordnung verwenden müssen.The MediaAttribution rule identifies the image as the target of the rule, so you'd ignore the image's provider field and instead use the MediaAttribution rule to provide attribution.

        "value" : [{
            "contractualRules" : [
                . . .
                {
                    "_type" : "ContractualRules\/MediaAttribution",
                    "targetPropertyName" : "image",
                    "mustBeCloseToContent" : true,
                    "url" : "http:\/\/en.wikipedia.org\/wiki\/Space_Needle"
                }
            ],
            . . .
            "image" : {
                "name" : "Space Needle",
                "thumbnailUrl" : "https:\/\/www.bing.com\/th?id=A46378861201...",
                "provider" : [{
                    "_type" : "Organization",
                    "url" : "http:\/\/en.wikipedia.org\/wiki\/Space_Needle"
                }],
                "hostPageUrl" : "http:\/\/www.citydictionary.com\/Uploaded...",
                "width" : 110,
                "height" : 110
            },
            . . .
        }]

Wenn eine vertragliche Regel das Feld targetPropertyName enthält, gilt die Regel nur für das Zielfeld.If a contractual rule includes the targetPropertyName field, the rule applies only to the targeted field. Andernfalls gilt die Regel für das übergeordnete Objekt, das das Feld contractualRules enthält.Otherwise, the rule applies to the parent object that contains the contractualRules field.

Im folgenden Beispiel enthält die Regel LinkAttribution das Feld targetPropertyName, sodass die Regel für das Feld description gilt.In the following example, the LinkAttribution rule includes the targetPropertyName field, so the rule applies to the description field. Bei Regeln, die für bestimmte Felder gelten, müssen Sie eine Zeile einfügen, die unmittelbar auf die Zieldaten folgt und einen Link zur Website des Anbieters enthält.For rules that apply to specific fields, you must include a line immediately following the targeted data that contains a hyperlink to the provider's website. Um beispielsweise die Beschreibung zuzuordnen, fügen Sie eine Zeile unmittelbar nach dem Beschreibungstext ein, der einen Link zu den Daten auf der Website des Anbieters enthält, also in diesem Fall einen Link zu „en.wikipedia.org“.For example, to attribute the description, include a line immediately following the description text that contains a hyperlink to the data on the provider's website, in this case create a link to en.wikipedia.org.

"entities" : {  
    "value" : [{  
            . . .  
            "description" : "Peyton Williams Manning is a former American....",  
            . . .  
            "contractualRules" : [{  
                    "_type" : "ContractualRules\/LinkAttribution",  
                    "targetPropertyName" : "description",  
                    "mustBeCloseToContent" : true,  
                    "text" : "en.wikipedia.org",  
                    "url" : "http:\/\/www.bing.com\/cr?IG=B8AD73..."  
                 },  
            . . .  
  

LizenzzuordnungLicense Attribution

Wenn die Liste der vertraglichen Regeln eine LicenseAttribution-Regel enthält, müssen Sie den Hinweis in der Zeile anzeigen, die unmittelbar auf den Inhalt folgt, für den die Lizenz gilt.If the list of contractual rules includes a LicenseAttribution rule, you must display the notice on the line immediately following the content that the license applies to. Die LicenseAttribution-Regel verwendet das Feld targetPropertyName, um die Eigenschaft anzugeben, für die die Lizenz gilt.The LicenseAttribution rule uses the targetPropertyName field to identify the property that the license applies to.

Nachfolgend sehen Sie ein Beispiel, das eine LicenseAttribution-Regel enthält.The following shows an example that includes a LicenseAttribution rule.

Lizenzzuordnung

Der von Ihnen angezeigte Lizenzhinweis muss einen Link zu der Website enthalten, die die Informationen zur Lizenz enthält.The license notice that you display must include a hyperlink to the website that contains information about the license. In der Regel verwenden Sie den Namen der Lizenz als Link.Typically, you make the name of the license a hyperlink. Wenn beispielsweise der Hinweis Text unter CC-BY-SA-Lizenz lautet und „CC-BY-SA“ der Name der Lizenz ist, würden Sie „CC-BY-SA“ als Link verwenden.For example, if the notice is Text under CC-BY-SA license and CC-BY-SA is the name of the license, you would make CC-BY-SA a hyperlink.

Die Regeln LinkAttribution und TextAttribution werden normalerweise verwendet, um den Anbieter der Daten anzugeben.The LinkAttribution and TextAttribution rules are typically used to identify the provider of the data. Das Feld targetPropertyName bezeichnet das Feld, für das die Regel gilt.The targetPropertyName field identifies the field that the rule applies to.

Zum Zuordnen der Anbieter fügen Sie eine Zeile ein, die unmittelbar auf den Inhalt folgt, für den die Zuordnungen gelten (z.B. das Zielfeld).To attribute the providers, include a line immediately following the content that the attributions apply to (for example, the targeted field). Die Zeile sollte eindeutig gekennzeichnet sein, um anzugeben, dass die Anbieter die Quelle der Daten sindThe line should be clearly labeled to indicate that the providers are the source of the data. (z.B. „Daten von: en.wikipedia.org“).For example, "Data from: en.wikipedia.org". Im Fall von LinkAttribution-Regeln müssen Sie einen Link zur Website des Anbieters erstellen.For LinkAttribution rules, you must create a hyperlink to the provider's website.

Nachfolgend sehen Sie ein Beispiel, das LinkAttribution- und TextAttribution-Regeln enthält.The following shows an example that includes LinkAttribution and TextAttribution rules.

Link- und Textzuordnung

MedienzuordnungMedia Attribution

Wenn die Entität ein Bild enthält und Sie dieses anzeigen, müssen Sie einen Link zum Durchklicken zur Website des Anbieters bereitstellen.If the entity includes an image and you display it, you must provide a click-through link to the provider's website. Wenn die Entität eine MediaAttribution-Regel enthält, verwenden Sie die URL der Regel, um den Link zum direkten Klicken zu erstellen.If the entity includes a MediaAttribution rule, use the rule's URL to create the click-through link. Verwenden Sie andernfalls die URL, die im provider-Feld des Bilds enthalten ist, um den Link zum direkten Klicken zu erstellen.Otherwise, use the URL included in the image's provider field to create the click-through link.

Nachfolgend sehen Sie ein Beispiel, das ein provider-Feld eines Bilds und vertragliche Regeln enthält.The following shows an example that includes an image's provider field and contractual rules. Da das Beispiel die vertragliche Regel enthält, ignorieren Sie das provider-Feld des Bilds und wenden die MediaAttribution-Regel an.Because the example includes the contractual rule, you will ignore the image's provider field and apply the MediaAttribution rule.

Medienzuordnung

Nächste SchritteNext steps