適用於 Language Understanding 的 SDK、REST 和 CLI 開發人員資源 (LUIS)
重要
LUIS 將於 2025 年 10 月 1 日淘汰,而自 2023 年 4 月 1 日開始,您將無法建立新的 LUIS 資源。 建議移轉 LUIS 應用程式至交談語言理解,以享有產品持續支援和多語言功能的優點。
SDK、REST API、CLI,可協助您以程式設計語言開發 Language Understanding (LUIS) 應用程式。 管理您的 Azure 資源和 LUIS 預測。
Azure 資源管理
使用 Azure AI 服務管理層來建立、編輯、列出和刪除 Language Understanding 或 Azure AI 服務資源。
根據工具尋找參考檔案:
Language Understanding 撰寫和預測要求
Language Understanding 服務是從您需要建立的 Azure 資源存取。 有兩個資源:
- 使用製作資源進行定型,以建立、編輯、定型和發佈。
- 使用運行時間的預測來傳送使用者的文字並接收預測。
使用 Azure AI 服務範例程式碼來學習及使用最常見的工作。
REST 規格
LUIS REST 規格以及所有 Azure REST 規格都可公開在 GitHub 上取得。
REST API
撰寫和預測端點 API 皆可從 REST API 取得:
類型 | 版本 |
---|---|
編寫 | V2 預覽 V3 |
預測 | V2 V3 |
REST 端點
LUIS 目前有 2 種類型的端點:
- 在 定型端點上撰寫
- 運行時間端點上的查詢 預測 。
目的 | URL |
---|---|
訓練端點上的 V2 撰寫 | https://{your-resource-name}.api.cognitive.microsoft.com/luis/api/v2.0/apps/{appID}/ |
訓練端點上的 V3 撰寫 | https://{your-resource-name}.api.cognitive.microsoft.com/luis/authoring/v3.0-preview/apps/{appID}/ |
V2 預測 - 執行時間端點上的所有預測 | https://{your-resource-name}.api.cognitive.microsoft.com/luis/v2.0/apps/{appId}?q={q}[&timezoneOffset][&verbose][&spellCheck][&staging][&bing-spell-check-subscription-key][&log] |
V3 預測 - 執行時間端點上的版本預測 | https://{your-resource-name}.api.cognitive.microsoft.com/luis/prediction/v3.0/apps/{appId}/versions/{versionId}/predict?query={query}[&verbose][&log][&show-all-intents] |
V3 預測 - 執行時間端點上的位置預測 | https://{your-resource-name}.api.cognitive.microsoft.com/luis/prediction/v3.0/apps/{appId}/slots/{slotName}/predict?query={query}[&verbose][&log][&show-all-intents] |
下表說明上表中以大括弧 {}
表示的參數。
參數 | 目的 |
---|---|
your-resource-name |
Azure 資源名稱 |
q 或 query |
從用戶端應用程式傳送的語句文字,例如聊天機器人 |
version |
10 個字元版本名稱 |
slot |
production 或 staging |
REST 查詢字串參數
V3 API 查詢字串參數包括:
查詢參數 | LUIS 入口網站名稱 | 類型 | 版本 | 預設 | 目的 |
---|---|---|---|---|---|
log |
儲存記錄 | boolean | V2 和 V3 | false | 將查詢儲存在記錄檔中。 預設值為 False。 |
query |
- | string | 僅限第 3 版 | 無預設值:在 GET 要求中為必要 | 在 V2 版中,待預測的表達在 q 參數內。 在 V3 版中,此功能會在 query 參數中傳遞。 |
show-all-intents |
包括所有意圖的分數 | boolean | 僅限第 3 版 | false | 傳回在 prediction.intents 物件中有對應分數的所有意圖。 意圖會以父代 intents 物件中的物件形式傳回。 因此您可以透過程式設計方式存取,而不需要在 prediction.intents.give 陣列中尋找意圖。 在 V2 版中,這些會以陣列方式傳回。 |
verbose |
包括更多實體詳細資料 | boolean | V2 和 V3 | false | 在 V2 版中,當設為 true 時,會傳回所有預測的意圖。 如果您需要所有預測的意圖,請使用 show-all-intents 的 V3 版參數。在 V3 版中,此參數只會提供實體預測的實體中繼資料詳細資料。 |
timezoneOffset |
- | string | V2 | - | 套用在 datetimeV2 實體的時區。 |
datetimeReference |
- | string | V3 | - | 套用在 datetimeV2 實體的時區。 取代 V2 版的 timezoneOffset 。 |
應用程式架構
以語言為基礎的 SDK
語言 | 參考文件 | 套件 | 快速入門 |
---|---|---|---|
C# | 撰寫 預測 |
NuGet 撰寫 NuGet 預測 |
創作 查詢預測 |
Go | 撰寫和預測 | SDK | |
Java | 撰寫和預測 | Maven 撰寫 Maven 預測 |
|
JavaScript | 創作 預測 |
NPM 撰寫 NPM 預測 |
創作 預測 |
Python | 撰寫和預測 | 果仁 | 創作 預測 |
容器
Language Understanding (LUIS) 提供一個 容器 ,以提供您應用程式的內部部署和自主版本。
匯出和匯入格式
Language Understanding 可讓您以 JSON 格式、 .LU
(LUDown) 格式和 Language Understanding 容器的壓縮套件來管理您的應用程式及其模型。
匯入和導出這些格式可從 API 和 LUIS 入口網站取得。 入口網站會在 [應用程式] 列表和 [版本] 清單中提供匯入和匯出。
工作坊
- GitHub:(Workshop) Conversational-AI:使用 LUIS 的 NLU
持續整合工具
- GitHub:(預覽) 使用 DevOps 做法開發 LUIS 應用程式
- GitHub: NLU。DevOps - 支援 NLU 服務持續整合和部署的工具。
Bot Framework 工具
Bot 架構以 SDK 的形式支援多種語言,也是 Azure AI Bot Service 的一環。
Bot Framework 提供 數個 工具來協助 Language Understanding,包括:
- Bot Framework 模擬器 - 桌面應用程式,可讓 Bot 開發人員測試及偵錯使用 Bot Framework SDK 建置的 Bot
- Bot Framework Composer - 適用於開發人員和多專業領域小組的集成開發工具,可透過 Microsoft Bot Framework 建置 Bot 和對話式體驗
- Bot Framework 範例 - #C、JavaScript、TypeScript 和 Python