999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于微信公眾平臺的招生咨詢智能聊天機器人

2018-07-13 01:40:22蓉,陳
軟件 2018年6期
關鍵詞:微信用戶

劉 蓉,陳 波

(南京師范大學計算機科學與技術學院,江蘇 南京 210023)

0 引言

咨詢服務是高校招生工作中的重要環節之一,其一方面為考生提供各種報考所需要的信息,另一方面也是高校展示自身辦學實力的重要平臺。根據中國研究生招生信息網的統計,2018年全國碩士研究生招生考試中,報考人數再創新高,達到238萬人[1]。越來越多的人選擇讀研深造,隨之而來的招生宣傳工作給各高校帶來了難題:如何充分地開展招生宣傳工作并且及時回復考生對報考、筆試、復試和錄取工作等方面的問題。

傳統的招生咨詢方式大致可分為三種:一是考生在目標學校的官方網站上尋找學校所公布的一些文件和介紹;二是直接打電話咨詢;第三種方式則是由考生通過在社交網站發帖或向親朋好友詢問等途徑獲得所需要的信息。前兩種方式的信息可信度較高,但官方網站公布的文件可能并不能完全解決考生的困惑。而直接向招生辦老師咨詢時,大部分考生詢問的問題大多相似,如招生專業、參考書籍或歷年錄取分數線等,考生與老師的一對一交流,在人力、物力、財力方面的耗費都很大[2];對于第三種方式,由于信息的獲取是來自于網絡上的陌生人,或考生的私人朋友,并非是高校的工作人員,信息來源不可信,信息價值不高。

隨著計算機技術的快速發展,人們越來越習慣于從網上獲取自己所需要的信息,深度學習和人工智能的發展更是推動了自然語言處理技術的進一步提高。招生咨詢智能聊天機器人在此背景下應運而生。該機器人構建的模式是將考生經常詢問或老師經常遇到的問題植入到語料庫中,使得考生能夠直接與機器人對話,并快速獲取其想要咨詢的問題答案。這種方法不但節省了考生查找報考信息的時間和精力,同時也將招生辦老師從單調的答疑工作中解放。由于語料庫中的招生信息都來自于高校招生辦,信息的可信度不言而喻。

本文首先介紹聊天機器人的相關概念和關鍵技術,然后分析招生咨詢機器人的發展現狀與不足,并提出一種基于微信公眾平臺的招生咨詢智能聊天機器人的方案設計,最后詳細介紹各個功能模塊的技術實現。

1 相關工作及本文思路

1.1 聊天機器人研究現狀

聊天機器人是一種使用自然語言與人類進行對話的軟件機器人,又被稱為對話系統[3]。當前學術界對于聊天機器人的研究主要產生了兩種模型:基于檢索的模型(檢索模型)和基于生成的模型(生成模型)。檢索模型主要依賴于知識庫、檢索技術和排序特征的提取,而生成模型則依賴大量的訓練數據,能夠表示出自然語言的語義特征[4]。由IBM開發的DeepQA系統采用了海量并行和基于證據的概率模型架構,整個系統體現了高級自然語言處理、信息檢索、知識表示、自動推理和機器學習等開放式問答技術[5]。

聊天機器人作為一種對話問答系統,集成了多年來自然語言處理(Natural Language Processing)

研究與應用的各種成果,包括詞法分析、詞性標注、淺層或深層句法分析、命名實體識別、指代消解、詞義消解、文本檢索、信息抽取(包括關系抽取)、機器學習、本體知識獲取、知識挖掘、知識表示、邏輯推理等。由于中文不似英文有空格之類的詞語分隔符,句子是由連續的詞語組成,必須先進行中文分詞才能進一步處理。此外,中文中沒有疑問詞的區分,不能像英文那樣根據疑問詞確定問題類型。這些都導致了自然語言處理在國內的研究和應用落后于國外,也使得聊天機器人的研究進展較慢。

