Watson AlchemyLanguage - 如何设置 CombinedCall 的参数

Watson AlchemyLanguage - How do I set the parameters for a CombinedCall

不幸的是,我无法正确标记这个问题,因为 AlchemyLanguage 的标记尚不存在。 我正在尝试使用组合调用从 Watson 检索多个提取物。 发出对单个数据提取的调用按预期工作,但是当我尝试为组合调用设置参数时,每个提取仅返回 null。 根据使用 JSON 的示例,似乎 'extract':'sentiment' 是必需的配对。

None 这些调用有效:

params.put(AlchemyLanguage.EXTRACT, AlchemyLanguage.SENTIMENT);
params.put(AlchemyLanguage.EXTRACT, AlchemyEndPoints.AlchemyAPI.SENTIMENT);
params.put(AlchemyLanguage.EXTRACT, DocumentSentiment.class);
params.put(AlchemyLanguage.TARGET, AlchemyEndPoints.AlchemyAPI.SENTIMENT);
params.put(AlchemyLanguage.TARGET, DocumentSentiment.class);
params.put(AlchemyLanguage.TARGET, AlchemyLanguage.SENTIMENT);

CombinedResults results=service.getCombinedResults(params).execute();
System.out.println(results.getSentiment());

您需要使用extract参数作为键并列出您要使用的函数。

AlchemyLanguage service = new AlchemyLanguage();
service.setApiKey("API_KEY")
Map<String, Object> params = new HashMap<String, Object>();

params.put(AlchemyLanguage.EXTRACT, "authors,concepts,dates,doc-emotion,entities,feeds,keywords,pub-date,relations,typed-rels,doc-sentiment,taxonomy,title");

CombinedResults results=service.getCombinedResults(params).execute();
System.out.println(results);

有关如何配置 extract 参数中列出的每个函数的详细信息,请参阅 API Reference