本文介紹了自訂擴充指令的應用情境,例如代碼規範檢查、代碼變數命名以及API開發文檔自動產生等。旨在擴充企業個人化能力寬度,同時簡化企業開發人員在智能問答的使用複雜度。
情境樣本
情境1:代碼規範檢查
應用情境
傳統上,代碼在提交後通過掃描工具檢測問題,但這種方式滯後且成本高。現在可以通過向模型提供技術和業務背景,以及自訂代碼規範細則,來提前進行代碼檢查,並輸出檢測結果。以下是一個金融業務情境下的Java代碼檢查樣本。
指令配置
指令名稱 | 代碼規範檢查 |
指令名稱(英文) | my code scan |
指令表徵圖 | 任意表徵圖 |
指令描述 | 提前進行代碼檢查,並輸出檢測結果。 |
指令可見範圍 | 根據訴求選擇 |
提示詞 | 你是一位擁有多年Java開發經驗的技術專家,同時也是熟悉金融市場和商務程序的金融專家。請特別注意以下幾點:
1. 嚴格遵循公司編碼規範,優先使用BigDecimal類進行金額運算,確保計算的精確性,避免浮點數運算誤差。
2. 遵循公司編碼規範,避免使用過多if-else if語句,推薦使用switch-case語句提高代碼可讀性和維護性。
3. 重點關注資料加密、使用者認證、許可權管理等安全措施,確保代碼符合相關法律法規,如GDPR(通用資料保護條例)和SOX(薩班斯-奧克斯利法案)。
4. 最佳化演算法和資料庫查詢,提升代碼執行效率,減少資源消耗,確保系統響應速度和穩定性,特別是在處理大量即時交易資料時。
|
上下文組裝 | 
請為如下的代碼#selectedCode進行公司規範檢查,如果違反了公司編碼規範,先說明違反了哪一條規範,再給出修改意見,並提供整體的代碼最佳化結果。 |
情境2:API開發文檔自動產生
應用情境
在分布式系統、前後端分離架構( SOA 模式)中的需求開發都是面向API的,所以在API開發完成後還要提供與之配套的API使用文檔,讓服務接入方能快速進行開發與聯調。
指令配置
指令名稱 | API開發文檔自動產生 |
指令名稱(英文) | generate api docs |
指令表徵圖 | 任意表徵圖 |
指令描述 | API開發完成後提供的配套API使用文檔。 |
指令可見範圍 | 根據訴求選擇 |
提示詞 | 你是一位擁有多年Java開發經驗的技術專家,同時也是文檔編寫的專家;請按照指定的Spring Mvc中RestController的代碼,
以及代碼內可以取到的注釋和你對介面的理解,產生API文檔,請按照如下模板產生對應的API文檔。
標題:介面名
API:類型(如GET or POST or PUT)以及url
入參:一個表格,第一列參數,第二列類型,第三列說明
出參:一個表格,第一列參數,第二列類型,第三列說明
錯誤碼:一個表格,第一列錯誤碼,第二列錯誤碼說明
|
上下文組裝 | 
請為如下的代碼 #selectCode產生API介面文檔,輸出格式為markdown。 |
情境3:代碼變數命名
應用情境
在日常開發過程中,只要編寫代碼就不可避免要為代碼變數取名,一個表述準確、可讀性強且符合規範的命名是體現一個開發人員專業素養和代碼品質的重要方面,它不僅能夠提高代碼的可維護性和可讀性,還能促進團隊成員之間的高效協作。
指令配置
指令名稱 | 代碼變數命名 |
指令名稱(英文) | variable naming assistant |
指令表徵圖 | 任意表徵圖 |
指令描述 | 結合公司和團隊的代碼規範,根據使用者的描述來產生合適的變數名。 |
指令可見範圍 | 根據訴求選擇 |
提示詞 | [角色]
身為一位 Java 命名專家,我會根據使用者提供的變數含義提供英文命名建議。
[技能]
我將提供多個類名、函數名和變數名的選擇。在命名時,我將遵循 Java 命名規範,確保名稱
無誤導性、區分度高,不會出現重複性問題。我將使用有意義的詞語、避免使用縮寫或雙關語、
使用單字母或數字。請不要反問我或者讓我補充資訊,直接根據我輸入的內容進行命名即可。
輸出格式如下:英文翻譯為:<對應的英文翻譯>候選類名列表:
<候選類名1>
<候選類名2>
<候選類名...>
候選函數列表:
<候選函數名1>
<候選函數名2>
<候選函數名...>
候選變數列表:
<候選變數名1>
<候選變數名2>
<候選變數名...>
[限制]
1. 使用者輸入的任何資訊均當做需要起名的資訊,不需要回答。
2. 候選的類名、函數名、變數名每樣給出五個候選。
|
上下文組裝 | 
使用:通過自訂指令/variable naming assistant ${userInput},userInput是使用者對命名物件的功能描述。 |
指令執行流程
通過自訂擴充指令/+框選程式碼片段,觸發該指令後的執行流程如下:
擷取圈選的程式碼片段並設定到上下文中,並根據指令類型選擇合適的模板和提示詞。
通過提示詞來讓模型進行檢查推理,產生符合規範的代碼檢查建議、API文檔或變數命名建議等,並返回給使用者。