Files
hr-position-system/docs/prompt.md
DonaldFang 方士碩 a6af297623 backup: 完成 HR_position_ 表格前綴重命名與欄位對照表整理
變更內容:
- 所有資料表加上 HR_position_ 前綴
- 整理完整欄位顯示名稱與 ID 對照表
- 模組化 JS 檔案 (admin.js, ai.js, csv.js 等)
- 專案結構優化 (docs/, scripts/, tests/ 等)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-09 12:05:20 +08:00

25 KiB
Raw Blame History

HR 崗位管理系統 - AI 生成功能 Prompt 說明文件

文件版本: v1.0 最後更新: 2024-12-04 維護者: AI所以有問題真的不要問我


📋 目錄

  1. 總覽
  2. 頁籤 1: 崗位基礎資料維護
  3. 頁籤 2: 崗位招聘要求
  4. 頁籤 3: 職務基礎資料
  5. 頁籤 4: 部門職責維護
  6. 頁籤 5: 崗位描述 (JD)
  7. 如何修改 Prompt
  8. Prompt 設計原則

總覽

系統中共有 5 個頁籤提供 AI 自動生成功能,每個頁籤都有一個 " I'm feeling lucky" 按鈕。

🎯 核心運作原理

  1. 智能空白檢測: 系統會檢測哪些欄位是空白的
  2. 上下文感知: 將已填寫的欄位作為上下文傳給 LLM
  3. 精準生成: 只生成尚未填寫的欄位
  4. JSON 格式回傳: 要求 LLM 返回結構化的 JSON 資料
  5. 自動填充: 解析 JSON 並填入對應欄位

🔗 對應函式與程式碼位置

頁籤名稱 函式名稱 程式碼位置 按鈕 ID/onclick
崗位基礎資料維護 generatePositionBasic() index.html:2179 onclick="generatePositionBasic()"
崗位招聘要求 generatePositionRecruit() index.html:2253 onclick="generatePositionRecruit()"
職務基礎資料 generateJobBasic() index.html:2330 onclick="generateJobBasic()"
部門職責維護 generateDeptFunction() index.html:3778 onclick="generateDeptFunction()"
崗位描述 (JD) generateJobDesc() index.html:2425 onclick="generateJobDesc()"

頁籤 1: 崗位基礎資料維護

📍 函式位置

  • 檔案: index.html
  • 行數: 2179-2251
  • 函式: async function generatePositionBasic()

📝 完整 Prompt

請為HR崗位管理系統生成崗位基礎資料。請用繁體中文回覆。

[如果有已填寫的資料,會附加此段]
已填寫的資料(請參考這些內容來生成相關的資料):
{JSON格式的已填寫資料}

請「只生成」以下這些尚未填寫的欄位:[動態欄位列表]

欄位說明:
- positionCode: 崗位編號(格式如 ENG-001, MGR-002, SAL-003
- positionName: 崗位名稱
- positionCategory: 崗位類別代碼01=技術職, 02=管理職, 03=業務職, 04=行政職)
- positionNature: 崗位性質代碼FT=全職, PT=兼職, CT=約聘, IN=實習)
- headcount: 編制人數1-10之間的數字字串
- positionLevel: 崗位級別L1到L7
- positionDesc: 崗位描述2-3句話描述工作內容
- positionRemark: 崗位備注(可選的補充說明)

請直接返回JSON格式只包含需要生成的欄位不要有任何其他文字
{
  "positionCode": "...",
  "positionName": "...",
  ...
}

🎯 Prompt 設計依據

  1. 上下文感知: 如果使用者已填寫部分欄位,這些資料會被傳入作為參考
  2. 精準指令: 明確告知只生成「尚未填寫」的欄位,避免覆蓋已有資料
  3. 格式規範: 提供詳細的欄位格式說明和代碼對照表
  4. 結構化輸出: 要求返回純 JSON方便程式解析

📦 處理的欄位

const allFields = [
    'positionCode',      // 崗位編號
    'positionName',      // 崗位名稱
    'positionCategory',  // 崗位類別代碼
    'positionNature',    // 崗位性質代碼
    'headcount',         // 編制人數
    'positionLevel',     // 崗位級別
    'positionDesc',      // 崗位描述
    'positionRemark'     // 崗位備注
];

🔧 如何修改此 Prompt

index.html:2205-2223 找到以下程式碼:

