国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)

這篇具有很好參考價(jià)值的文章主要介紹了我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言

若問(wèn)2023年科技領(lǐng)域什么最火,那當(dāng)然是ChatGPT了,這么智能的對(duì)話機(jī)器人,給人帶來(lái)無(wú)限的想象,圍繞著ChatpGPT的各種熱點(diǎn)和創(chuàng)意層出不窮。作為一個(gè)多年從事編程開(kāi)發(fā)的程序員,我對(duì)于這么大的一個(gè)熱點(diǎn)也很興奮,每天琢磨著圍繞ChatGPT干點(diǎn)啥。

當(dāng)然還是先要認(rèn)清現(xiàn)實(shí),心再高也不能想著去開(kāi)發(fā)一個(gè)ChatGPT一樣的東西。這個(gè)投入太大,難度太高,成果太不可預(yù)料,團(tuán)隊(duì)、成本、技術(shù)、模型、算力、數(shù)據(jù)、安全、法規(guī)等等,每一項(xiàng)對(duì)于中小型企業(yè)都是重大挑戰(zhàn)。國(guó)內(nèi)也只有幾個(gè)IT巨頭能玩,能玩到什么程度不知道,就像某度啊,純屬瞎湊熱鬧。那么多企業(yè)非得去湊熱鬧,非的要去沾個(gè)親,這個(gè)是無(wú)可厚非的,不管是博人眼球,還為了是抬高身價(jià),作用還是立竿見(jiàn)影的,湊熱鬧就湊吧。

思量一番,ChatGPT開(kāi)發(fā)不出來(lái),開(kāi)發(fā)一個(gè)它的近親ChatBot還是沒(méi)有多大難度的。于是親自考察了一下公司線上客服的聊天內(nèi)容,大致如下:

問(wèn):你好
答:您好
問(wèn):你們有xxx產(chǎn)品嗎
答:有啊
問(wèn):多少錢(qián)
答:您留個(gè)電話吧,打給您
問(wèn):怎么聯(lián)系你們
答:我們電話138...
...

再細(xì)細(xì)分析一下近年來(lái)的客服聊天記錄,竟然大部分對(duì)話都相似,相同的問(wèn)題和答復(fù),時(shí)刻都在重復(fù)上演!我的天啊,這也太程式化了吧,讓我們客服天天干這種事請(qǐng)也太浪費(fèi)資源了!不行,我要改變這種情形!

問(wèn)一下客服們,之前用過(guò)智能客服對(duì)話機(jī)器人嗎?她們說(shuō)是用過(guò)啊,用過(guò)阿某云的、華某云的,不太好用,經(jīng)常是答非所問(wèn)、似是而非,很少獲客。那就定了,我要給你們開(kāi)發(fā)一個(gè)好用的Chatbot智能客服,徹底解放生產(chǎn)力!

大話說(shuō)出來(lái)了,就只有去干了。經(jīng)過(guò)兩周的努力,終于實(shí)現(xiàn)了一個(gè)線上智能客服系統(tǒng)。雖然不是太智能,還算溫柔可人,能回答常見(jiàn)的客戶問(wèn)題,比如:

你好
你好,我在呢
你在哪
我在北京啊
你貴姓
我叫云云啊,你呢?
發(fā)個(gè)產(chǎn)品報(bào)價(jià)吧
報(bào)價(jià)你還是打電話問(wèn)吧
電話多少
電話是 136xxxxxxxx

哈哈,跟我們客服回答的有點(diǎn)像啊,有興趣可以跟她聊聊:???http://v.ruiboyun.cn/chat/??

我建議您先不要急著去跟這個(gè)機(jī)器人聊天,她并不是很聰明,還是希望您繼續(xù)往下看。

技術(shù)選型

理想很豐滿,現(xiàn)實(shí)須努力,為難于易,為大于細(xì),那就一步一步的來(lái)吧。

技術(shù)架構(gòu)

終端類(lèi)型:瀏覽器,客戶通過(guò)瀏覽器訪問(wèn)公司網(wǎng)站和瀏覽公司產(chǎn)品,聊天對(duì)話的場(chǎng)所就是瀏覽器中。

通信協(xié)議:Websocket,最適合進(jìn)行雙向交互,低延遲,高效率,沒(méi)有更好的選擇了。

