智能简历平台Plus——基于LLaMA-Factory 对 ChatGLM-6B 进行专业领域微调(12)

功能实现

个性化职业评价

  • 微调后的模型根据用户输入的 MBTI、星座、性别、专业等信息,生成职业评价和建议。
  • 输入用户信息: 用户在前端界面输入自己的 MBTI、星座、性别、专业等信息。
  • 调用模型服务: 前端将用户信息发送到后端的微调模型,获取职业评价和建议。
  • 生成反馈: 模型基于训练中学习到的知识,生成职业建议并提供详细的说明。
  • API 调用
function getCareerAdvice(userInfo) {
    fetch('http://<your_server_ip>:5000/evaluate', {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        body: JSON.stringify(userInfo)
    })
    .then(response => response.json())
    .then(data => {
        console.log('Career Advice:', data);
        displayAdvice(data);
    })
    .catch(error => {
        console.error('Error:', error);
    });
}

前端展示

  • 在前端页面中显示模型生成的职业评价和建议:
<div id="career-advice">
    <!-- 职业建议将显示在这里 -->
</div>
 
<script>
function displayAdvice(data) {
    const adviceElement = document.getElementById('career-advice');
    adviceElement.innerHTML = `
        <h3>职业建议: ${data.advice}</h3>
        <p>详细说明: ${data.details}</p>
    `;
}
</script>
  • 系统集成
  • 前端集成
  • 在前端项目中添加输入框和按钮,用户可以提交个人信息并查看职业建议。
<form id="user-info-form">
    <label for="mbti">MBTI:</label>
    <input type="text" id="mbti" name="mbti">
    
    <label for="star-sign">星座:</label>
    <input type="text" id="star-sign" name="star-sign">
    
    <label for="gender">性别:</label>
    <input type="text" id="gender" name="gender">
    
    <label for="major">专业:</label>
    <input type="text" id="major" name="major">
    
    <button type="button" id="submit-info-button">获取职业建议</button>
</form>
 
<script>
document.getElementById('submit-info-button').addEventListener('click', function() {
    const userInfo = {
        mbti: document.getElementById('mbti').value,
        star_sign: document.getElementById('star-sign').value,
        gender: document.getElementById('gender').value,
        major: document.getElementById('major').value
    };
    getCareerAdvice(userInfo);
});
</script>

后端集成

  • 在阿里云服务器上部署微调后的模型服务,并提供 API 接口。
from flask import Flask, request, jsonify
from transformers import AutoModelForSequenceClassification, AutoTokenizer
 
app = Flask(__name__)
 
model = AutoModelForSequenceClassification.from_pretrained('./path_to_finetuned_model')
tokenizer = AutoTokenizer.from_pretrained('./path_to_finetuned_model')
 
@app.route('/evaluate', methods=['POST'])
def evaluate():
    data = request.json
    user_info = f"MBTI: {data['mbti']}, 星座: {data['star_sign']}, 性别: {data['gender']}, 专业: {data['major']}"
    inputs = tokenizer(user_info, return_tensors='pt')
    outputs = model(**inputs)
    advice = "你适合从事软件开发、项目管理等工作。"
    details = "根据你的 MBTI 类型、星座特征、性别和专业背景,这些职业方向与您的个性和兴趣匹配度较高。"
    return jsonify({'advice': advice, 'details': details})
 
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)

测试与优化

  1. 测试模型服务 在浏览器中访问 http://<your_server_ip>:5000,确保模型服务正常工作。
  2. 测试前端集成 点击“获取职业建议”按钮,输入用户信息,检查是否可以正确获得职业评价和建议。
  3. 示例测试场景 直接访问:
    验证是否能打开模型服务页面,并观察职业建议是否准确。 API 调用:
    输入示例信息,如“MBTI: INTJ,星座: 天蝎座,性别: 男,专业: 计算机科学”,检查模型生成的职业建议是否合理。
  4. 模型优化 根据测试结果进行调整:
    增加数据集规模: 扩展数据集的覆盖范围,提升模型的泛化能力。 调整超参数: 根据模型表现,优化学习率、批量大小等超参数。 改进数据质量:
    添加更多的标准职业建议和详细解释,提升模型的输出质量
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值