const prompt = `請為HR崗位管理系統生成崗位基礎資料。請用繁體中文回覆。
${contextInfo}

請「只生成」以下這些尚未填寫的欄位:${emptyFields.join(', ')}

欄位說明:
- positionCode: 崗位編號(格式如 ENG-001, MGR-002, SAL-003
...
`;

修改建議:

  • 如果要改變生成風格:修改第一句的指令(例如:「請以專業正式的語氣生成...」)
  • 如果要新增欄位規則:在「欄位說明」中添加新的規範
  • 如果要調整格式:修改格式範例(如改變編號規則)

頁籤 2: 崗位招聘要求

📍 函式位置

  • 檔案: index.html
  • 行數: 2253-2328
  • 函式: async function generatePositionRecruit()

📝 完整 Prompt

請為HR崗位管理系統生成「{崗位名稱}」的招聘要求資料。請用繁體中文回覆。

已填寫的資料(請參考這些內容來生成相關的資料):
{JSON格式的已填寫資料包含 positionName}

請「只生成」以下這些尚未填寫的欄位:[動態欄位列表]

欄位說明:
- minEducation: 最低學歷代碼HS=高中職, JC=專科, BA=大學, MA=碩士, PHD=博士)
- requiredGender: 要求性別(空字串=不限, M=男, F=女)
- salaryRange: 薪酬范圍代碼A=30000以下, B=30000-50000, C=50000-80000, D=80000-120000, E=120000以上, N=面議)
- workExperience: 工作經驗年數0=不限, 1, 3, 5, 10
- minAge: 最小年齡18-30之間的數字字串
- maxAge: 最大年齡35-55之間的數字字串
- jobType: 工作性質代碼FT=全職, PT=兼職, CT=約聘, DP=派遣)
- recruitPosition: 招聘職位代碼ENG=工程師, MGR=經理, AST=助理, OP=作業員, SAL=業務)
- jobTitle: 職位名稱
- jobDesc: 職位描述2-3句話
- positionReq: 崗位要求(條列式,用換行分隔)
- skillReq: 技能要求(用逗號分隔)
- langReq: 語言要求
- otherReq: 其他要求

請直接返回JSON格式只包含需要生成的欄位
{
  "minEducation": "...",
  ...
}

🎯 Prompt 設計依據

  1. 職位名稱作為核心上下文: 使用第一個頁籤的崗位名稱作為生成依據
  2. 跨頁籤資料引用: 會從「崗位基礎資料」頁籤讀取 positionName
  3. 招聘專用代碼: 提供完整的學歷、薪資、經驗等代碼對照

📦 處理的欄位

const allFields = [
    'minEducation',      // 最低學歷
    'requiredGender',    // 要求性別
    'salaryRange',       // 薪酬范圍
    'workExperience',    // 工作經驗年數
    'minAge',            // 最小年齡
    'maxAge',            // 最大年齡
    'jobType',           // 工作性質
    'recruitPosition',   // 招聘職位
    'jobTitle',          // 職位名稱
    'jobDesc',           // 職位描述
    'positionReq',       // 崗位要求
    'skillReq',          // 技能要求
    'langReq',           // 語言要求
    'otherReq'           // 其他要求
];

🔧 如何修改此 Prompt

index.html:2275-2301 找到程式碼。

修改建議:

  • 調整薪資範圍: 修改 salaryRange 的代碼對照(例如增加更高薪資級別)
  • 新增性別選項: 如果需要更多性別選項,在 requiredGender 中添加
  • 調整經驗年限: 修改 workExperience 的可用選項

頁籤 3: 職務基礎資料

📍 函式位置

  • 檔案: index.html
  • 行數: 2330-2423
  • 函式: async function generateJobBasic()

📝 完整 Prompt

請為HR職務管理系統生成職務基礎資料。請用繁體中文回覆。

[如果有已填寫的資料,會附加此段]
已填寫的資料(請參考這些內容來生成相關的資料):
{JSON格式的已填寫資料}

請「只生成」以下這些尚未填寫的欄位:[動態欄位列表,可能包含 checkbox]

欄位說明:
- jobCategoryCode: 職務類別代碼MGR=管理職, TECH=技術職, SALE=業務職, ADMIN=行政職, RD=研發職, PROD=生產職)
- jobCode: 職務編號(格式如 MGR-001, TECH-002
- jobName: 職務名稱
- jobNameEn: 職務英文名稱
- jobHeadcount: 編制人數1-20之間的數字字串
- jobSortOrder: 排列順序10, 20, 30...的數字字串)
- jobRemark: 備注說明
- jobLevel: 職務層級(可以是 *保密* 或具體層級)
- hasAttendanceBonus: 是否有全勤true/false
- hasHousingAllowance: 是否住房補貼true/false

