2016 - 2024

感恩一路有你

mr bullet手游攻略 最强大脑里小度的对话功能是如何做到的?

浏览量:4457 时间:2023-06-23 15:26:42 作者:采采

最强大脑里小度的对话功能是如何做到的?

其实我们做一个智能聊天机器人也不容易。我刚刚在这里实现了一个非常简单的聊天机器人。当你和这个机器人聊天的时候,每次机器人都会根据你说的关键词找到答案句子。如果你能 找不到,随便说个默认语言。数据存储格式是xml。以下是xml的原始文件:lt?xml版编码UTF-8?大型旅行车的

ltchatgt

lt!-默认聊天语句- gt

ltdefaultgt

Ltcontentgt,你在哪里?lt/contentgt

Ltcontentgt,你还是学生吗默认值gt

lt!-回答指定关键词的句子顺序-gtltanswergt lt contentkey责备gt不责备lt/contentgt。

lt内容键慢速gt是,慢速lt/contentgt

Ltcontent密钥。嘿,gt,什么 怎么样了?lt/contentgt

Ltcontent key88gt再见lt/contentgt

lt内容关键感谢gt有 没什么可感谢的。

我赢了。;别说了,我会去的。

lt/chatgt////////////////////////////////////////////。

公共类表单1

继承由Windows窗体设计器Public Sub New()生成的# regionCode

()此调用是Windows窗体设计器所必需的。

InitializeComponent()在InitializeComponent()调用后添加任何初始化结束子窗体以覆盖dispose,从而清理组件列表。

受保护的重载覆盖Sub Dispose(ByVal Dispose为Boolean)

如果处理然后

如果不是(组件什么都不是),那么

组件。处置()

如果…就会结束

如果…就会结束

我的基地。处置(处置)

结束子胜利由dows表单设计器要求。

下面的过程是Windows窗体设计器所必需的。

您可以使用Windows窗体设计器来修改此过程。

不要使用代码编辑器修改它。

将事件RichTextBox1作为朋友

事件文本框1为的朋友

事件按钮1为的朋友

()gt私有Sub InitializeComponent()

将资源标注为新资源(GetType(Form1))

新的

我。文本框1新

我。按钮1新

()

RichTextBox1

新系统。绘图点(0,0)

RichTextBox1

真实的

新的(560,304)

2

文本框1

我。文本框1 .位置新系统。绘图点(0,312)

文本框1

新(456,21)

0

我。文本框1 .文本

按钮1

我。按钮1 .新系统的位置。绘图点(472,312)

按钮1

新(72,24)

一个

我。按钮1 .文本输入

表格1

新(6,14)

新(560,341)

(我。按钮1)

(我。文本框1)

()

我。Icon CType(($this。图标)、系统。绘图.图标)

错误的

表格1

我。文字青蛙王子

(False)End Sub # End Region Private Sub form 1 _ Load(ByVal sender As System。对象,ByVal e作为系统。EventArgs)处理MyBase。负荷

readxml()

末端接头

将xmlFile显示为字符串。/robot.xml

Dim聊天列表作为新的数组列表

迪姆安swerList作为新哈希表

Dim random作为新系统。随机私有Sub readxml()

尝试

将文档标注为XmlDocument新建XmlDocument

医生。加载(xmlFile)

Dim nodeList作为XmlNodeList

Dim根作为XmlElement

-默认聊天语句-

节点列表(/聊天/默认/内容)

将节点标注为XmlNode

对于节点列表中的每个节点

()

然后

回答指定关键字的陈述顺序-

节点列表(/聊天/回答/内容)

对于节点列表中的每个节点

((关键)。值,)

然后

将ex作为异常捕获

MsgBox()

结束尝试

末端接头

private Sub button 1 _ Click(ByVal s:)ltgt-1)那么

如果学习新单词(内容),则

我学到了新的东西,谢谢!控制字符。Lf)

如果…就会结束

出口接头

如果…就会结束

(内容控制字符。Lf)

Dim aStr$ getSimilarContent(内容)

如果(aStr Nothing)那么

尺寸i% (1,)

aStr(一)

如果…就会结束

(ControlChars。Lf)

()

末端接头

获取类似的字符串

函数getSimilarContent(字符串形式的ByVal内容)作为字符串

调暗按键为

Dim enumR As

While()

Dim str$

如果c内容。等于(字符串)

返回应答列表

如果…就会结束

结束时间

()

While()

Dim str$

如果((str) ltgt -1)或((content) ltgt -1)那么

返回应答列表

如果…就会结束

结束时间

不返回任何内容

End函数添加一条新语句。

函数learnNewWord(字符串形式的ByVal内容)为布尔值

尝试

将文档标注为XmlDocument新建XmlDocum:)

Dim str1$ (0,I)

Dim str2美元(i 1)

医生。加载(xmlFile)

Dim elem As XmlElement(内容)

作为XmlAttribute的Dim属性(键)

str1

str2

(属性)

添加新语句-

Dim根作为XmlElement

将xmlNode显示为xmlNode(/聊天/回答)

(elem)

(str1,str2)

(xmlFile)

返回True

将ex作为异常捕获

MsgBox()

返回False

结束尝试

End函数Private Sub textbox 1 _ KeyPress(ByVal sender As Object,ByVal e As)句柄

如果()那么

Button1_Click(无,无)

如果…就会结束

末端接头

结束类

希望你能理解!

内容 列表 系统 末端 字符串

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。