【AI】【Unity】关于Unity接入DeepseekAPI遇到的坑

前言

由于deepseek网页端在白天日常抽风,无法正常的使用,所以调用API就成了目前最好的选择,尤其是Deepseek的API价格低得可怕,这不是和白送的一样吗!然后使用过很多本地部署接入API的方式,例如Chatbox、PageAssist等,都很好用,今天突发奇想,准备自己写一个C#的版本集成到我的Unity项目中,一开始认为非常轻松,但事实上由于不熟悉UnityNetworking搞得时间比较长,现在就来总结一下遇到的问题。

遇到问题

  1. 如何直接从deepseek获取模型名称
  2. 调用Request的时候报错400

解决方法

  1. 由于在Unity中有专门的HTTP请求方式,所以并没有使用C#的Net模块,这也是第一个大坑!因为请求格式和普通的C#请求格式完全不同,所以要注意在Deepseek请求模型后返回的内容,id是模型名称(实际上就这个有用),object是"model",owned_by是"deepseek-ai",而这个模型名称就是我们在创建请求的时候要用到的,但是在请求是body内的填写的模型键值对的key是model和id不一样,导致了直接Get模型名称后,key值不一样,不能直接传到body内作为模型参数,而要改一下键值对,将"id":"deepseek-reasoner"改成"model":"deepseek-reseaoner",这样才能正常的使用指定模型!
  2. 报错400则大概率时本地传参时的错误,重点对照deepseek官网api调用的地方对应一下自己的参数名和参数类型都是否正确,我这里的问题是max_tokens写大了,deepseek-reason最大支持输出的token值是8k,我给了一个12k,所以传过去之后,发现参数非法,就给打回来了,对应的错误代码就是400了,当然大家如果遇到相同的问题,可能不是这个参数的问题,可能是其他参数的问题,总之就是检查一下传入的参数结构和合法性即可。

结语

真是要实际调用后才知道,调用api也能有这么多坑,后续如果还遇到有坑会继续更新本文,大伙有其他的问题也欢迎在评论区留言。

后续补充

  1. 400的错误还有可能是上下文过长导致的,deepseek的上下文仅支持64k,一个中文字符就有0.8token好像,所以有时候报错可能是上下文太长导致的。
相关推荐
赵庆明老师9 分钟前
安装ClaudeCode,接入DeepSeekV4
ai·deepseek·claude code
__WanG13 分钟前
Claude Code 多模型网关部署教程:从零实现多厂商大模型并行调度
ai·大模型·ai编程
paperzz论文20 分钟前
从选题到见刊:Paperzz 期刊论文智能写作,如何让学术发表 “一键提速”?
大数据·人工智能·ai·论文·ai写作
天草二十六_简村人21 分钟前
对接AI大模型之nginx代理配置SSE接口
运维·网络·nginx·http·阿里云·ai·云计算
一切皆是因缘际会32 分钟前
结构安全革命:下一代 AI 从 “不可控” 到 “绝对可控” 的范式跃迁
人工智能·安全·ai·架构
CODE2022031836 分钟前
promptfoo安装和demo使用
ai
电子云与长程纠缠1 小时前
UE5 GameFeature创建与使用
开发语言·学习·ue5·游戏引擎
易项1 小时前
催活自动化,用项目数字化平台让进度“自动跑”
经验分享·ai·项目管理·企业数字化转型·项目管理工具·易趋项目管理软件
笨蛋©1 小时前
[实战指南] 2026年工程图纸数字化与检验计划自动化的技术路径
ai·数字化·cad·质量管理·制造业
moonsims2 小时前
AiBrainLink:无人化系统异构连接架构-多执行体、多链路(5G+自组网)、多业务流(控制、遥测、视频、文件)透明传输、多对多控制
unity·游戏引擎