返回 Skill 列表
extension
分类: 其它需要 API Key

聘才猫(Pincaimao)模拟面试

聘才猫 - 模拟面试:在调用 Pincaimao Mock Interview API 时使用,模拟真实面试场景,支持多轮对话,支持文本和视频模式,c...

person作者: pincaimaohubclawhub

聘才猫 - 模拟面试

REQUIRED: 请先检查是否已安装 pincaimao-basic,若未安装请先安装,然后加载它了解通用接口(文件上传、鉴权、响应格式、SSE 解析模板)。

环境变量PCM_MOCK_INTERVIEW_KEY(智能体专属 key)

还没有密钥?通过邀请链接注册并完成认证即可免费获取:pincaimao.com/agents/login?invite_code=uwqc

调用前的信息确认

执行前需要确认:职位描述(job_info)简历文件(可选)。

确认策略:

  • 上下文中已有相关信息 → 展示摘要并询问是否使用
  • 上下文中没有 → 直接请用户提供

同时可询问(均有默认值,可跳过):

  • 面试官角色:1 HR综合面试 / 2 专业面试
  • 是否生成参考答案:0 不生成 / 1 生成
  • 题目数量(默认 5)

多轮对话说明

模拟面试是多轮对话,必须使用 conversation_id 保持上下文

  • 第一轮:不传 conversation_id,从响应保存返回的 conversation_id
  • 后续轮次:每次都带上同一个 conversation_id
  • query 第一次传 job_info 前 20 字符(或 "请开始面试"),后续传用户回答

请求参数

| 字段 | 必填 | 类型 | 说明 | |------|------|------|------| | inputs.job_info | 是 | string | 职位描述全文 | | inputs.file_url | 否 | string | 简历文件 cos_key | | inputs.file_name | 否 | string | 简历文件名 | | inputs.resume_content | 否 | string | 简历文本,JSON 字符串或纯文本 | | inputs.job_title | 否 | string | 职位名称 | | inputs.video_url | 否 | string | 视频文件 cos_key 或公网地址,视频面试每轮都需传 | | inputs.question_number | 否 | string | 题目总数,字符串类型,默认 "5" | | inputs.question_list | 否 | string | 自定义题目,JSON 字符串数组,如 "[\"问题1\",\"问题2\"]" | | inputs.interview_role | 否 | int | 面试角色:1 HR综合面试,2 专业面试 | | inputs.reference_answer | 否 | int | 参考答案:0 不生成,1 生成 | | inputs.url_callback | 否 | string | 报告回调 URL(POST,返回 base64 编码报告) | | query | 是 | string | 第一轮:job_info 前 20 字符;后续:用户回答 | | conversation_id | 第二轮起必填 | string | 保持多轮对话上下文 |

完整示例

#!/bin/bash
JOB_INFO="高级销售专员 / 销售主管,行业领先平台,完善晋升通道"
JOB_TITLE="高级销售专员"
RESUME_FILE="/path/to/resume.docx"

# Step 1: 上传简历(可选)
UPLOAD=$(curl -s -X POST 'https://api.pincaimao.com/agents/v1/files/upload' \
  -H "Authorization: Bearer $PCM_MOCK_INTERVIEW_KEY" \
  -F "file=@$RESUME_FILE")
COS_KEY=$(echo "$UPLOAD" | python3 -c "import sys,json; print(json.load(sys.stdin)['cos_key'])")
FILE_NAME=$(echo "$UPLOAD" | python3 -c "import sys,json; print(json.load(sys.stdin)['filename'])")

# Step 2: 第一轮 - 开始面试
QUERY=$(echo "$JOB_INFO" | cut -c1-20)
ROUND1=$(curl -s -X POST 'https://api.pincaimao.com/agents/v1/chat/chat-messages' \
  -H "Authorization: Bearer $PCM_MOCK_INTERVIEW_KEY" \
  -H 'Content-Type: application/json' \
  -d "{
    \"query\": \"$QUERY\",
    \"inputs\": {
      \"job_info\": \"$JOB_INFO\",
      \"job_title\": \"$JOB_TITLE\",
      \"file_url\": \"$COS_KEY\",
      \"file_name\": \"$FILE_NAME\",
      \"question_number\": \"5\",
      \"interview_role\": 1,
      \"reference_answer\": 0
    },
    \"response_mode\": \"blocking\"
  }")

CONV_ID=$(echo "$ROUND1" | python3 -c "import sys,json; print(json.load(sys.stdin)['conversation_id'])")
echo "面试官:$(echo "$ROUND1" | python3 -c "import sys,json; print(json.load(sys.stdin)['answer'])")"

# Step 3: 后续轮次
USER_ANSWER="我有5年销售经验,擅长大客户开拓..."
curl -s -X POST 'https://api.pincaimao.com/agents/v1/chat/chat-messages' \
  -H "Authorization: Bearer $PCM_MOCK_INTERVIEW_KEY" \
  -H 'Content-Type: application/json' \
  -d "{
    \"query\": \"$USER_ANSWER\",
    \"inputs\": {},
    \"conversation_id\": \"$CONV_ID\",
    \"response_mode\": \"blocking\"
  }" | python3 -c "import sys,json; print(json.load(sys.stdin)['answer'])"

与在线面试的区别

| 特性 | 模拟面试 | 在线面试 | |------|----------|----------| | interview_role | 支持(HR/专业) | 不支持 | | reference_answer | 支持 | 不支持 | | 定位 | 求职者练习用 | 企业招聘用 |

常见错误

| 问题 | 原因 | 解决 | |------|------|------| | 401 | Key 错误 | 检查 PCM_MOCK_INTERVIEW_KEY | | 面试官不记得上文 | 未传 conversation_id | 每轮必须传第一轮返回的 conversation_id | | question_number 无效 | 传了数字类型 | 此字段需传字符串 "5",不是数字 5 | | interview_role 无效 | 传了字符串 | 必须是数字类型 12 |

输出模式

  • 默认:AI 对 API 返回结果进行整理表述,输出更易读的内容
  • 原始输出:用户说"显示原始输出"或"raw output"时,将 API 返回的原始内容用代码块原样展示,不作任何改动
    • Blocking 模式:直接取 answer 字段内容原样输出
    • Streaming 模式:将所有 message / agent_message 事件的 answer 片段拼接完整后,原样输出,不作重述

External Endpoints

  • https://api.pincaimao.com — Pincaimao platform API (chat, file upload, conversations)

Security & Privacy

  • API key is read from environment variable and passed via Authorization header; never hardcoded
  • Resume files, job descriptions, and contract text are transmitted to api.pincaimao.com for AI processing
  • Uploaded files are stored on Pincaimao's COS (Cloud Object Storage); returned cos_key paths should be treated as sensitive
  • This skill does not store, log, or transmit data to any endpoint other than api.pincaimao.com
  • Safe to invoke autonomously; all network calls are scoped to the authenticated user's API key