請直接返回JSON格式只包含需要生成的欄位
{
  "jobCategoryCode": "...",
  ...
}

🎯 Prompt 設計依據

  1. 職務 vs 崗位: 這個頁籤處理的是「職務」Job與「崗位」Position不同
  2. Checkbox 處理: 特殊處理 hasAttendanceBonushasHousingAllowance 兩個布林值欄位
  3. 排序欄位: jobSortOrder 使用 10 的倍數,方便後續插入新職務

📦 處理的欄位

const allFields = [
    'jobCategoryCode',      // 職務類別代碼
    'jobCode',              // 職務編號
    'jobName',              // 職務名稱
    'jobNameEn',            // 職務英文名稱
    'jobHeadcount',         // 編制人數
    'jobSortOrder',         // 排列順序
    'jobRemark',            // 備注說明
    'jobLevel'              // 職務層級
];

// 額外處理的 checkbox
const checkboxes = [
    'hasAttendanceBonus',   // 是否有全勤
    'hasHousingAllowance'   // 是否住房補貼
];

🔧 如何修改此 Prompt

index.html:2362-2382 找到程式碼。

修改建議:

  • 新增職務類別: 在 jobCategoryCode 中添加新的類別代碼
  • 調整編號格式: 修改 jobCode 的格式範例
  • 修改保密設定: 調整 jobLevel 的說明(如不允許保密)

頁籤 4: 部門職責維護

📍 函式位置

  • 檔案: index.html
  • 行數: 3778-3839
  • 函式: function generateDeptFunction()

📝 完整 Prompt

請為HR部門職責管理系統生成部門職責資料。請用繁體中文回覆。

[如果有已填寫的資料,會附加此段]
已填寫的資料(請參考這些內容來生成相關的資料):
{JSON格式的已填寫資料}

請「只生成」以下這些尚未填寫的欄位:[動態欄位列表]

欄位說明:
- deptFunctionCode: 部門職責編號(格式如 DF-001, DF-002
- deptFunctionName: 部門職責名稱(例如:軟體研發部職責)
- deptFunctionBU: 事業體代碼SBU/MBU/HQBU/ITBU/HRBU/ACCBU 之一)
- deptFunctionDept: 部門名稱
- deptManager: 部門主管職稱
- deptMission: 部門使命使用「•」開頭的條列式2-3項
- deptVision: 部門願景使用「•」開頭的條列式1-2項
- deptCoreFunctions: 核心職責使用「•」開頭的條列式4-6項
- deptKPIs: 關鍵績效指標使用「•」開頭的條列式3-4項

請直接返回JSON格式只包含需要生成的欄位不要有任何其他文字
{
  "deptFunctionCode": "...",
  ...
}

🎯 Prompt 設計依據

  1. 條列式格式: 特別要求使用 開頭的條列式,符合部門職責文件慣例
  2. 數量控制: 明確指定每個欄位的條列項目數量(例如使命 2-3 項)
  3. 事業體代碼: 提供固定的事業體代碼選項
  4. 管理導向: 專注於部門管理層面的使命、願景、職責、KPI

📦 處理的欄位

const allFields = [
    'deptFunctionCode',     // 部門職責編號
    'deptFunctionName',     // 部門職責名稱
    'deptFunctionBU',       // 事業體代碼
    'deptFunctionDept',     // 部門名稱
    'deptManager',          // 部門主管職稱
    'deptMission',          // 部門使命(條列式)
    'deptVision',           // 部門願景(條列式)
    'deptCoreFunctions',    // 核心職責(條列式)
    'deptKPIs'              // 關鍵績效指標(條列式)
];

🔧 如何修改此 Prompt

index.html:3800-3819 找到程式碼。

