文/李鮑 孫翌 郭晶
上海交通大學:開源應用于三項圖書館服務
文/李鮑 孫翌 郭晶
上海交通大學圖書館對網站系統提出基于開源軟件的學科博客、館員維基、IM智能機器人三項服務的實踐和應用,以展現開源軟件的優勢,為高校用戶提供深層次、專業化、個性化的服務,為圖書館服務帶來新的服務形式和理念。
隨著圖書館各項服務的推進,圖書館需要建立各類系統,以滿足服務需求,但是鑒于圖書館人力、資金、時間等限制,越來越多的圖書館開始利用開源軟件進行系統建設。開源軟件一般都具有開放性、靈活性和前瞻性的特點。它提供開放的系統架構,易于構建更多的新型業務,易于與國內外規范接軌,便于借鑒最新的研究成果。開源軟件的系統架構一般采用模塊化設計,從功能的角度出發劃分模塊,具有清晰統一的接口標準。不但利于多系統交互,也便于與其他圖書館實現資源共享。上海交通大學圖書館一直關注開源軟件的應用,并在多個方面有相關的應用,最具有代表性的是館員維基、學科博客以及IM智能機器人。通過開源軟件的應用,圖書館不但縮短了開發周期,還節約了開發人力與成本。
Wiki(維基)是一種多人協作的寫作工具。Wiki站點可以由多人(甚至任何訪問者)維護,每個人都可以發表意見或者對共同的主題進行擴展和探討。Wiki給館員提供一個交流與協同工作的平臺。基于館員維基平臺的建設需求調研,上海交通大學圖書館采用開源的互動維基(HDWiki)系統進行搭建,其架構見圖1。
任意館員都可以創建一個詞條,并發布該詞條,其他的館員可以根據詞條的分類在平臺上查看到被發布的信息,并可以針對詞條進行評論、提意見以及豐富該詞條內容等操作;系統會根據其他館員的修改對該詞條保存版本,每個版本都被保存,所以可以通過這個措施來實現版本控制,并進行數據對比。有了版本控制就可以實現多人協作,既可以保護內容不丟失,又可以讓所有人參與信息的修改和刪除。
根據應用的類型我們把館員維基分為三類。
圖書館信息交流
圖書館信息交流包括:圖情新訊、服務模式、日常通知告示等。Wiki改變了傳統做法造成的信息不及時、格式不一致、內容修改和消耗人力資源等缺點,從而提高工作效率和工作內容的重復。
會議課題議論
我校圖書館擁有很多分館,很多會議和課題的參與人員分散在各個分館,通過Wiki可以實現會議和課題參與人員的信息交互,打破地域和空間的障礙,給參與者提供一個開放的、具有分享精神的交流空間。
圖書館情報專業信息
建立發布圖書情報方面專業信息的維基平臺,為研究圖書館學、情報學及相關學科的研究者,圖書情報部門工作者及對此有興趣的人士提供聚合圖書館學情報學研究前沿知識庫。

圖1 館員維基系統架構
上海交通大學圖書館采用PJBlog搭建學科博客平臺。PJBlog是一套開源免費的中文個人博客系統程序,采用ASP+Access的技術,同時支持簡繁中文,UTF-8編碼。相對于其他系統,PJBlog 具有相當高的運作效能以及更新率,也支持目前Blog所使用的新技術。學科博客采用PJBlog平臺搭建,根據各個學科博客的具體需求進行二次開發改造。
實際應用中,圖書館把學科博客分為四類。
學科信息導航
以學科為單位,通過發表日志的形式發布該專業最新相關信息,并按照個人感悟、文件檢索心得、學科熱點、信息導航、學術動態等進行日志分類導航。學科信息導航是從某個領域的專業視角出發,找出相關學科的討論熱點、發展狀況,形成一種專業的、有深度的信息,供那些對這一領域信息有興趣的師生讀者瀏覽和使用。
讀者在線交流
通過平臺加強學科館員與讀者的聯系,聽取讀者的意見和建議。讀者可以借助博客按照自己的理解和方式表達個人心得、讀書經驗、信息需求以及對圖書館員的評價和建議。
讀者信息需求分析
博客既兼顧信息的嚴肅性,又增加與用戶的互動性,同時很方便地對咨詢記錄進行統計與整理,便于建立咨詢記錄庫以進行讀者信息需求的分析。
網絡信息推送服務
博客為不同類型的日志設計不同的RSS訂閱功能,利用博客的網絡信息組織與管理、知識積累與過濾功能,我們可以為讀者收集、組織、整理相關信息資源,然后通過推送的方式直接將其推送給用戶。通過博客的推送服務還能獲取讀者的反饋,不斷提高信息服務的針對性。

