2016-04-26 67 views
1

微軟認知服務內部服務器錯誤我犯了一個小程序來測試Microsoft認知服務,但它總是返回爲/vision/v1.0/analyze

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

我正在使用的代碼是:

#!/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)) 

我做錯了什麼,或者這是一個廣義的服務器問題?

回答

3

問題出在params變量。在定義要提取的視覺特徵時,可以從圖像中指定特定的細節,如documentation中所述。 詳細信息字段(如果使用的話)必須使用有效的字符串選項(目前僅支持「名人」選項,可識別圖像中哪個名人)進行初始化。在這種情況下,您初始化詳細信息字段,字面上文檔中記錄的佔位符('{string'})。這導致系統發生內部錯誤。

要糾正的是,你應該嘗試:

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

(PS:已經報告了行爲認知微軟服務。)

+0

或者,完全忽略'details'領域。 – cthrash