gpt4 book ai didi

java - 从数组中抓取单词

转载 作者:行者123 更新时间:2023-12-01 13:41:36 25 4
gpt4 key购买 nike

我非常不确定如何做到这一点。我理解(我相信)您使用

String[] user {"stuff","other stuff","more stuff"};

我正在开发一个聊天机器人,我需要它能够识别用户所说的内容,并且如果它位于数组内部(即“数据库”),那么它将做出相应的响应。

简单的事情,这样我就可以说,“你好吗?”它会寻找“你好吗?”或者至少接近它的东西,并用随机的积极词做出相应的回应。我通过简单地使用大量 if-else 语句就实现了这个功能,但是这样的编码太多了。

最佳答案

如果我理解正确的话,您希望您的机器人响应用户的一些提示。在这种情况下,您可以使用 Map<String, String>存储查询-答案对。

Map<String, String> answers = new HashMap<String, String>();

answers.put("How are you?", "Great!");
answers.put("Where is the cake?", "The cake is a lie");

然后检查查询字符串是否在答案中:

public String answerUser(String query) {
if (answers.containsKey(query)) {
return answers.get(query);
} else {
return "I don't understand.";
}
}

如果您想要多个可能的答案,请使用 Map<String, List<String>>并从列表中随机选择:

public String answerUser(String query) {
Random rand = new Random();

if (answers.containsKey(query)) {
List<String> ans = answers.get(query);
int id = rand.nextInt(ans.size());
return ans.get(id);
} else {
return "I don't understand.";
}
}

关于java - 从数组中抓取单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20712860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com