后端框架:Java、PHP、Nodejs,好像都可以,但若要是做即時(shí)通信,前端面向?yàn)g覽器,那Nodejs應(yīng)該是不二之選。為啥?前后端用一種語(yǔ)言,前后端可以共用代碼,前后端工程師可以復(fù)用,配合起來(lái)就像左手拉右手,你說(shuō)香不香。使用Nodejs,就可以使用Socket.IO來(lái)進(jìn)行聊天通信,那就更簡(jiǎn)單了。當(dāng)然還有別的理由,往后看。

技術(shù)選型確定后,后面的工作都是基于這個(gè)技術(shù)框架來(lái)開(kāi)展,我就不再做解釋。

我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)

全文搜索引擎(full-text search)

做客服型Chatbot,全文搜索引擎是必須的,大量的聊天語(yǔ)料包準(zhǔn)備好后,需要有高效靈活的搜索引擎來(lái)查找對(duì)應(yīng)的內(nèi)容。

可用的全文搜索引擎系統(tǒng)很多,最終我把選擇范圍縮小到如下兩個(gè):

1)RediSearch

2)FlexSearch

RediSearch是Redis的一個(gè)插件模塊,用于實(shí)現(xiàn)全文搜索,具有開(kāi)源、高效、多字段檢索、精確短語(yǔ)匹配、搜索結(jié)果聚集等特點(diǎn)。

參考網(wǎng)址:??https://redis.io/docs/stack/search/??

FlexSearch是一個(gè)Nodejs模塊,具有開(kāi)源、輕量、純JS、零依賴、內(nèi)存內(nèi)索引等特點(diǎn)。

參考網(wǎng)址:??https://github.com/nextapps-de/flexsearch??

仔細(xì)對(duì)比兩個(gè)產(chǎn)品,RediSearch明顯具有成熟、靈活、參考資源多等優(yōu)勢(shì),如果要做商用產(chǎn)品或長(zhǎng)遠(yuǎn)打算,那就應(yīng)該選擇RediSearch。

再看FlexSearch的介紹和API接口,除了參考文檔少的可憐、成熟案例少之外,好像也沒(méi)有什么大的不足,也能滿足我的要求。更有吸引力的是輕量、JS源碼、有了問(wèn)題可以追根溯源的去修改,這恰恰符合我的脾氣。

那就選擇FlexSearch吧,雖然我選擇FlexSearch,并不代表它是最好的,如果你要做更高級(jí)的商用系統(tǒng),我還是建議你用RediSearch。

中文分詞(tokenization&segmentation)

使用全文搜索引擎,一個(gè)重要的工作就是分詞。索引過(guò)程是先對(duì)原始文本進(jìn)行分詞,然后對(duì)分詞結(jié)果索引;搜索過(guò)程是先對(duì)問(wèn)句進(jìn)行分詞,在使用分詞結(jié)果去查詢。

我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)

中文分詞相對(duì)于拉丁語(yǔ)等其他語(yǔ)言的分詞有很大的不同,拉丁語(yǔ)使用空格、標(biāo)點(diǎn)符號(hào)作為分詞標(biāo)記,每個(gè)單詞具有明確意義,因此分詞過(guò)程要簡(jiǎn)單的多。

而中文分詞則要復(fù)雜抽象一些,每個(gè)獨(dú)立漢字放到不同的詞語(yǔ)中意義就不同,若以每個(gè)漢字作為分詞結(jié)果,想要在海量的全文中搜索你期望的結(jié)果是不可預(yù)期的,干擾噪聲會(huì)完全淹沒(méi)你的期望結(jié)果。

中文分詞需要向后掃描要處理的文本序列,將單字、多字組合與字典中的詞語(yǔ)(或你自己預(yù)定義的詞語(yǔ)、術(shù)語(yǔ))來(lái)對(duì)比,以此確定分詞位置和分詞結(jié)果。

于是開(kāi)始找中文分詞器,還好,我們要選擇的兩個(gè)全文搜索系統(tǒng)都有可用的中文分詞器。

RediSearch使用了??Friso??庫(kù)進(jìn)行中文分詞,F(xiàn)riso 是使用 c 語(yǔ)言開(kāi)發(fā)的一款開(kāi)源的高性能中文分詞器,使用流行的mmseg算法實(shí)現(xiàn)。完全基于模塊化設(shè)計(jì)和實(shí)現(xiàn),可以很方便的植入其他程序中。到Github瀏覽了一下這個(gè)庫(kù),發(fā)現(xiàn)相當(dāng)不錯(cuò)!

