2016-04-26 3 views
1

Ich habe ein kleines Programm zu testen Microsoft Cognitive-Service, aber es zurückgeben immerMicrosoft Cognitive Interner Serverfehler für /vision/v1.0/analyze

{ 
"code":"InternalServerError", 
"requestId":"6d6dd4ec-9840-4db3-9849-a6497094fa4c", 
"message":"Internal server error." 
} 

Der Code Ich verwende ist:

#!/usr/bin/env python 
import httplib, urllib, base64 

headers = { 
    # Request headers 
    'Content-Type': 'application/json', 
    'Ocp-Apim-Subscription-Key': '53403359628e420ab85a516a79ba1bd0', 
} 

params = urllib.urlencode({ 
    # Request parameters 
    'visualFeatures': 'Categories,Tags,Adult,Description,Faces', 
    'details': '{string}', 
}) 

try: 
    conn = httplib.HTTPSConnection('api.projectoxford.ai') 

    conn.request("POST", "/vision/v1.0/analyze?%s" % params, 
     '{"url":"http://static5.netshoes.net/Produtos/bola-umbro-neo-liga-futsal/28/D21-0232-028/D21-0232-028_zoom1.jpg?resize=54g:*"}', headers) 
    response = conn.getresponse() 
    data = response.read() 
    print(data) 
    conn.close() 
except Exception as e: 
    print("[Errno {0}] {1}".format(e.errno, e.strerror)) 

Mache ich etwas falsch oder ist es ein generalisiertes Serverproblem?

Antwort

3

Das Problem ist in der Parameter Variable. Wenn Sie definieren, welche visuellen Merkmale Sie extrahieren möchten, können Sie bestimmte Details aus dem Bild angeben, wie in der documentation beschrieben. Die Details Feld, falls verwendet, muss mit einem der gültigen String Optionen zur Verfügung gestellt werden (derzeit, nur die Unterstützung der "Celebrities" -Option, die identifizieren würde, welche Berühmtheit in dem Bild ist). In diesem Fall initialisierten Sie die Details Feld mit wörtlich den Platzhalter in der Dokumentation ('{string'}) vermerkt. Dadurch hat das System einen internen Fehler verursacht.

Um das zu korrigieren, sollten Sie versuchen:

params = urllib.urlencode({ 
    # Request parameters 
    'visualFeatures': 'Categories,Tags,Adult,Description,Faces', 
    'details': 'Celebrities', 
}) 

(PS: Habe bereits berichtet, um dieses Verhalten zu Microsoft Kognitive Leistungen.)

+0

Alternativ lassen Sie das 'details' vollständig Feld. – cthrash