日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人工智能 > ChatGpt >内容正文

ChatGpt

aiml java_AIML实现智能聊天机器人

發(fā)布時間:2023/12/31 ChatGpt 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 aiml java_AIML实现智能聊天机器人 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近在做個智能聊天機(jī)器人『我知道大家肯定要說對接圖靈,小黃雞啊,但是有時候我們需要根據(jù)自己的業(yè)務(wù)和專業(yè)領(lǐng)域內(nèi)的一些東西做智能聊天,那這里又有人說了,用他們的添加詞庫啊,那我想說的對應(yīng)自己業(yè)務(wù)相關(guān)的一些動態(tài)數(shù)據(jù)你咋添加.......自行補(bǔ)腦吧,如果您有啥高見歡迎反饋』,經(jīng)過google baidu的一番搜索發(fā)現(xiàn)了一個aiml的智能聊天機(jī)器人,當(dāng)然也在國內(nèi)找到了一些教程,都寫的非常好^_^

首先給大家提供一些資源的下載地址

首先是AIML網(wǎng)址:http://www.alicebot.org/

以及相關(guān)下載地址和文檔:

http://www.alicebot.org/downloads/programs.html

http://www.geocities.ws/phelio/chatterbean/

另外附上chatterbean的源碼?http://pan.baidu.com/s/1o7QwsFS,下載后解壓在Sources目錄里面

Sources目錄里面的源碼可直接加入你自己工程,就兩個依賴jar ?bsh.jar ?junit.jar

maven pom如下

bsh

bsh

2.0b4

junit

junit

4.12

加入源碼和配置好jar后你會發(fā)現(xiàn)有個類JavascriptInterpreter報錯,原因是

import netscape.javascript.JSObject 這個引入找不到,這里有兩種解決方法

第一種是直接干掉這個類,對,你沒看錯就是干掉JavascriptInterpreter這個類

干掉這個類之后你會發(fā)現(xiàn)ChatterBean這個類報錯那么解決方法就是注釋掉

//private final Interpreter javascript = new JavascriptInterpreter(this); ?66行

//context.property("javascript.interpreter", javascript); ? 154行

然后就一切正???/p>

最后工程就是這樣的。

第二種是你去找對應(yīng)的jar加入,話說是jdk里面,我是第一種方案,所以就沒管了

到此我們的準(zhǔn)備工作已經(jīng)完成了

然后開始我們的編碼了

一共兩個類

public class AliceBotMother {

private ByteArrayOutputStream gossip;

public void setUp() {

gossip = new ByteArrayOutputStream();

}

public String gossip() {

return gossip.toString();

}

public AliceBot newInstance() throws Exception {

Searcher searcher = new Searcher();

AliceBotParser parser = new AliceBotParser();

System.out.println(ClassLoader.getSystemResource("Bots/Alice/").getPath());

AliceBot bot = parser.parse(

new FileInputStream(ClassLoader.getSystemResource("Bots/context.xml").getPath()),

new FileInputStream(ClassLoader.getSystemResource("Bots/splitters.xml").getPath()),

new FileInputStream(ClassLoader.getSystemResource("Bots/substitutions.xml").getPath()),

searcher.search(ClassLoader.getSystemResource("Bots/Alice/").getPath(), "/*.aiml"));

Context context = bot.getContext();

context.outputStream(gossip);

return bot;

}

}

需要注意的就是這些文件的路徑

我這就是這么擺放的,僅供參考。

這些文件在http://pan.baidu.com/s/1o7QwsFS 這個里面下載后都有 您可以下載后瞄一下

第二個類,這個類就是我們的測試類咯,可以說是異常的簡單

public class Test {

public static void main(String[] args) throws Exception {

AliceBotMother mother = new AliceBotMother();

mother.setUp();

AliceBot bot = mother.newInstance();

//這里你可以自己搞個循環(huán)然后輸入

String reMsg = "推薦";

//reMsg = AnalyzerHelp.spaceStr(reMsg);這里分詞大家就自己折騰吧我使用的是lucene

//System.out.println("分詞結(jié)果:" + reMsg);

String result = bot.respond(reMsg);

System.out.println("AI:" + result);

}

}

哈哈,看看效果吧

沒太多時間排版,湊合看下吧。。。。。

這里只是個簡單的例子后續(xù)的自己業(yè)務(wù)一些相關(guān)動態(tài)數(shù)據(jù)包括一些標(biāo)簽擴(kuò)展(標(biāo)簽類只需擴(kuò)展TemplateElement即可)感興趣的同學(xué)可以研究一下。

容我吟詩一首:

寫字樓里寫字間,寫字間里程序員。

程序人員寫程序,又拿程序換酒錢。

歡迎討論交流哈,我郵箱:lwcloud@vip.qq.com

總結(jié)

以上是生活随笔為你收集整理的aiml java_AIML实现智能聊天机器人的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。