NVIDIA AI-AGENT夏季训练营项目报告书

项目概述

本项目是常用的职场面试问答机器人,以帮助求职者更轻松的掌握的职场面试场景,提高面试通过率

该项目主要针对初入职场的求职者,以及像IT从业者等不善表达的人群,帮助他们了解常用的职场面试场景时的规范性回答。

技术方案与实施步骤

模型选择:

大语言模型(LLM)在自然语言处理和自然语言理解方面取得了重大突破。大模型与应用场景的结合有助于可以在降低成本的同时提高效率。在具体场景的落地中,通用领域的大模型缺乏具体的领域知识,需要对其进行微调,这将消耗大量的计算资源。

当前,检索增强生成(RAG)作为大语言应用的一种模式,可以将大语言模型强大的理解能力和领域知识相结合,可以提高模型准确性和效率。RAG主要流程分为两步:1. 从知识库中检索出和问题相关的内容;2.将相关的知识拼接到prompt中,让LLM基于相关知识和用户问题进行回答。

本项目使用了 phi-3-small-128k-instruct,Phi-3是由微软开发的一系列开放AI模型,旨在重新定义小型语言模型(SLMs)的可能性。Phi-3模型以其卓越的性能和高效的成本而著称,在各种语言、推理、编码和数学基准测试中表现优异。可在多个平台上使用。可在GPU、CPU甚至移动硬件上运行。作为NVIDIA NIM微服务提供,具有标准API接口,可在任何地方部署,并针对NVIDIA GPU进行了优化。

(资料来源:SLMs之Phi-3:Phi-3的简介、安装和使用方法、案例应用之详细攻略_phi3-CSDN博客

数据的构建

数据的构建,首先根据项目主题收集相关的数据资料,本项目旨在实现常用的面试模拟问答机器人,所以搜集了面试场景问答数据

数据向量化指的是使用机器学习技术,将各类非结构化数据转化为固定长度的数字向量的过程。这些数字向量也称为嵌入向量(Embedding Vector)。向量化后的数据在数学上可以表示为一个定长的数字列表(多维数组)。

数据向量化的意义在于它实现了一种可计算的表示方式来表达非结构化数据的语义信息。将非结构化数据映射到固定维度的向量空间中,使得机器可以“理解”这些数据的内在关联,并进行运算。

数据向量化开启了机器学习模型直接处理非结构化数据的可能性。这为大规模应用机器学习算法提供了基础,也推动了机器学习在推荐系统、搜索引擎、图像处理等领域的进展

                  

(原文链接:向量数据库与数据向量化技术综述-CSDN博客

实施步骤:

  1. 环境搭建(必写): 必要的软件:首先需要安装Minicond或Anaconda,第二步进入anaconda powershell prompt ,在打开的终端中按照下面的步骤执行,配置环境:

创建python 3.8虚拟环境:conda create --name ai_endpoint python=3.8

进入虚拟环境:conda activate ai_endpoint

安装nvidia_ai_endpoint工具:pip install langchain-nvidia-ai-endpoints

安装Jupyter Lab:  pip install jupyterlab

安装langchain_core:  pip install langchain_core

安装langchain:  pip install langchain

安装matplotlib:  pip install matplotlib

安装Numpy:  pip install numpy

安装faiss, 这里如果没有GPU可以安装CPU版本:  pip install faiss-cpu==1.7.2

安装OPENAI库:  pip install openai

在上面打开的终端中, 输入以下命令: jupyter-lab 打开jupyter-lab

                       

(来源:https://blog.csdn.net/kunhe0512/article/details/140910139)

  1. 代码实现(必写):

一、所以前提是登录Try NVIDIA NIM APIs

  1. 注册可获得NVAPI Key,具体过程参考网址说明。

  Step 1 - 使用NVIDIA_API_KEY

通过以下语句查询当前chatNVIDA可支持的模型,在运行结果里找到合适项目的模型,

Step 2 - 初始化SLM

  1. 这里我使用了 phi-3-small-128k-instruct模型,
  2. 在代码中,提问一个面试场景常用的问题“你的优点是什么?”我们可以看到执行结果,给到的答案并不是面试场景的回答,而是一段关于人工智能的优点的回答,为此,我们尝试使用rag来提高准确度。

Step 3 - 初始化ai-embed-qa-4向量模型

Step 4 - 获取文本数据集

数据集是我事先从网上找到的一段关于常见面试100问的文档。

项目成果与展示:

问题与解决方案:

  1. 问题分析: 在项目过程中,首先配置环境出现问题,可能是由于多次安装卸载软件导致的,所以,在配置环境过程中,如果环境没有配置成功,建议全部卸载,重新安装。
  2. 二是模型选择,如果选择的模型导致那段代码长时间没有结果,建议换一个模型继续
  3. 三是数据集的建立,数据集格式尽量少空格,特殊符号,避免段落过多,免得在执行过程中出错

项目总结与展望:

  1. 项目评估:该项目是简单的入门阶段的设想,旨在帮助了解体会大模型的搭建、流程、以及直观感受rag的优点,
  2. 未来方向: 有很多不足,仅仅作为入门,后面将继续改进,收集更高质量的数据集,获得更佳的效果。可以扩展领域,如构建一个属于个人的情绪表达问答机器人。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值