Chatbot NER 是一個客製化的開源框架,用於支援文字訊息中的實體識別。在對現有 NER 系統進行深入研究後,Haptik 團隊強烈需要建立一個專為對話式 AI 量身定制並支援印度語言的框架。目前Chatbot-ner支援英語、印地語、古吉拉特語、馬拉地語、孟加拉語和泰米爾語及其代碼混合形式。目前,該框架使用常見模式以及少量 NLP 技術從稀疏資料的語言中提取必要的實體。 Chatbot ner的API結構在設計時考慮對話式AI應用程式的可用性。 Haptik 團隊正在不斷努力將該框架移植到所有印度語言及其各自的當地方言。
有關如何使用 docker 在系統上設定 Chatbot NER 的詳細文檔,請參閱此處。
實體類型 | 代碼參考 | 描述 | 例子 | 支援的語言 - ISO 639-1代碼 |
---|---|---|---|---|
時間 | 時間檢測器 | 從給定文字中檢測時間。 | 明天早上 5 點,कल सुबह ५ बजे,kal subah 5 baje | 'en'、'嗨'、'gu'、'bn'、'先生'、'ta' |
日期 | 日期高級探測器 | 從給定文字中檢測日期 | 下週一,agle somvar,अगलेसोमवार | 'en'、'嗨'、'gu'、'bn'、'先生'、'ta' |
數位 | 數位偵測器 | 偵測給定文字中的數字和各自單位 | 每人 50 盧比,५ किलो चावल, मुझे एक लीटर ऑइल कत | 'en'、'嗨'、'gu'、'bn'、'先生'、'ta' |
電話號碼 | 電話探測器 | 偵測給定文字中的電話號碼 | 9833530536, +91 9833530536, 電話 | 'en'、'嗨'、'gu'、'bn'、'先生'、'ta' |
電子郵件 | 電子郵件偵測器 | 偵測文字中的電子郵件 | 你好@haptik.co | '恩' |
文字 | 文字偵測器 | 使用資料儲存中的全文搜尋或基於上下文模型檢測文字字串中的自訂實體 | 幫我訂一份披薩, मुंबईमेंमौसमकैसाहै | 支援搜尋“en”、“hi”、“gu”、“bn”、“mr”、“ta”,僅支援“en”的上下文模型 |
訂座記錄 | PNR偵測器 | 偵測給定文字中的 PNR(序號)代碼。 | 我的航班 PNR 是 4SGX3E | '恩' |
正規表示式 | 正規表示式檢測器 | 使用自訂正規表示式模式偵測實體 | 我的航班 PNR 是 4SGX3E | 不適用 |
還有其他自訂檢測器,例如城市、預算購物尺寸,這些檢測器源自上述主要檢測器,但目前僅支援英語,並且僅限印度用戶。我們目前正在重組它們,以跨語言和地理擴展它們,它們當前的版本將來可能會被棄用。因此,對於已經投入生產的應用,我們建議您僅使用上表中提到的主探測器。
此處提供了所有實體類型的 API 的詳細文件。目前的 API 結構是為了方便從對話式 AI 應用程式存取它而建構的。然而,它也可以用於其他應用程式。
在任何會話式人工智慧應用程式中,都需要識別多個實體,且一個實體的偵測邏輯可能與其他實體不同。我們組織了這個儲存庫,如下所示
我們將實體分為四種主要類型,即數字、模式、時間和文字。
numeric:此類型將包含所有處理數字的實體。例如數量檢測、預算檢測、尺寸檢測等。
模式:這將包含可以使用模式或正規表示式進行識別的所有檢測邏輯。例如,電子郵件、電話號碼、pnr 等。
時間:它將包含用於檢測時間和日期的檢測邏輯。
文字:它透過查看字典來識別實體。此檢測主要包含文字(如美食、菜餚、餐廳等)、城市名稱、使用者位置等的檢測。
數字、時間和模式已移至 ner_v2,以實現語言可移植性和更靈活的檢測邏輯。在ner_v1中,目前只有文字實體具有語言支援。我們將把它轉移到 ner_v2,而不進行任何重大的 API 變更。
目前,您可以透過新增訓練資料或以正規表示式的形式貢獻檢測模式,為 Chatbot NER 中的 ner_v2 做出貢獻。我們將致力於消除一些架構限制,這將簡化未來添加機器學習模型和新實體的過程。
請參閱此處提及的貢獻、批准和編碼指南的一般步驟。