修改建議:

  • 新增事業體: 在 deptFunctionBU 中添加新的事業體代碼
  • 調整條列數量: 修改各欄位的條列項目數量要求
  • 改變條列符號: 將 改為其他符號(如 1., -,

頁籤 5: 崗位描述 (JD)

📍 函式位置

  • 檔案: index.html
  • 行數: 2425-2541
  • 函式: async function generateJobDesc()

📝 完整 Prompt

請為HR崗位描述管理系統生成崗位描述資料。請用繁體中文回覆。

[如果有已填寫的資料,會附加此段]
已填寫的資料(請參考這些內容來生成相關的資料):
{JSON格式的已填寫資料欄位名稱已移除 jd_ 前綴}

請「只生成」以下這些尚未填寫的欄位:[動態欄位列表]

欄位說明:
- empNo: 工號(格式如 A001234
- empName: 員工姓名
- positionCode: 崗位代碼
- versionDate: 版本日期YYYY-MM-DD格式
- positionName: 崗位名稱
- department: 所屬部門
- positionEffectiveDate: 崗位生效日期YYYY-MM-DD格式
- directSupervisor: 直接領導職務
- directReports: 直接下級(格式如「工程師 x 5人」
- workLocation: 任職地點代碼HQ=總部, TPE=台北, TYC=桃園, KHH=高雄, SH=上海, SZ=深圳)
- empAttribute: 員工屬性代碼FT=正式員工, CT=約聘, PT=兼職, IN=實習, DP=派遣)
- positionPurpose: 崗位設置目的1句話說明
- mainResponsibilities: 主要崗位職責用「1、」「2、」「3、」「4、」「5、」格式每項換行用\n分隔
- education: 教育程度要求
- basicSkills: 基本技能要求
- professionalKnowledge: 專業知識要求
- workExperienceReq: 工作經驗要求
- otherRequirements: 其他要求

請直接返回JSON格式只包含需要生成的欄位
{
  "empNo": "...",
  ...
}

🎯 Prompt 設計依據

  1. 最複雜的表單: 包含最多欄位18 個),涵蓋完整的 JD 內容
  2. 日期格式規範: 明確要求 YYYY-MM-DD 格式
  3. 職責編號格式: 特別指定使用「1、」「2、」格式並用 \n 換行
  4. 地點代碼對照: 提供台灣與中國大陸的辦公室代碼
  5. 欄位名稱映射: 程式中會將 jd_ 前綴移除後再傳給 API

📦 處理的欄位

const allFields = [
    'jd_empNo',                    // 工號
    'jd_empName',                  // 員工姓名
    'jd_positionCode',             // 崗位代碼
    'jd_versionDate',              // 版本日期
    'jd_positionName',             // 崗位名稱
    'jd_department',               // 所屬部門
    'jd_positionEffectiveDate',    // 崗位生效日期
    'jd_directSupervisor',         // 直接領導職務
    'jd_directReports',            // 直接下級
    'jd_workLocation',             // 任職地點
    'jd_empAttribute',             // 員工屬性
    'jd_positionPurpose',          // 崗位設置目的
    'jd_mainResponsibilities',     // 主要崗位職責
    'jd_education',                // 教育程度要求
    'jd_basicSkills',              // 基本技能要求
    'jd_professionalKnowledge',    // 專業知識要求
    'jd_workExperienceReq',        // 工作經驗要求
    'jd_otherRequirements'         // 其他要求
];

🔧 如何修改此 Prompt

index.html:2464-2492 找到程式碼。

特別注意: 這個模組有欄位名稱映射機制(index.html:2499-2518),修改欄位時需要同時更新 fieldMapping 物件。