圖3 IM應答服務模型
系統運行架構
隨著IM越來越廣泛的應用,圖書館希望通過IM智能機器人提供咨詢服務,這樣可以有效利用非工作時間。但目前國內常用的IM工具(如騰訊QQ、MSN等)都沒有完全免費開放通訊接口,IM機器人的開發遇到不可逾越的障礙。IM開源平臺的出現給我們帶來了解決辦法。其中BotPlatform就是一個易用及穩定的開發平臺。上海交通大學圖書館利用BotPlatform平臺嘗試開發適合圖書館服務的各項智能化IM機器人咨詢服務,并在2009年初推出OPAC機器人服務,而后陸續設計與開發了百科機器人、圖書館導航機器人等。
基于該平臺開發IM智能機器人而無需構建機器人系統的優勢,機器人運行平臺全部由開源平臺提供,我們需要實現的只是業務邏輯部分,這部分服務運行在圖書館自建的服務器上,這樣我們就節約了開發成本。整個系統運行架構如圖2所示。
機器人賬號是通過BotPlatform平臺登錄到微軟的MSN服務器,所以IM機器人賬號運行的穩定性就可以由BotPlatform平臺保證,圖書館無需投入人力。我們只要在具體業務上投入開發力量,保證業務邏輯系統的穩定性即可。當IM機器人的用戶訪問量非常大時,我們可以將業務機器人部署在多臺機器上并行,BotPlatform可以保證負載平衡等集群問題。
圖書館IM機器人的個性化智能服務的核心程序由圖書館根據用戶需求自行開發,這也是整個服務系統的核心程序所在,該部分系統運行在圖書館端。對用戶而言,其享受的所有智能化IM機器人服務均是由圖書館定制設計所提供的。
我校圖書館為滿足用戶的需求,推出一系列IM機器人參考咨詢服務。該服務主要是利用IM機器人24小時在線的優勢,自主應答用戶的問題,其服務模型見圖3。
四大功能模塊
IM智能機器人的主要功能模塊如下:
1.機器人登錄
由于IM機器人是基于BotPlatform平臺進行二次開發,所以我們實際是登錄到BotPlatform平臺,再由BotPlatform平臺完成與微軟MSN服務器的信息通信。
2.命令解析
IM機器人的智能表現在通過解析用戶的消息獲得命令,并根據命令要求給出合理的響應。為了實現豐富的業務類型,我們就需要定義大量的命令來讓機器人區分用戶的要求,這就需要命令解析模塊從用戶的消息里面提取命令代碼并調用響應的命令處理函數。
3.知識庫自學模式
即使再博學的人也不可能回答所有問題,IM機器人也同樣面臨這個不可回避的問題,為了盡量少出現這種情況,我們賦予IM機器人學習功能——它可以學習任意用戶教給它的知識。這樣它就可以在這個問題下次被咨詢的時候給予準確的回答。
4.頁面跳轉
很多時候用戶會通過I M機器人詢問館藏等情況,由于MSN信息發送有長度和類型限制,所以包含大量信息的答復內容不能很好地展現給用戶,此時我們可以通過頁面跳轉功能,以一個網頁的方式來給用戶展示回答內容。這種方式同樣可以應用在期刊導航、個性化信息推送、新書通報等。
開源軟件的目的是讓更多的人以更簡單的方式、更少的投入獲得最大的收益,但是開源軟件也有明顯的缺點,比如需要使用者有一定的開發能力,沒有公司進行后期維護和技術支持,需要圖書館進行相應的技術力量的儲備等。所以我們在選擇開源軟件時不能盲目,要根據自需求和本館的開發力量選擇合適的方式。
(作者單位為上海交通大學圖書館)