參考網(wǎng)址:??https://github.com/lionsoul2014/friso??

FlexSearch則要更加靈活,可以自己選擇好用的中文分詞庫(kù)。上述Friso之封裝了了php5, php7, ocaml, lua的插件,并沒(méi)有封裝Nodejs包,若要使用需要自己封裝,這個(gè)可以參考Nodejs的N-API或Node-Addon-API。對(duì)于我目前的開(kāi)發(fā)項(xiàng)目,當(dāng)然還用不著再去將Friso封裝成Nodejs插件,這個(gè)有點(diǎn)走彎路了。在Nodejs家族里只要找一款中文分詞庫(kù),那應(yīng)該是很容易的,果不其然,github搜一下就有很多選擇。

我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)

nodejieba星最多,拿來(lái)測(cè)試一下,感覺(jué)分詞效果還可以,就用它吧。

文檔結(jié)構(gòu)

技術(shù)選型做好之后,開(kāi)始設(shè)計(jì)聊天語(yǔ)料的文檔結(jié)構(gòu)。我們把每一輪聊天互動(dòng)(一問(wèn)一答)的內(nèi)容定義為一個(gè)文檔,使用json對(duì)象來(lái)描述。文檔結(jié)構(gòu)定義如下:

{
  id:1,										//文檔編號(hào),用于唯一標(biāo)記一個(gè)文檔
  tag:"business",         //標(biāo)簽,用于將語(yǔ)料進(jìn)行分組歸類(lèi)
  query:"你好",           //問(wèn)句
  answer:"你好,有何吩咐?"http://答句
}

所有文檔保存在數(shù)組中:

[
  {
    id:1,										//文檔編號(hào),用于唯一標(biāo)記一個(gè)文檔
    tag:"business",         //標(biāo)簽,用于將語(yǔ)料進(jìn)行分組歸類(lèi)
    query:"你好",           //問(wèn)句
    answer:"你好,有何吩咐?"http://答句
	},
  {
    id:2,										//文檔編號(hào),用于唯一標(biāo)記一個(gè)文檔
    tag:"business",         //標(biāo)簽,用于將語(yǔ)料進(jìn)行分組歸類(lèi)
    query:"你貴姓",          //問(wèn)句
    answer:"我叫云云"       //答句
	}
]

文檔的query屬性會(huì)交給全文搜索引擎進(jìn)行索引,搜索過(guò)程就是搜索匹配的問(wèn)句的過(guò)程,搜索到匹配問(wèn)句后,將answer內(nèi)容反饋給提問(wèn)方。

對(duì)于海量的語(yǔ)料,文檔問(wèn)句詞語(yǔ)的重復(fù)會(huì)是常見(jiàn)的,一個(gè)問(wèn)句可能會(huì)返回多個(gè)結(jié)果,因此需要有手段選擇最佳匹配,盡量讓答復(fù)接近提問(wèn)者的期望。這是一個(gè)較為復(fù)雜的問(wèn)題,后面會(huì)有進(jìn)一步說(shuō)明。

實(shí)現(xiàn)細(xì)節(jié)

技術(shù)選型做好了,文檔結(jié)構(gòu)也設(shè)計(jì)好了,下面就是編碼實(shí)現(xiàn)了,好激動(dòng)啊。前一周參考了那么多技術(shù),論證也比較充分了,所以我計(jì)劃再花1周時(shí)間來(lái)開(kāi)發(fā)實(shí)現(xiàn)。

后端服務(wù)

Nodejs+socketio,主要實(shí)現(xiàn)即時(shí)文本通信,還需要實(shí)現(xiàn)一些其他WebAPI接口,這個(gè)對(duì)于熟悉Nodejs的工程師是小菜一碟。

主邏輯代碼app.js:

const chatter= require('./chatter');
const loader = require("./searcher/loader");
var express  = require('express');
var app   = express();
var http  = require('http');

//http + socketio 
var server = http.createServer(app);
var io = require('socket.io')(server);

const serverPort = 3000;
server.listen(serverPort, function(){
  console.log("接口服務(wù)已啟動(dòng),端口:",serverPort);
});