1.2 招生咨詢機器人研究現狀

隨著自然語言處理技術的深入發展與研究,人們逐漸將自動問答機器人技術應用于多個行業,招生問答領域的自動問答機器人應運而生。目前國內的招生問答機器人研究較少,并且多以ALICE作為基本模型。ALICE(Artificial Linguistic Internet Computer Entity)是由美國賓夕法尼亞州Lehigh大學的Richard S.Wallace博士開發的一個基于經驗的人工智能聊天機器人,其最初版本支持英語、德語、法語等語言,卻不支持中文。

馮德虎等人[6]在全面分析基于GPL的開源產品ALICE源碼的基礎上,引入并修改現有中文分詞技術,使其能夠對專業領域內的中文詞語進行準確分詞。最終采用Java EE的SSH2框架開發了一套基于B/S的招生咨詢機器人WEB系統,但這一系統中機器人的知識庫是由AIML(Artificial Intelligence Markup Language)語言構建的,在用戶的易用性與 AIML標簽的復雜性之間存在一定的矛盾;其次,智能聊天機器人的管理用戶很難理解系統的運行原理,對語義不同的問句設置了相同的關鍵詞,導致機器人不能做出準確的回答;第三,這一系統尚未涉及語義分析、同義句歸并等,對中文自然語言的處理不夠成熟。周建設等人[7]對開源機器人ALICE進行了改進,實現自動回答考生的問題,但其用AIML語言構建知識庫給普通管理用戶帶來一定難度。

近年來,國內智能聊天機器人技術也取得了一定進展,基于Deep QA技術的圖靈機器人號稱是中文語境下最智能的大腦,在中文自然語言處理方面具有強大的優勢。此外,圖靈機器人的知識庫可以由用戶手動輸入,或者通過 Excel文件批量導入,與ALICE相比具有易操作、零門檻的特點。吳志霞等人[8]利用圖靈機器人平臺,開發了基于 Android的招生咨詢平臺。然而,這種咨詢系統尚未接入語音系統,并且需要用戶下載額外的APP,從用戶便利性角度來看不夠友好,有待進一步改進。

1.3 本文思路

本文將圖靈機器人接入微信公眾平臺,使用微信公眾平臺客戶端作為用戶界面,實現消息的接收與推送;公眾號服務器由第三方服務器組成,當接收到用戶發送過來的消息后,對用戶消息進行解析并根據消息內容將消息傳送到圖靈機器人平臺或目標網站處理后反饋給用戶;圖靈機器人平臺將公眾號服務器推送過來的信息進行解析,并查詢知識庫,將匹配的內容反饋給用戶。其中,知識庫中數據的來源有二:一是通過爬蟲的方式從高校的招生網站抓取相關信息;二是由負責招生的老師手動添加信息。知識庫中的數據都可以手動修改。具體技術流程如圖1所示。

