引言
最近翻看小红书的时候就发现了一个不错的AIGC落地产品【智语面试】,展示的效果是:一个面试者通过视频会议进行面试,旁边AI助手实时显示提问者的问题,并给出相应的提示;


已知服务
1: 在线面试教练

2:AI面试助手

视频地址:https://www.bilibili.com/video/BV1cx421271Q
基础业务逻辑拆解
使用图示

从官网上来看,视频会议的是腾讯视频
基础业务流程

技术难点
1: 代理声卡/通过外放获取音频
https://github.com/jxlpzqc/TMSpeech
TMSpeech 是一个Windows下的中文实时语音字幕,通过WASAPI的CaptureLoopback捕获电脑声音(录内音),将语音实时转文字,并以歌词字幕的形式展示。即使完全关闭电脑声音也能使用。
https://k2-fsa.github.io/sherpa/onnx/index.html
使用下一代 Kaldi 和 onnxruntime 进行语音转文本、文本转语音和说话人识别,无需互联网连接。支持嵌入式系统、Android、iOS、Raspberry Pi、RISC-V、x86_64 服务器、websocket 服务器/客户端、C/C++、Python、Kotlin、C#、Go、NodeJS、Java、Swift、Dart、JavaScript、Flutter
2: 本地知识库
需要有大量的企业面试题库
以dify为例子

3:对外提供业务就需要线上知识库
1: 准备数据
计算机百科数据库
| id | url | title | text |
|---|---|---|---|
| 807 | https://ab.wikipedia.org | 阿萨亚 | А́andсуа бызш֙а́, adсшуа́ (, ) — Аudсны г֙ынЭЛарра бызшיас иамоуп. Ихалхно — |
计算机题库
| question | choices | answer | negate_openai_promptdict | neg_question |
|---|---|---|---|---|
| 以下哪项是物联网 (IoT) 上设备使用的示例? | [“一辆汽车向驾驶员发出警报,告知其即将撞上物体。”] | 2C | { "content": "以简短问题、具有长上下文的问题、填空查询或多个语句的形式给出文本。nn文本:以下哪项是物联网 (IoT) 上使用设备的示例?nn否定文本:", "role": "user" } | 下列哪项不是物联网 (IoT) 上设备使用的示例? |
编程语言数据库
| question | answer |
|---|---|
| c指针 | 嗯 是指针 |
简历数据库 或者按照模型维度拆分数据
| question | answer |
|---|---|
| 我的简历 | txt 一堆 |
2: 模型预训练
-
模型预训练脚本:train/pretrain/pretrain.sh
-
预训练实现代码:train/pretrain/pretrain_clm.py
-
DeepSpeed加速:
-
对于单卡训练,可以采用ZeRO-2的方式,参数配置见 train/pretrain/ds_config_zero2.json
-
对于多卡训练,可以采用ZeRO-3的方式,参数配置见 train/pretrain/ds_config_zero3.json
-
训练效果度量指标:train/pretrain/accuracy.py
3: 模型微调
| 工具 | 地址 |
|---|---|
| LlamaFactory | https://github.com/hiyouga/LLaMA-Factory |
| Unsloth | https://github.com/unslothai/unsloth |
| DeepSpeed-Chat | https://github.com/microsoft/DeepSpeedExamples/tree/master/applications/DeepSpeed-Chat |
| axolotl | https://github.com/axolotl-ai-cloud/axolotl |
4:推理加速
| 工具 | 地址 |
| vllm | https://github.com/vllm-project/vllm |
| Accelerate | https://huggingface.co/docs/accelerate/main/en/usage_guides/big_modeling#designing-a-device-map |
总结:如果实际线上使用的话 直接建议 智谱AI 他顺带还可以微调 这样的话 也方便
5:部署运行
| 工具 | 地址 |
|---|---|
| Gradio | https://www.gradio.app/ |
| Ollama | https://ollama.com/ |
| Xinference | https://inference.readthedocs.io/zh-cn/latest/index.html |
6: WebUI
| 工具 | 地址 |
|---|---|
| dify | https://dify.ai/ |
| fastgpt | https://fastgpt.in/ |