/**
 * 消息結(jié)構(gòu)體  答句時(shí)code非0時(shí)表示沒(méi)有對(duì)應(yīng)答案,問(wèn)句時(shí)省略
 * {
 *    code:0,
 *    msg:"hello"
 * }
 */

//加載語(yǔ)料
loader.loadall(chatter);

io.on("connection", (socket) => {
  socket.emit("message", {msg:"你好"});

  // receive a message from the client
  socket.on("message", (data,callback) => {
    let msg = data.msg;
    /**
     * 問(wèn)句 交給聊天機(jī)器人處理,返回 答句
     */
    let response_msg = chatter.chat(msg);
    let response_data = {
      code:response_msg?0:1,
      msg:response_msg
    };
    callback(response_data);
  });
});

下面就是聊天機(jī)器人的核心邏輯了。實(shí)現(xiàn)一個(gè)全文搜索引擎封裝文件 chatter.js

//搜索引擎
const { Index, Document, Worker } = require("flexsearch");
//分詞器
var nodejieba = require("nodejieba");

const regex = /[\x00-\x7F]+/g;
function encode(str) {
    str = ("" + str).replace(regex, "");
    let len = str.length;
    if (len < 0) return [];
    if (len == 1) return [str];
    let arr = nodejieba.cut(str);
    return arr;
}

const limit = 5;   //搜索結(jié)果最多返回?cái)?shù)

const documents = [];   //存儲(chǔ)所有文檔
var id = 0;    //id遞增器

//創(chuàng)建全文索引器,具體參見(jiàn)flexsearch用法
const options = {
    preset: "default",
    tokenize: "strict",
    language: "zh",
    encode: encode,            //引入分詞器
    bool: "or",
    document: {
        id: "id",
        tag: "tag",
        index: "q"
    }
};
const index = new Document(options);

/**
 * 添加語(yǔ)料接口
 */
function add(tag, q, a) {
    id++;
    documents[id] = { id: id, tag: tag, q: q, a: a };
    return index.add({ id: id, tag: tag, q: q });
}

/**
 * 查找
 * @param {string} text 
 * @param {string} tag 
 */
function search(text, tag) {
    let opt = {
        index: "q",
        limit: limit,
    };
    if (tag) opt.tag = tag;
    return index.search(text, opt);
}

//獲取文檔
function get(id) {
    return documents[id];
}

function chat(msg) {
    let result = search(msg, tag);
    if (result.length > 0) {
        let ids = result[0].result;
        let id  = ids[0];
        let doc = get(id);
        return doc.a;
    } else {
        return null;
    }
}

module.exports = { add, get, chat }

可以看到,在這個(gè)module中實(shí)現(xiàn)了較多的內(nèi)容,包括創(chuàng)建全文索引系統(tǒng)、創(chuàng)建分詞器,以及添加語(yǔ)料接口、查詢接口、文檔獲取接口等。

最終能力的輸出通過(guò)chat接口實(shí)現(xiàn)??碿hat函數(shù)代碼,原理簡(jiǎn)單,根據(jù)問(wèn)句檢索答句,如果有多條,則返回第一條。

語(yǔ)料的加載,在app.js通過(guò)實(shí)現(xiàn)一個(gè)loader來(lái)實(shí)現(xiàn)的:

//加載語(yǔ)料
loader.loadall(chatter);

loader的任務(wù)是將語(yǔ)料庫(kù)加載到內(nèi)存中,然后逐條傳遞給全文索引系統(tǒng)進(jìn)行索引。

前端頁(yè)面

前端頁(yè)面找我們前端美女實(shí)現(xiàn),設(shè)計(jì)一個(gè)聊天界面那是分分鐘的事情了,機(jī)器人的回答有一個(gè)汽包等待動(dòng)畫(huà),就像ChatGPT那樣,那是機(jī)器人在檢索數(shù)據(jù)。

我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)

前端代碼,通信部分大致是這樣的:

import { io } from "socket.io-client";

const socket = io("ws://localhost:3000");

// send a message to the server
socket.emit("message",{msg:"你好啊"},(data)=>{
  if(data.code==0){
    //渲染聊天數(shù)據(jù)
  }
});

效果提升

人任何時(shí)候都不能高估自己啊,要時(shí)刻提醒自己爬得高摔得重。通過(guò)幾天的努力,我的Chatbot已經(jīng)可以給你聊條對(duì)話了,可是效果如何呢,評(píng)測(cè)一下大致如下:

你好
你好
你在哪里
我在北京
上海在哪里
我在北京
科靈頓在哪里
我在北京

簡(jiǎn)直是無(wú)聊,很多問(wèn)題的答復(fù)落在要給答案上!

其實(shí)這是預(yù)料之中的事情,為啥,一是因?yàn)檎Z(yǔ)料庫(kù)內(nèi)容有限,二是檢索結(jié)果沒(méi)有經(jīng)過(guò)任何優(yōu)化。Flexsearch對(duì)多關(guān)鍵字的檢索(multi-search)打分,偏離的離譜,只能自己去優(yōu)化。既然是開(kāi)源的,那就可以優(yōu)化,或者變著法子使用你的優(yōu)點(diǎn),繞開(kāi)你的缺點(diǎn)。

優(yōu)化一,找最佳匹配結(jié)果

如果查到多個(gè)記錄,那就看看哪個(gè)匹配度最高,怎么計(jì)算匹配度高低呢?用了與i個(gè)簡(jiǎn)單的方法,那就是問(wèn)句中的所有分詞在哪個(gè)答案里出現(xiàn)的次數(shù)最多,就選則那個(gè)答案。

于是對(duì)查詢過(guò)程進(jìn)行優(yōu)化:

1)搜索前主動(dòng)分詞、去重、排除干擾字詞

2)搜索結(jié)果對(duì)比,尋找出現(xiàn)頻次最多的結(jié)果

于是,在chatter中實(shí)現(xiàn)如下搜索接口:

/**
 * 復(fù)雜搜索入口,輸入一個(gè)整句,這里進(jìn)行分詞、去重、搜索、合并
 * 同步函數(shù)
 * @param {string} text 
 * @param {string} tag 
 * @returns 
 */
function complexSearch(text,tag){
    let words = encoder.encode2(text);
    let arrIds= [];
    let keys  = [];

    if(!words ||words.length==0){
        return null;
    }

    if(words.length>keyLimit){
        //去掉1字詞
        words.forEach(element => {
            if(element.length>1){
                keys.push(element);
            }
        });
    }else{
        keys = words;
    }
   
    //限制搜索詞個(gè)數(shù)
    if(keys.length>keyLimit){
        keys = keys.slice(0,keyLimit);
    }

    //多次搜索,不使用flexsearch的multi-search
    keys.forEach(key=>{
        let result = search(key,tag);
        if(result.length>0){
            let ids = result[0].result;
            arrIds.push(ids);
        }
    });
    
    //取最優(yōu)結(jié)果
    let result = null;
    if(arrIds.length==1){
        result = arrIds[0];
    }else if(arrIds.length>1){
        result = arrUtils.mixmix(arrIds);
    }

    return result;
}

優(yōu)化后,測(cè)試一下,果然準(zhǔn)確度大幅攀升,基本上答復(fù)符合預(yù)期。

優(yōu)化二,優(yōu)化商務(wù)語(yǔ)料包,定義自有詞庫(kù)

這一步也很重要,商務(wù)語(yǔ)料包是用來(lái)回答客戶問(wèn)題的,盡量要簡(jiǎn)潔、通俗(符合大眾問(wèn)句習(xí)慣)、去除干擾詞。

例如,下面問(wèn)句,顯然第二句更好些:

你們公司的產(chǎn)品資料給我發(fā)一份吧
產(chǎn)品資料發(fā)一份

然后就是定義詞庫(kù),把客戶常用詞、公司的產(chǎn)品和術(shù)語(yǔ)做成一個(gè)詞典給分詞器,讓按照自定義詞典分詞,這樣檢索命中率就會(huì)更好。

優(yōu)化三,上下文相關(guān)搜索

上下文相關(guān)搜索是把相關(guān)的內(nèi)容放置在更優(yōu)先的反饋結(jié)果里,這樣智能機(jī)器人返回的結(jié)果就更像真人的聊天內(nèi)容,想想看,如果一次聊天對(duì)話能夠僅僅圍繞相同或相近的話題,是不是更有趣。

我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)

語(yǔ)料庫(kù)包

語(yǔ)料庫(kù)里放著所有的問(wèn)句和答句,如果要讓chatbot更加博學(xué)和聰明,就要不斷豐富你的語(yǔ)料庫(kù)。語(yǔ)料庫(kù)的答句風(fēng)格也就是chatbot的風(fēng)格,她可以是個(gè)溫柔的助理,也可以是個(gè)野蠻的匹夫,這些取決于你的語(yǔ)料內(nèi)容。

