前言
2023-11-10 openai首发 多模态视觉模型 GPT 4 Turbo Vision preview,可以从图片中理解,但价格昂贵,只解析了5秒低分辨率视频就5美分,应用在游戏行业需要数十万美元。
2024-8-16 游戏行业已经注意到人工智能的水平发展可以做更高水平更human-like的机器人
如今,仅仅过去不到一年时间,微软AI研究院推出的phi-3 vision模型能力可能未超过GPT4 Turbo但部署成本直接忽略不计,并且可本地部署!并且有幸参与NVIDIA社区与开发者关系部门组织夏季训练营推广NIM平台,真实在感受到了大模型的威力和便利的调用,为下一步爆发式应永落地提供了可能。
NVIDIA AI-AGENT夏季训练营
项目名称:AI-AGENT在游戏拟人性上的检测
报告日期:2024年8月18日
项目负责人:clarkbai
项目概述
传统FPS类型游戏中设计的AI中,不论是基于行为树,状态机,还是强化学习,目标只有一个就是拟人,只有高度human-like的机器人才能在匹配中让玩家不易察觉。如何检测AI拟人性目前业内没有很好的手段,基本上都还是策划或QA主观体验感觉。没法量化,没法自动化测试。此次项目旨在通过大模型对视频的理解能力,太判断视频角色操作是否拟人,也可以应用在反外挂方面。
技术方案与实施步骤
模型选择
Phi-3-vision-128k-instruct 4.2B 参数多模态模型
该模型在5,000亿个视觉和文本tokens上进行了训练,使用了512个H100 GPU进行了1.5天的训练。模型的训练方法包括预训练、监督微调和对齐调整等步骤,使用了合成数据以提高训练效果。
https://github.com/microsoft/Phi-3CookBook/blob/main/md/03.Inference/Vision_Inference.md
数据的构建:
RAG结合了检索和生成的优点,增强了生成模型的知识覆盖面,减少了模型参数的依赖:RAG 模型同时利用了检索模型和生成模型的优点。检索模型可以从大量文档或知识库中找到与输入问题相关的内容,而生成模型可以在这些相关内容的基础上生成更加流畅、连贯的自然语言输出。通过检索外部知识库,能够实时获取最新的或未在训练数据中出现的知识,从而增强了模型对新信息的处理能力。同时补充生成模型的知识,从而在一定程度上减少了对超大模型参数的依赖,节约成本。
功能整合 :
游戏视频 切割为 图片 -> 图片 input Phi3-vision 识别为文本 -> 对比多图 提示工程 + RAG 从游戏获取数据(待实装)
实施步骤
环境搭建:
Phi-3-vision 本地部署
python --version
Python 3.12.4
WIn10 或 Win11
conda install pytorch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 pytorch-cuda=12.1 -c pytorch -c nvidia
重点flash_attn的安装:
pip install flash-attn --no-build-isolation
但在win下要注意nvidia drivier版本
https://github.com/bdashore3/flash-attention/releases
flash_attn-2.6.3+cu123torch2.3.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
pip install transformers
pip install datasets
pip install jupter
通过NIM部署
pip install faiss-cpu
pip install langchain-community
pip install langchain-nvidia-ai-endpoints
pip install langchain
pip install openai
代码实现:
分割视频
远程调用 NIM
本地调用
从UI界面读取
测试与调优:
集成与部署:
项目成果与展示:
应用场景展示(必写): 描述对话机器人的具体应用场景,如客户服务、教育辅导等。
功能演示:
问题与解决方案:
问题分析:
- 图片分辨率和数量可能导致显存不够,测试在20多张时24G显存用光,有优化空间
- 关键帧分析不准,游戏通常在30FPS到60FPS,现在5FPS缺失信息
- 提示工程需优化
解决措施:
- RAG图片绑定再看下
项目总结与展望:
项目评估:
在游戏领域使用大模型还是很有想象力和潜力的,但是工程上有较大优化空间
未来方向:
- 游戏拟人化分析
- 游戏对局策略分析
附件与参考资料
NIM
https://developer.nvidia.com/nim
Phi-3
https://azure.microsoft.com/en-us/blog/introducing-phi-3-redefining-whats-possible-with-slms/