影片教學 > OSL語法描述語言

OSL檔案概述

olami     2017-08-24 09:00



大家好,歡迎使用OLAMI人工智慧開放平台!

今天要介紹的內容是離線編輯 OSL 檔案。

由於這一部分內容比較多,所以將會分成上下兩個部分來講解。今天這節課先帶大家來了解一下 OSL 檔案的基本概念。


我將會從以下這四個部分來分別講解:

  • 什麼是 OSL 檔案
  • 如何匯出/上傳 OSL 檔案
  • OSL 檔案的內容
  • OSL 檔案基本撰寫格式和規則



一、什麼是 OSL 檔案

所謂的 OSL 檔案也就是記錄 OSL 文字數據的檔案。

為了方便開發者進行編輯, NLI 管理系統可以把 OSL 文字數據匯出成文字檔,然後就可以像編輯 Word 一樣,在離線狀態下編輯 OSL 文字數據,最後再重新上傳到 NLI 管理系統。

這樣做的好處就是可以在短時間內快速的編輯或者修改大量的語法內容。


二、如何匯出 OSL 檔案

進入 NLI 管理系統後,在「我的模組」介面,可以看到目前應用裡的所有模組,每一個模組的右邊都有「匯出 OSL 文件」這個選項,點選之後,系統就會自動把模組裡所有的 OSL 文字數據以壓縮檔的形式 (.zip) 匯出。

這邊要特別注意一下:匯出的 OSL 文字文件的編碼必須以 UTF-8 格式存檔,副檔名是:「.osl」。

因為我們匯出的是音樂模組,那麼名稱就是:「音樂.osl」。


三、如何上傳 OSL 檔案

也是在「我的模組」這個介面,有「上傳 OSL 文件」這個選項,只需要點選一下,然後把已經編輯好了的 OSL 檔案上傳就可以了。

再提醒一次:OSL 檔案的編碼必須以 UTF-8 格式存檔,副檔名是:「.osl」。

下面圖一就是一份已經編輯好了的 OSL 檔案,可以看到裡面有 Rule、Grammar 和語料。

當我們把這個文件上傳到系統裡的時候,系統就會提示:「 OSL 文件會替換當前模組裡的所有內容,確定要上傳嗎」,如果確定的話,直接點擊就可以了。

圖一


四、OSL 檔案實際的內容

那麼,在知道了怎麼匯出、上傳 OSL 檔案之後,我們來看一下 OSL 檔案實際的內容。

OSL 檔案的內容主要包括兩部分:宣告和定義。

聲明包括:
意圖宣告(必要)
Slot 宣告
Modifier 宣告
Grammar 宣告(必要)


其中,意圖宣告和 Grammar 宣告是必不可少的,在撰寫的時候要注意;

而如果 Grammar 裡沒有使用 Slot 和 Modifier ,可以不用Slot 宣告和 Modifier 宣告是沒有關係的。

定義指的是主要的描述內容,包含了各項語法描述句、例句語料、答案、註解等。

我們透過下面這個例子來看一下,一份完整的 OSL 檔案是長什麼樣子,左邊是 OSL 檔案,右邊欄位代表他的聲明或定義:

!slot <singer:internal."歌手"(2|10)>;

Slot宣告

!intention <my_grammar>;

意圖宣告(必要)
!modifier <singer> : itissinger;

!modifier <my_grammar> : music;

Modifier宣告

<my_grammar>:<tingge>

Grammar宣告(必要)

//All rules

<singer>:劉德華|蔡依林|周杰倫;

定義Rule
//All grammars

//*C:我要聽蔡依林的歌

定義Corpus
//*A:馬上為您播放 定義答案
<tingge>:我要聽<singer><{singer@=itissinger}>的歌<{@=music}>; 定義Grammar


五、OSL 檔案通用的撰寫格式和規則

主要有以下四點:

1. OSL 檔案內容中的字元必須是半形英文(語法描述句的內容、以及例句語料內容除外)。


2. OSL 檔案內容以英文半形分號字元 「 ; 」 作為每一行的結尾標示。例:

!Slot <singer:internal."歌手"(2|10)>;
 ;  ←英文半形 
 ; ←英文全形  

輸入的時候請注意一定是英文半形


3. OSL 檔案內容可以用 // 或 /* */ 寫上註解,

例:

//All Grammars
//*C:我要聽蔡依林的歌


這三點是 OSL 檔案通用的撰寫規則,也就是說不管是宣告還是定義,都要照這三個規則來寫。

而宣告和定義又有自己另外的撰寫規則,由於這一部分內容比較多,我們會在下一節課詳細來介紹。


以上這些就是這節課的全部內容,感謝大家觀看,我們下節課再見。


Copyright © 2017 威盛电子股份有限公司. All rights reserved   |   意见反馈