語(yǔ)料庫(kù)我把它分成兩個(gè)部分,用tag進(jìn)行標(biāo)注。一個(gè)是專(zhuān)用商務(wù)語(yǔ)料包,里面涵蓋了各類(lèi)客戶常見(jiàn)問(wèn)題和答案,這部分由我峨嵋你公司的商務(wù)人員負(fù)責(zé)提供和優(yōu)化,并且不斷豐富。一個(gè)是閑聊語(yǔ)料包,用于與客戶閑聊,應(yīng)對(duì)一些商務(wù)問(wèn)題之外的問(wèn)題,這個(gè)可以從網(wǎng)上搜,也可以通過(guò)商業(yè)渠道獲取。

最終,我們編輯了1000條商務(wù)語(yǔ)料,并從網(wǎng)上找了100萬(wàn)條閑聊語(yǔ)料。100萬(wàn)條多嗎,其實(shí)不多,全文搜索引擎幾個(gè)毫秒就可以索索一邊,不用擔(dān)心效率問(wèn)題。

最后的問(wèn)題,為什么不是ChatGPT

前面已經(jīng)說(shuō)過(guò)了,研發(fā)類(lèi)ChatGPT系統(tǒng),需要的是人才、投入和海量的語(yǔ)料/資料,以及大量的語(yǔ)料清洗校正工作,所以一般的企業(yè)炒炒概念也就算了,這個(gè)艱巨的任務(wù)還是留給我們的科技巨頭吧。

ChatGPT是美國(guó)人工智能研究實(shí)驗(yàn)室OpenAI新推出的一種人工智能技術(shù)驅(qū)動(dòng)的自然語(yǔ)言處理工具,是全球技術(shù)精英經(jīng)過(guò)多年技術(shù)積累,花費(fèi)數(shù)十億美刀研發(fā)出的東西,ChatGPT不單是聊天機(jī)器人,還能進(jìn)行撰寫(xiě)郵件、視頻腳本、文案、翻譯、代碼等任務(wù)。ChatGPT使用了Transformer神經(jīng)網(wǎng)絡(luò)架構(gòu),這是一種用于處理序列數(shù)據(jù)的模型,擁有語(yǔ)言理解和文本生成能力,尤其是它會(huì)通過(guò)連接大量的語(yǔ)料庫(kù)來(lái)訓(xùn)練模型,這些語(yǔ)料庫(kù)包含了真實(shí)世界中的對(duì)話,使得ChatGPT具備上知天文下知地理,還能根據(jù)聊天的上下文進(jìn)行互動(dòng)的能力,做到與真正人類(lèi)幾乎無(wú)異的聊天場(chǎng)景進(jìn)行交流。

ChatGPT受到關(guān)注的重要原因是引入新技術(shù)RLHF (Reinforcement Learning with Human Feedback,即基于人類(lèi)反饋的強(qiáng)化學(xué)習(xí))。RLHF 解決了生成模型的一個(gè)核心問(wèn)題,即如何讓人工智能模型的產(chǎn)出和人類(lèi)的常識(shí)、認(rèn)知、需求、價(jià)值觀保持一致。ChatGPT是AIGC(AI- Generated Content,人工智能生成內(nèi)容)技術(shù)進(jìn)展的成果。

拋開(kāi)算法、算力的技術(shù)壁壘和投入,我們單從語(yǔ)料說(shuō)起,ChatGPT使用的語(yǔ)料是數(shù)百億條,除了聊天語(yǔ)料,還有海量的新聞資訊、天文地理、音樂(lè)繪畫(huà)、財(cái)經(jīng)政治等等書(shū)籍資料,也包括我們中文的大部分歷史文集、詩(shī)詞歌賦等。

傳統(tǒng)的Chatbot不具備、或者具備有限的智能,主要任務(wù)還是搜索和回答,再進(jìn)一步就是關(guān)聯(lián)上下文環(huán)境的互動(dòng)聊天,以及可插入任務(wù)中間件的互動(dòng)聊天,譬如問(wèn)天氣、問(wèn)路況、問(wèn)航班、問(wèn)行情、電器設(shè)備控制、行業(yè)問(wèn)題答疑等等,都在傳統(tǒng)聊天機(jī)器人的范疇之內(nèi)。而ChatGPT,則是具有了學(xué)習(xí)、模仿、關(guān)聯(lián)、歸納總結(jié)、創(chuàng)造等能力。