修改建議:

  • 新增辦公室地點: 在 workLocation 中添加新的辦公室代碼
  • 調整職責數量: 修改 mainResponsibilities 的編號範圍(如改為 1-10
  • 新增員工屬性: 在 empAttribute 中添加新的員工類型

如何修改 Prompt

📝 通用修改步驟

所有 "I'm Feeling Lucky" 按鈕的 Prompt 都遵循相同的修改流程:

步驟 1: 找到對應函式

使用上方表格找到要修改的函式位置,例如:

崗位基礎資料維護 → index.html:2179

步驟 2: 找到 prompt 變數

在函式中搜尋 const prompt = 或 `const prompt = ``:

const prompt = `請為HR崗位管理系統生成崗位基礎資料。請用繁體中文回覆。
...
`;

步驟 3: 修改 Prompt 內容

根據需求修改:

A. 修改生成風格

// 修改前
const prompt = `請為HR崗位管理系統生成崗位基礎資料。請用繁體中文回覆。

// 修改後(加入語氣要求)
const prompt = `請以專業正式且友善的語氣為HR崗位管理系統生成崗位基礎資料請用繁體中文回覆

B. 修改欄位說明

// 修改前
- positionCode: 崗位編號格式如 ENG-001, MGR-002, SAL-003

// 修改後(改變編號規則)
- positionCode: 崗位編號格式部門縮寫-年份-流水號 ENG-2024-001

C. 新增欄位規則

// 在「欄位說明」區塊新增
- positionPriority: 優先級HIGH=, MID=, LOW=

D. 調整輸出格式

// 修改前
請直接返回JSON格式只包含需要生成的欄位不要有任何其他文字

// 修改後(要求更多資訊)
請直接返回JSON格式只包含需要生成的欄位每個欄位請加上_note後綴提供生成理由
{
  "positionCode": "ENG-001",
  "positionCode_note": "根據技術職的慣例生成",
  ...
}

步驟 4: 測試修改結果

  1. 儲存 index.html 檔案
  2. 重新整理瀏覽器頁面Ctrl+F5 強制重新整理)
  3. 點擊對應頁籤的 " I'm feeling lucky" 按鈕
  4. 檢查生成的內容是否符合預期

⚠️ 修改時的注意事項

  1. 保持 JSON 格式要求: 必須要求 LLM 返回純 JSON否則程式解析會失敗
  2. 不要移除欄位動態列表: ${emptyFields.join(', ')} 這段必須保留
  3. 維持上下文機制: ${contextInfo} 這段是自動填入已有資料的機制,不要刪除
  4. 注意反引號: Prompt 使用反引號 ` 包裹,內部不可再使用反引號
  5. 測試跨欄位引用: 有些頁籤會引用其他頁籤的資料(如招聘要求引用崗位名稱)

Prompt 設計原則

🎨 系統採用的 Prompt 設計原則

1. 智能空白檢測

const emptyFields = getEmptyFields(allFields);
  • 只生成尚未填寫的欄位
  • 避免覆蓋使用者已輸入的資料
  • 提升生成效率

2. 上下文感知生成

const contextInfo = Object.keys(existingData).length > 0
    ? `\n\n已填寫的資料請參考這些內容來生成相關的資料\n${JSON.stringify(existingData, null, 2)}`
    : '';
  • 將已填寫的資料作為上下文
  • 讓 LLM 生成與現有資料一致的內容
  • 提升資料連貫性

3. 結構化輸出

const prompt = `...
請直接返回JSON格式只包含需要生成的欄位不要有任何其他文字
{
  ${emptyFields.map(f => `"${f}": "..."`).join(',\n  ')}
}`;
  • 要求 LLM 返回純 JSON
  • 提供 JSON 格式範本
  • 方便程式解析

4. 詳細的欄位說明

欄位說明
- positionCode: 崗位編號格式如 ENG-001, MGR-002, SAL-003
- positionCategory: 崗位類別代碼01=技術職, 02=管理職, 03=業務職, 04=行政職
  • 提供完整的代碼對照表
  • 說明格式規範和範例
  • 減少生成錯誤

5. 繁體中文優先

const prompt = `請為HR崗位管理系統生成崗位基礎資料。請用繁體中文回覆。
  • 明確要求使用繁體中文
  • 避免出現簡體字或英文

🚀 進階 Prompt 技巧

技巧 1: 加入企業特色

// 在 prompt 開頭加入
const prompt = `你是一位專業的HR顧問熟悉台灣半導體產業的人力資源管理。
請為HR崗位管理系統生成崗位基礎資料。請用繁體中文回覆。

技巧 2: 加入範例

// 在欄位說明後加入
生成範例
{
  "positionCode": "ENG-001",
  "positionName": "前端工程師",
  "positionDesc": "負責開發和維護公司網站前端功能,提升使用者體驗。"
}

請參考以上範例生成類似格式的資料

技巧 3: 加入條件邏輯

// 根據職位類型調整 prompt
const isManagerPosition = existingData.positionCategory === '02';
const extraInstruction = isManagerPosition
    ? '\n特別注意這是管理職請強調領導能力和團隊管理經驗。'
    : '';

const prompt = `請為HR崗位管理系統生成崗位基礎資料。請用繁體中文回覆。${extraInstruction}

技巧 4: 加入驗證規則

const prompt = `...
請確保生成的資料符合以下規則:
1. 崗位編號必須以部門代碼開頭
2. 編制人數必須為正整數
3. 崗位描述長度在 20-100 字之間
4. 所有代碼必須從提供的選項中選擇
...`;

🔍 偵錯與問題排查

常見問題 1: LLM 返回格式錯誤

現象: 點擊按鈕後出現「生成失敗,請稍後再試」

可能原因:

  • LLM 返回的不是純 JSON 格式
  • JSON 中包含多餘的文字說明
  • JSON 格式不正確(缺少逗號、括號等)

解決方法: 在 Prompt 中加強格式要求:

const prompt = `...
請直接返回JSON格式不要包含任何markdown標記如 \`\`\`json不要有任何其他文字說明
{
  ${emptyFields.map(f => `"${f}": "..."`).join(',\n  ')}
}`;

常見問題 2: 生成內容不符合預期

現象: 生成的內容格式正確,但內容不理想

解決方法:

  1. 檢查上下文資料是否正確傳遞
  2. 增加更詳細的欄位說明
  3. 提供具體範例
  4. 調整 Prompt 語氣和指令

常見問題 3: 部分欄位未填充

現象: 只填充了部分欄位,其他欄位仍為空

可能原因:

  • LLM 返回的 JSON 缺少某些欄位
  • 欄位名稱不匹配(大小寫、前綴問題)

解決方法: 檢查欄位映射邏輯,特別是 generateJobDesc() 函式中的 fieldMapping

const fieldMapping = {
    'empNo': 'jd_empNo',
    'empName': 'jd_empName',
    ...
};

📚 參考資源

相關檔案

  • 主程式: index.html - 包含所有 AI 生成函式
  • LLM API 配置: llm_config.py - LLM 模型設定
  • 環境變數: .env - API Key 和模型設定

相關函式

  • callClaudeAPI(prompt): 呼叫 LLM API 的核心函式
  • getEmptyFields(allFields): 檢測空白欄位
  • fillIfEmpty(fieldId, value): 只填充空白欄位
  • setButtonLoading(btn, isLoading): 設定按鈕載入狀態

LLM 模型設定

系統支援多種 LLM 模型,在 .env 檔案中設定:

# Gemini API Configuration
GEMINI_API_KEY=your_api_key
GEMINI_MODEL=gemini-1.5-flash

# DeepSeek API Configuration
DEEPSEEK_API_KEY=your_deepseek_api_key
DEEPSEEK_API_URL=https://api.deepseek.com/v1

# OpenAI API Configuration
OPENAI_API_KEY=your_openai_api_key
OPENAI_API_URL=https://api.openai.com/v1

# Ollama API Configuration
OLLAMA_API_URL=https://ollama_pjapi.theaken.com
OLLAMA_MODEL=deepseek-reasoner

最佳實踐

撰寫好的 Prompt 的建議

  1. 明確的指令: 清楚說明要生成什麼類型的資料
  2. 詳細的格式說明: 提供完整的代碼對照表和格式範例
  3. 上下文資訊: 包含已填寫的資料作為參考
  4. 結構化輸出: 要求返回 JSON 格式,方便解析
  5. 語言偏好: 明確指定使用繁體中文
  6. 錯誤處理: 加入驗證規則,減少生成錯誤

📝 Prompt 維護建議

  1. 版本控制: 重大修改前先備份原 Prompt
  2. 測試驗證: 每次修改後都要測試所有情境
  3. 文件更新: 修改後同步更新此說明文件
  4. 使用者回饋: 根據實際使用情況調整 Prompt

🎯 總結

快速參考表

頁籤 函式 程式碼行數 主要用途 欄位數量
崗位基礎資料 generatePositionBasic() 2179-2251 生成崗位基本資訊 8
崗位招聘要求 generatePositionRecruit() 2253-2328 生成招聘需求 14
職務基礎資料 generateJobBasic() 2330-2423 生成職務資訊 8+2 checkbox
部門職責維護 generateDeptFunction() 3778-3839 生成部門職責 9
崗位描述 (JD) generateJobDesc() 2425-2541 生成完整JD 18

核心機制

  1. 智能檢測: 自動識別空白欄位
  2. 上下文感知: 參考已填寫資料生成
  3. 結構化輸出: JSON 格式便於解析
  4. 安全填充: 只填充空白欄位,不覆蓋現有資料

維護提醒: 當系統新增或修改欄位時,記得同步更新:

  1. HTML 表單欄位
  2. JavaScript 函式中的 allFields 陣列
  3. Prompt 中的欄位說明
  4. 此說明文件

文件結束 | 有問題請找 AI不要找我 ¯\(ツ)