當前,微信用戶已達 10億[9]。微信公眾平臺(https://mp.weixin.qq.com/),簡稱公眾號,通過公眾號,服務提供者與用戶可以實現與特定群體的文字、圖片、語音、視頻的全方位溝通、互動。相較于Android和iOS APP應用,微信公眾平臺可以跨越手機型號和操作系統的限制,實現各種服務和功能的展現,從而推動信息的傳播和服務的應用[10]。除了簡單的編輯模式外,目前微信公眾平臺還支持開發者模式:開發者可以調用各種網絡 API,對接數據庫,開發出更多編輯模式不包含的高級功能[11]。

基于微信訂閱號的功能,使用開發者模式創建聊天機器人,不但能夠服務于更多的用戶,同時在與眾多用戶對話的過程中,機器人的學習能力不斷增強,自身積累的語言素材不斷擴大,在與用戶進行下一次對話時,其語言表達能力將得到進一步的提升,回答的內容更加智能。

2 開發環境搭建

2.1 微信公眾平臺的開發者模式通訊機制

微信公眾平臺消息接口為開發者提供了與用戶進行消息交互的能力。當用戶向公眾號發送消息時,實際上這條消息首先發送到微信后臺,由微信后臺向我們的公眾號服務器發起另一個請求。當我們在公眾號服務器上處理后,再返回這個請求的結果,最后由微信后臺將請求結果轉發到微信客戶端,供用戶查看。用戶、微信后臺和我們所需要開發的公眾號后臺的服務器三者之間的交互關系如圖1所示。

圖 1中的微信后臺即為騰訊公司的微信服務器,它負責接收用戶從微信客戶端向公眾賬號發送的消息,并按照相應的對接規范對用戶的消息進行解析和轉發;公眾號服務器接收到微信后臺轉發過來的消息后,解析消息格式,得到用戶的消息內容。根據具體的消息內容,在公眾號服務器端調用聊天機器人模塊,對用戶的消息做出應答,然后封裝消息處理結果,返回給微信后臺;微信后臺將公眾號服務器發來的消息轉發給用戶的微信手機客戶端,用戶就可以在客戶端看到機器人的消息回復內容。

2.2 開啟開發者模式

為了在微信公眾平臺實現聊天機器人功能,首先要注冊一個微信公眾號。微信提供了服務號、訂閱號、企業號和測試號給用戶使用,本文在此選擇注冊個人訂閱號。賬號注冊成功后,在公眾平臺的開發者中心開啟開發者模式。當開啟開發者模式后,編輯模式的功能將失效,所有的功能必須由開發者在公眾號服務器實現[12]。服務器配置過程中,需要填寫URL(服務器地址)和Token(令牌),驗證開發者是否擁有自己的服務器資源。此處填寫的URL即為代碼部署在公眾號服務器上的路徑。Token是微信公眾平臺的身份標識[13-14],開發者可以任意填寫,以作為身份簽名,但必須與代碼中的Token值一致。當用戶向公眾賬號發送信息后,微信后臺將向公眾號服務器發送GET請求,該請求中包含四個參數(signature、timestamp、nonce 和 echostr),開發者通過對signature的校驗,判斷此消息的真實性。若確認 GET請求來自微信服務器,將返回 echostr參數內容,表明接入生效,可進行下一步處理;否則接入失敗[15]。

2.3 事件響應和消息處理

微信公眾平臺在處理消息時,需要先判斷事件類型,如用戶關注或取消訂閱號、發送消息、掃描二維碼等,這些都會由微信服務器發送到所填寫的URL,因此在公眾號服務器模塊中必須對不同類型的事件做出不同的響應。當用戶向微信公眾訂閱號發送消息時,微信服務器會將消息轉換為特定的XML結構,并將XML結構的信息POST到公眾號服務器上,然后在公眾號服務器上處理信息,再返回給微信后臺服務器。用戶發送的消息類型主要包括文本消息、圖片消息、語音消息、鏈接消息和視頻消息等。對于每一個消息,公眾號服務器在處理之前,必須先判斷消息類別,提取出消息內容后交給聊天機器人模塊進行處理,在發送響應包時返回特定的XML結構。

圖1 技術流程圖Fig.1 Technical process

2.4 公眾號服務器接入

微信公眾平臺上服務器配置中需要填寫代碼部署位置的URL,以實現公眾號服務器的接入。本文使用新浪云的云應用(SAE)作為微信公眾號服務器。SAE支持通過Git、SVN和本地上傳三種方式部署代碼,并提供日志中心方便查看代碼的運行情況,從而在代碼出錯時及時找到錯誤原因。

2.5 系統開發環境

(1)硬件環境

服務器端:Inter? Core? i5 CPU 3.20GHz,Windows 10專業版64位,4G內存,500GB硬盤

客戶端:裝有微信6.6以上版本的智能手機

(2)軟件環境

服務器端:裝有IIS的Windows操作系統;新浪云SAE;python2.7;pycharm3.6

客戶端:裝有微信6.6以上版本

(3)開發語言

python 2.7

3 服務系統功能設計與實現

3.1 系統功能設計

基于微信公眾平臺開發的聊天機器人主要由招生咨詢、生活服務和其他服務三個功能模塊組成,具體功能如下。

(1)招生咨詢:本文開發的聊天機器人以南京師范大學研究生院招生官網為數據來源,能夠回答考生最關心的一些招生問題,節省有意報考的考生自己查找信息的時間和精力。

(2)生活服務:目前支持天氣查詢、快遞查詢和火車票查詢等功能,為用戶提供當天的天氣預報和快遞的物流信息,在火車票查詢功能中支持直接跳轉至去哪兒網訂票。

(3)其他服務:聊天機器人還提供一些其他功能,如為用戶提供當天的頭條新聞、識別圖片中人物的性別和年齡、與用戶進行日常聊天等,是用戶休閑娛樂的助手。

3.2 功能實現

3.2.1服務器配置和Token認證

微信公眾平臺的個人訂閱號申請成功后,首先在新浪云SAE平臺創建一個空應用,開發語言選擇Python2.7。這里選擇使用 web.py來進行服務器搭建,如果本地沒有web.py庫的話,可以通過pip命令進行安裝。之后需要新建一個項目,并編輯如下三個文件。

(1)config.yaml

name: chatter

version: 1

libraries:

- name: webpy

version: "0.36"

- name: lxml

version: "2.3.4"

...

config.yaml文件中填寫項目開發中用到庫名稱和版本號,必須與實際開發時使用以及SAE平臺支持的版本保持一致。

(2)index.wsgi

# coding: UTF-8

import os

import sae

import web

from wechatInterface import WechatInterface

urls = (

'/wechat','WechatInterface'

)

app_root = os.path.dirname(__file__)

templates_root = os.path.join(app_root, 'templates')

render = web.template.render(templates_root)

app = web.application(urls, globals()).wsgifunc()

application = sae.create_wsgi_app(app)

index.wsgi是web.py的基礎配置文件之一,將URL結構和模板告知web.py,方便服務器處理用戶的請求。

(3)wechatInterface.py

# -*- coding: utf-8 -*-

import hashlib

import web

import lxml

import time

import os

class WechatInterface:

def __init__(self):

self.app_root = os.path.dirname(__file__)

self.templates_root = os.path.join(self.

app_root, 'templates')

self.render =

web.template.render(self.templates_root)

def GET(self):

data = web.input()

signature=data.signature

timestamp=data.timestamp

nonce=data.nonce

echostr = data.echostr

token="lenona" #這里改寫微信公眾

平臺里輸入的token

list=[token,timestamp,nonce]

list.sort()

sha1=hashlib.sha1()

map(sha1.update,list)

hashcode=sha1.hexdigest()

if hashcode == signature:

return echostr

wechatInterface.py文件用于實現微信公眾平臺功能,需要將代碼中的 token修改為在微信公眾平臺的開發者配置中填寫的 Token,從而實現微信平臺的認證。在平臺認證的過程中,只需要使用GET方法,但在之后發送消息時則需要使用POST方法。

將上述三個文件部署到SAE平臺后,將生成本項目的URL。打開微信公眾平臺的開發者配置頁面,填寫剛才獲得的 URL,EncodingAESKey選擇隨機生成,然后提交認證即可。

3.2.2消息回復機制

根據微信公眾號開發文檔可知,用戶與公眾號之間的消息交互類型分為文本、圖片、語音、視頻、小視頻、地理位置和鏈接等,本文中主要用到文本、圖片和語音三種消息類型。當用戶向公眾號發送消息時,其消息內容將以 XML的形式傳送至搭建好的服務器中。在處理用戶消息時,需要先解析XML信息,獲取出需要的信息內容,然后再對用戶的信息進行回復。不同消息類型的 XML結構中都包括ToUserName、FromUserName、CreateTime、MsgType和MsgId五個字段,但文本XML中還包括Content字段,圖片XML中含有PicUrl和MediaId字段,語音XML中則還有Format和Recognition字段。因此在處理用戶消息時,必須先獲取消息類型(MsgType),然后再按照相應的規范得到消息內容。消息處理的部分代碼如下:

defPOST(self):

msgType=xml.find(“MsgType”).text

ifmsgType==’text’:

content=xml.find(“Content”).text

elifmsgType==’image’:

img=xml.find(“PicUrl”).text

elifmsgType==’voice’:

voice= xml.find(“Recognition”).text

else:

pass除了文本類 XML可以直接得到消息內容外,圖片類XML中PicUrl字段提供的是圖片的地址,而對于語音類消息,微信會在XML數據包中增加一個Recongnition字段,當開啟語音識別功能后,可以直接從Recongnition中獲取用戶消息的文本內容。

獲取到用戶發送的消息后,需要考慮如何給用戶發消息,此時需要定義一個消息模板,同樣以XML結構回復消息,并在相應的功能最后設置返回值即可。

消息模板定義如下:

$def with (toUser, fromUser, createTime, content):

4 聊天機器人設計與實現

4.1 招生咨詢模塊

4.1.1創建招生問答語料庫

由于招生報考的最可靠資料來源于高校的招生網站,本文以南京師范大學研究生招生網站為例,將該網站上招生問答模塊的內容爬取下來,作為招生問答語料庫的來源之一。此外,關于學校和專業的介紹,以及歷年錄取情況等,也是考生密切關注的信息,因此將這些信息囊括在問答語料庫中。

招生問答語料庫的主要數據來源于高校招生網站的咨詢和問答模塊,在對網站信息進行爬取之前,需要先分析網頁請求,確定相應的網頁請求參數[16]。利用 Fiddler抓包后發現,目標請求網頁的 url為http://yz.njnu.edu.cn/homepage_display.jsp?wid=ABF 05B06504A2565E04077CAA4682CCE&wid2=E58A3 159A2941CC4E04077CAA46871F4。同時,由于網站設置了反爬蟲機制,會檢查網頁請求的來源,因此在模擬請求時必須設置 user-agent、refer和 host等參數,當返回的狀態碼為200時,表明網頁請求成功,可進行下一步解析操作。

BeautifulSoup是Python的一個庫,其最主要的功能是從網頁爬取需要的數據。BeautifulSoup能夠將html形式的網頁源碼解析為對象進行處理,全部頁面轉變為字典或者數組。相對于正則表達式的方式,這種解析方式可以大大簡化處理過程。在網頁請求成功后,利用BeautifulSoup解析網頁源碼,解析后的網頁源碼如圖2所示。通過觀察發現,所有的問答內容都是用

標簽包含。在進行問答內容提取的時候,只需要對

標簽內的數據進行處理。此處可以使用正則表達式進行匹配,也可以直接調用BeautifulSoup封裝的函數。圖3是爬取到的部分招生咨詢的問答內容,分為問題和相應的答案。

通過查詢圖靈機器人的開發者文檔可知,開發者在創建自己的語料庫時,可以使用手動逐條添加或者批量導入的方式添加語料,并支持開發者手動修改問題和答案。此外,對于同一個答案,開發者可以添加相似問法,從而使圖靈機器人能夠更加準確地理解用戶詢問意圖,給出滿意的答案。為了進一步提高圖靈機器人的回答準確率,開發者可以修改問答匹配度。由于需要添加的語料數據較多,此處選擇使用批量導入的方式創建語料庫。圖靈機器人官網提供了語料庫模板,需要導入的數據都必須先按照模板將數據處理成所需要的形式。所有數據保存在excel文件中,每一行的第一列為問題,文本長度不超過64個字符;第二列為答案,文本長度不超過600個字符。同時,為了提高機器人回答的準確率,可以從第三列起添加相似問法。處理后的數據如圖4所示。

圖2 使用BeautifulSoup解析網頁Fig.2 Use BeautifulSoup to parse web pages

圖3 爬取到的部分招生問答內容Fig.3 Part of the crawled recruiting questions and answers

圖4 處理后的問答數據Fig.4 Question and answer data after dealing

我們認為,問答語料庫中除了包含上述招生網站公布的信息之外,還應該咨詢招生辦的老師,請他們根據多年的工作經驗繼續添加考生經常咨詢的問題,從而進一步完善招生問答語料庫,使考生能夠得到更加全面的招考信息。這種方式得到的數據量較小,可以直接采用手動逐條添加問題和答案的方式,在此不再贅述。

4.1.2招生問答功能實現

為了調用圖靈機器人 API,必須先在圖靈機器人官網注冊一個賬號。注冊并成功登錄后,開發者可以對所創建的機器人設置相關屬性,如姓名、性別、年齡等,同時開發者將得到一個 API Key。圖靈機器人提供多種接入方式,如微信公眾平臺接入、API接入、SDK接入等。由于微信公眾平臺接入是直接接入圖靈機器人提供的鏈接,而不是之前搭建的服務器,對公眾號來說將有許多定制功能方面的限制,因此本文選擇API接入。

根據圖靈機器人提供的接入API和API Key,使用如下方式接入圖靈機器人。

url = 'http://www.tuling123.com/openapi/api'

da = {"key": "9868d1a5d1e342a394921687-0fc894e1", "info": content, "userid": userid}

data = json.dumps(da)

r = s.post(url, data=data)

同時需要修改wechatInterface.py文件,將得到的用戶消息內容傳送給圖靈機器人。

content = xml.find("Content").text

try:

msg = talk_tuling.talk(content, userid)

return self.render.reply_text(fromUser,

toUser, int(time.time()), msg)

except:

eturn self.render.reply_text(fromUser,

toUser, int(time.time()), '換個話題吧')

根據用戶詢問的問題,圖靈機器人將在語料庫中進行匹配,當匹配達到所設定的問答匹配度時,它將把答案返回給用戶,完成一次問答過程。若語料庫中無法找到滿足問答匹配度的答案,開發者可以自己設定圖靈機器人的默認回答。

4.2 生活服務

(1)天氣查詢

圖靈機器人API提供天氣查詢功能,當用戶發送天氣查詢指令時,圖靈機器人將自動返回相應的天氣情況。但是,用戶發送天氣指令時,必須包含要查詢的地點和“天氣”關鍵詞,否則機器人可能無法正確理解用戶的意圖。

(2)快遞查詢

本系統從考生查收錄取快遞函件等日常需要出發,提供了快遞查詢功能。用戶在向聊天機器人發送消息時,需要包含“快遞”關鍵字和相應的快遞編號。服務器接收到這一消息后,先根據關鍵字“快遞”判斷出這是一條查詢快遞的指令,然后將得到的快遞編號作為請求參數,調用快遞100的查快遞接口,向“快遞100”網站發送查詢請求。當服務器獲取到該快遞的物流信息后,再通過微信服務器,將具體的物流信息傳遞到用戶的微信客戶端,供用戶查看。

(3)火車票查詢

考慮到考生的出行,本系統提供火車票查詢功能。在聊天界面中,用戶只需要發送帶有“火車票”關鍵字的消息即可使用車票查詢功能。當聊天機器人接收到這一消息后,將主動詢問用戶希望的出行日期。與日常對話一樣,用戶回復日期后,機器人將自動調用去哪兒網的網站接口,為用戶查詢相應日期的火車班次。需要注意的是,每一次消息的發送都視為一次單獨的機器人調用,很可能出現機器人消息回復的上下文不匹配。比如,當用戶回復目的地為“南京”時,機器人回復的是對南京的介紹,而并非是用戶所需要的車次列表。因此,在使用圖靈機器人API時,還要傳入用戶的userid,從而保持上下文對話的語境一致。關于userid的獲取,通過查詢微信公眾平臺開發文檔,發現之前使用的 FromUserName字段即可作為userid。由于userid只支持0-9和字母,而 FromUserName中帶有下劃線,所以在使用之前必須做一些簡單的處理。例如取 FromUserName的前16位作為userid。具體操作如下:

fromUser=xml.find(“FromUserName”).text userid=fromUser[0:15]

4.3 其他服務

(1)新聞服務

圖靈機器人在接收到用戶發送的信息后,會根據消息中的關鍵字,自動將消息分為不同類別,如文本類、鏈接類、新聞類等。因此,當用戶發送帶有“新聞”關鍵字的時候,圖靈機器人將此請求判定為新聞類消息,除了返回當前的頭條新聞標題外,還會把相應新聞的鏈接一起發送給用戶,供用戶詳細閱讀相關內容。

(2)識圖功能

本文開發的智能聊天機器人還增加了識圖功能。當用戶向公眾號發送帶有人臉的圖片時,聊天機器人能夠使用圖像處理算法,識別出圖片中人物的年齡和性別。微軟小冰是微軟人工智能三條全球產品線之一,它是基于微軟于2014年提出建立的情感計算框架,通過算法、云計算和大數據的綜合運用,采用代際升級的方式,逐步形成向 EQ方向發展的完整人工智能體系。雖然目前并沒有公布可以直接調用的 API,但可以通過抓包分析的方式,向目的網址發送請求。

打開Fiddler并登錄http://how-old.net/,任意上傳一張圖片后,瀏覽器先發送一個GET請求,將本地上傳的圖片上傳至微軟服務器;之后瀏覽器繼續發送 POST請求,目的 url為 https://how-old.net/Home/Analyze?isTest=False&source=&version=howold.net,同時將 GET請求中得到的圖片地址作為POST請求的參數一起發送。請求成功后,服務器返回一系列 JSON格式的數據,其中包括圖片中人物的gender(性別)和age(年齡)。考慮到當用戶向公眾號發送圖片時,已經得到了圖片文件的地址,因此在編寫代碼時可以直接用 GET請求獲取圖片內容,再將圖片內容作為參數向目的網址發送POST請求。微軟服務器會校驗Cookie,所以先用requests包構建一個 session,requests.session會自動處理Cookie,保持會話,然后再發送各種請求。

(3)日常聊天

作為中文語境下智能度最高的機器人大腦,圖靈機器人除了能提供各種功能性服務外,它還能與人類交談,完成日常對話。與傳統的機器人只能回答生硬單調的文字不同,圖靈機器人的回答更加幽默和口語化,且能與時代潮流趨勢保持一致。圖靈機器人在創建時已經設定了姓名、年齡、性別等信息,甚至連星座、父母親姓名都有設置,這就意味著它具有一些人類才有的身份特征,明顯區別于傳統的聊天機器人。而這些設定的身份屬性,在聊天過程中能夠得以體現。例如用戶可以詢問它的姓名等,聊天對話的友好性進一步提升,更加符合真實人類對話的情景。擁有一套完整自學習體系的圖靈機器人,能夠在與用戶的交流中不斷學習新的知識,回答的內容更加智能。

5 聊天機器人使用實例

當用戶關注公眾號之后,進入公眾號,即可使用聊天機器人提供的各種服務。圖5是招生咨詢界面,用戶直接在后臺輸入自己想要咨詢的問題,機器人會根據語料庫中的內容回答用戶。生活服務方面,用戶可以直接發送帶有關鍵字的指令,機器人收到消息后將根據關鍵字判斷該消息的類型,并進行回復。如圖6所示,用戶可以向聊天機器人詢問天氣情況以及查詢快遞的物流狀態。

此外,該聊天機器人還提供火車票查詢、熱點新聞查詢功能,只要用戶發送消息時包含“火車票”和出發與目的地點、“新聞”等關鍵字即可,操作界面分別如圖7、圖8所示。圖8中還演示了識圖功能。當用戶向公眾號發送圖片時,聊天機器人能夠識別出圖中人物的性別和年齡。

圖5 招生咨詢功能Fig.5 Recruiting and consulting function

圖6 天氣查詢和快遞查詢功能Fig.6 Weather and express consulting function

如圖9所示,本文開發的聊天機器人可以與用戶進行日常聊天,并且回復內容貼近正常人類的語氣,具有一定的智能性。

圖7 火車票查詢功能Fig.7 Train ticket consulting function

圖8 識圖功能Fig.8 Picture recognition function

6 結論

本文設計實現的基于微信公眾平臺的聊天機器人能夠為用戶在招生咨詢和日常生活中帶來極大的方便。首先基于微信平臺,用戶不需要再去下載額外的APP占用手機資源;其次,通過微信聊天咨詢,考生能夠及時從公眾號中得到準確的招考信息,既節約了考生的時間和精力,也提高了高校的宣傳效率和結果;此外,用戶能夠從公眾號中直接得到天氣、新聞、快遞和火車票等信息,給日常生活帶來極大的便利;最后,聊天機器人能夠與用戶進行對話,是用戶休閑娛樂的好幫手。

圖9 日常聊天功能Fig.9 Daily chatting function

猜你喜歡
微信用戶
微信
微信
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
微信
微信
微信
微信
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
主站蜘蛛池模板: 国产不卡在线看| 精品国产福利在线| 亚洲成a∧人片在线观看无码| 中文成人在线视频| 国产自视频| 国产a v无码专区亚洲av| 国产av无码日韩av无码网站| 欧美激情一区二区三区成人| 人妻熟妇日韩AV在线播放| www.91中文字幕| 国产精品久久久久久久久| 欧美不卡二区| 免费 国产 无码久久久| 极品性荡少妇一区二区色欲| 国产亚洲欧美日韩在线观看一区二区| 国产精品妖精视频| a毛片基地免费大全| 亚洲精品亚洲人成在线| 欧洲精品视频在线观看| 天天躁狠狠躁| 黄色一及毛片| 狠狠色综合网| 又黄又湿又爽的视频| 欧美不卡视频在线观看| 久久国产精品电影| 亚洲精品另类| 国产久操视频| 99热最新在线| 日韩av资源在线| 狠狠v日韩v欧美v| 亚洲天堂免费| 欧美日韩v| 亚洲精品大秀视频| 成人免费网站久久久| 制服无码网站| 99国产精品一区二区| 色综合色国产热无码一| 无码一区中文字幕| 先锋资源久久| 婷五月综合| 国产成年女人特黄特色毛片免| 992Tv视频国产精品| 久久永久视频| 全部毛片免费看| 国产三级成人| 日本亚洲国产一区二区三区| 香蕉视频在线精品| 丁香婷婷激情综合激情| 国产一级做美女做受视频| av午夜福利一片免费看| 午夜国产大片免费观看| 国产色图在线观看| 青青青视频91在线 | 精品视频一区二区观看| 国产欧美日韩视频怡春院| 最新亚洲av女人的天堂| 国产高潮流白浆视频| Jizz国产色系免费| 国产精品播放| 精品无码国产自产野外拍在线| 99热免费在线| 国产凹凸视频在线观看| 亚洲人成网站色7799在线播放 | 亚洲IV视频免费在线光看| 伊人久综合| 欧美日韩北条麻妃一区二区| 制服丝袜一区| 欧美色香蕉| 性视频久久| 久久影院一区二区h| 精品夜恋影院亚洲欧洲| 国模私拍一区二区三区| 高h视频在线| 欧美色综合网站| 午夜精品影院| 老司机精品一区在线视频| 中文字幕日韩丝袜一区| 日韩AV无码一区| 欧美精品一二三区| 久久久久无码精品国产免费| 国产精品永久免费嫩草研究院 | 亚洲欧美不卡|