好了,聊到這里也算結(jié)束了,我的Chatbot還有很多地方需要優(yōu)化提升,希望您給出寶貴意見(jiàn)哦,您現(xiàn)在可以給她聊幾句了:??http://v.ruiboyun.cn/chat/??

這個(gè)機(jī)器人腦路有限,多多包涵 ~:)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-419739.html

到了這里,關(guān)于我開(kāi)發(fā)了一個(gè)溫柔的智能客服聊天機(jī)器人ChatBot,并回答為什么不是ChatGPT(附思路和代碼)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 如何利用文本分析技術(shù)進(jìn)行智能客服機(jī)器人和智能推薦

    作者:禪與計(jì)算機(jī)程序設(shè)計(jì)藝術(shù) 隨著互聯(lián)網(wǎng)網(wǎng)站、社交媒體、購(gòu)物平臺(tái)等都在蓬勃發(fā)展,人們對(duì)電子商務(wù)、網(wǎng)絡(luò)服務(wù)的需求也越來(lái)越高,而目前市場(chǎng)上智能化客服機(jī)器人的應(yīng)用也日益增多。智能客服機(jī)器人和智能推薦系統(tǒng)通過(guò)巧妙地理解用戶的問(wèn)題并給出相應(yīng)的回答或者推薦

    2024年02月07日
    瀏覽(19)
  • 基于Python+百度語(yǔ)音的智能語(yǔ)音ChatGPT聊天機(jī)器人(機(jī)器學(xué)習(xí)+深度學(xué)習(xí)+語(yǔ)義識(shí)別)含全部工程源碼 適合個(gè)人二次開(kāi)發(fā)

    基于Python+百度語(yǔ)音的智能語(yǔ)音ChatGPT聊天機(jī)器人(機(jī)器學(xué)習(xí)+深度學(xué)習(xí)+語(yǔ)義識(shí)別)含全部工程源碼 適合個(gè)人二次開(kāi)發(fā)

    本項(xiàng)目基于機(jī)器學(xué)習(xí)和語(yǔ)義識(shí)別技術(shù),讓機(jī)器人理解文本并進(jìn)行合適的答復(fù)?;锇閭兛梢酝ㄟ^(guò)該工程源碼,進(jìn)行個(gè)人二次開(kāi)發(fā),比如使用語(yǔ)音與機(jī)器人交流,實(shí)現(xiàn)智能問(wèn)答、智能音箱及智能機(jī)器寵物等等。 當(dāng)然針對(duì)現(xiàn)在最火爆的 ChatGPT等通用大語(yǔ)言模型 ,伙伴們可以直接將其

    2024年02月07日
    瀏覽(29)
  • AI智能客服機(jī)器人是什么?對(duì)企業(yè)重要嗎?

    AI智能客服機(jī)器人是什么?對(duì)企業(yè)重要嗎?

    在數(shù)字化時(shí)代,客戶服務(wù)是企業(yè)與客戶建立牢不可破關(guān)系的重要橋梁。AI智能客服機(jī)器人,顧名思義,就是利用人工智能技術(shù)提升客戶服務(wù)體驗(yàn)的自動(dòng)化工具。今天,就讓我們來(lái)揭開(kāi)AI智能客服機(jī)器人的神秘面紗,并討論它對(duì)企業(yè)的重要性。 AI智能客服機(jī)器人是什么? 簡(jiǎn)單來(lái)

    2024年04月10日
    瀏覽(23)
  • AI智能語(yǔ)音客服機(jī)器人系統(tǒng)/方案/案列/技術(shù)/項(xiàng)目

    在工作中總是無(wú)法避免做一些重復(fù)的事,不同的人對(duì)待重復(fù)的工作做法也是不一樣,總有一部分人想辦法來(lái)提高效優(yōu)化流程。當(dāng)然,也有一部分人會(huì)選擇按部就班。如果拘泥于原本的工作方式,沒(méi)有創(chuàng)新的重復(fù),只是在做無(wú)用功而已。不過(guò),現(xiàn)在有了一種可以解決重復(fù)性工作

    2024年02月08日
    瀏覽(29)
  • 基于自然語(yǔ)言處理技術(shù)的智能客服與機(jī)器人

    作者:禪與計(jì)算機(jī)程序設(shè)計(jì)藝術(shù) 46.《基于自然語(yǔ)言處理技術(shù)的智能客服與機(jī)器人》 引言 隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,智能客服和機(jī)器人已經(jīng)成為現(xiàn)代企業(yè)重要的運(yùn)營(yíng)手段之一。智能客服以自然語(yǔ)言處理技術(shù)為基礎(chǔ),能夠?qū)崿F(xiàn)高效、人性化的對(duì)話交互,有效提升客戶滿意度;

    2024年02月13日
    瀏覽(26)
  • 智能客服機(jī)器人:基于知識(shí)圖譜的多輪對(duì)話系統(tǒng)

    智能客服機(jī)器人:基于知識(shí)圖譜的多輪對(duì)話系統(tǒng)

    ━━ ━━ 近年來(lái), 隨著人工智能的快速發(fā)展,人機(jī)交互能力不斷增強(qiáng),其中問(wèn)答技術(shù)能夠在保證一定準(zhǔn)確度的情況下極大地簡(jiǎn)化用戶的搜索操作,在節(jié)約時(shí)間的同時(shí),還能夠加深用戶對(duì)搜索事物的了解程度,百度公司的小度、蘋(píng)果公司的Siri等正是基于問(wèn)答技術(shù)形成的產(chǎn)品。

    2024年02月15日
    瀏覽(23)
  • AI智能客服機(jī)器人在醫(yī)療健康行業(yè)中的應(yīng)用

    AI智能客服機(jī)器人在醫(yī)療健康行業(yè)中的應(yīng)用

    隨著科技的飛速發(fā)展,AI智能客服機(jī)器人已經(jīng)逐漸滲透到我們生活的各個(gè)領(lǐng)域,而在醫(yī)療健康行業(yè)中,它的應(yīng)用更是為人們帶來(lái)了很多便利。那么,AI智能客服機(jī)器人在醫(yī)療健康行業(yè)中的應(yīng)用是怎么樣的呢?今天,我們就來(lái)一起探討這個(gè)話題,并看看有哪些AI智能客服機(jī)器人可

    2024年04月16日
    瀏覽(29)
  • 智能聊天機(jī)器人的實(shí)現(xiàn)

    ChatGPT近期以強(qiáng)大的對(duì)話和信息整合能力風(fēng)靡全網(wǎng),可以寫(xiě)代碼、改論文、講故事,幾乎無(wú)所不能,這讓人不禁有個(gè)大膽的想法,能否用他的對(duì)話模型打造一個(gè)智能機(jī)器人,可以在與好友對(duì)話中給出意想不到的回應(yīng),而且再也不用擔(dān)心女朋友影響我們 打游戲 工作了。 本項(xiàng)目是

    2024年02月15日
    瀏覽(17)
  • 用人工智能提升客戶滿意度:智能客服機(jī)器人的應(yīng)用領(lǐng)域與案例

    作者:禪與計(jì)算機(jī)程序設(shè)計(jì)藝術(shù) 引言 1.1. 背景介紹 隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,客戶滿意度逐漸成為企業(yè)競(jìng)爭(zhēng)的核心指標(biāo)之一。為了提升客戶滿意度,許多企業(yè)開(kāi)始利用人工智能技術(shù),尤其是智能客服機(jī)器人,來(lái)提升客戶體驗(yàn)。智能客服機(jī)器人可以通過(guò)語(yǔ)音識(shí)別、自然語(yǔ)言

    2024年02月06日
    瀏覽(23)
  • 制作一個(gè)Python聊天機(jī)器人

    我們學(xué)習(xí)一下如何使用 ChatterBot 庫(kù)在 Python 中創(chuàng)建聊天機(jī)器人,該庫(kù)實(shí)現(xiàn)了各種機(jī)器學(xué)習(xí)算法來(lái)生成響應(yīng)對(duì)話,還是挺不錯(cuò)的 聊天機(jī)器人也稱為聊天機(jī)器人、機(jī)器人、人工代理等,基本上是由人工智能驅(qū)動(dòng)的軟件程序,其目的是通過(guò)文本或語(yǔ)音與用戶進(jìn)行對(duì)話。 我們?nèi)粘=佑|

    2024年01月19日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包