天天看點

利用 OpenAI 和 Schematron 在 Oxygen 編輯器完成内容驗證和更正

作者:鐳内容技術
利用 OpenAI 和 Schematron 在 Oxygen 編輯器完成内容驗證和更正

在當今的數字化時代,對于那些依靠内容的準确性和一緻性與閱聽人溝通的企業群組織來說内容驗證和更正變得越來越重要。為滿足這一需求許多公司正轉向人工智能 AI 和 Schematron,以自動化確定其内容符合某些标準和準則的過程。Schematron是為 XML 文檔指定規則的強大語言,它允許開發人員定義自己的自定義消息,并向使用者提供更多描述性的回報。通過利用人工智能和 Schematron 的力量,企業可以簡化其内容建立和編輯流程,并確定其消息傳遞清晰、一緻且無錯誤。

本文披露了将人工智能與 Schematron 和 SQF 一起用于内容驗證和更正的潛在好處,以及我們在将人工智能用于此目的時面臨的一些挑戰。

要在 Schematron 中調用人工智能的實作,您可以使用 XSLT 函數或擴充函數。

使用 XSLT 函數:

您可以使用 XSLT 函數來調用 Schematron 中的 AI 實作。 例如,您可以使用實作函數來調用ChatGPT API。 這是一個例子:

示例 1. 調用 ChatGPT 的 XSLT 函數示例

<xsl:function name="ai:chatGPT">
    <xsl:param name="userInput"/>
    <xsl:variable name="url" select="'https://api.chatgpt.com/v1/chatbot/question'"/>
    <xsl:variable name="requestBody" select="concat('{', '"text":"',
        $userInput,'"', '}')"/>
    <xsl:variable name="response" select="document(concat($url, '?apiKey=',
        '<your_api_key>'))//response"/>
    <xsl:sequence select="$response"/>
</xsl:function>           

使用擴充函數:

您還可以使用擴充函數來調用 Schematron 中的 AI 實作。 例如,您可以定義一個名為“ai:verify-content”的擴充函數,它将指令和内容作為參數并傳回布爾值。 這是一個例子:

示例 2. 擴充函數 ai:verify-content() 示例

<sch:rule context="...">
  <sch:assert test="ai:verify-content('instruction', 'content')">Message</sch:assert>
</sch:rule>
           

在此示例中,在“sch:assert”元素中調用“ai:verify-content”函數來驗證内容是否滿足指令指定的某些标準。

要使用 AI 修改内容,您可以定義一個名為“ai:transform-content”的擴充函數,該函數将指令和内容作為字元串參數,并将轉換後的内容作為字元串傳回。 您可以使用此功能和 SQF 操作來更正内容。 這是一個例子:

示例 3. 擴充函數 ai:transform-content 示例

<sqf:fix id="rephrase">
    <sqf:replace select="ai:transform-content('instruction', 'content')"/>
</sqf:fix>           

“ai:transform-content”函數在“sqf:replace”元素中調用,将根據指令轉換給定的内容,傳回的結果将插入到文檔中替換目前節點内容。

當 Schematron 規則在驗證期間失敗時,它會生成一條錯誤消息,訓示錯誤的上下文。 但是,它沒有提供該問題的解決方案。 可以使用 AI 生成錯誤消息的修複,它會分析規則的上下文并建議對 XML 文檔進行更正。 這有助于自動化修複 XML 文檔中的錯誤的過程,并為開發人員節省時間。

示例 4. 示例:驗證 Shortdesc 元素中單詞數的 Schematron 規則

<sch:rule context="shortdesc">
    <sch:report test="count(tokenize(.,'\s+')) > 50">
         The description must contain less than 50 words.</sch:report>
</sch:rule>           

您可以使用 Schematron 規則通過 AI 生成修複程式。 要糾正的内容是在 Schematron 規則的上下文中提供的,目标是使用 AI 生成新文本來解決問題。 具體來說,AI 應生成一個新文本來替換“shortdesc”元素的内容,其中應包含問題的簡短描述。

這種方法可以擴充到 Schematron 之外的軟體開發中的其他類型的錯誤消息。 通過使用人工智能自動生成修複程式,開發人員可以節省時間并專注于更複雜的任務,同時還可以提高代碼的整體品質。

當然,這種方法也存在一些挑戰。 例如,消息需要盡可能簡潔,以便人工智能能夠有效地使用它。 此外,有時可能需要修改消息的上下文,或者可能需要執行附加操作才能生成有效的修複。 不過,總的來說,與手動建立相比,這種方法可以節省大量時間和精力。

參考閱讀

利用 OpenAI 和 Schematron 在 Oxygen 編輯器完成内容驗證和更正

「連結」 點選連結檢視視訊展示

繼續閱讀