【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好像,所以有时候报错可能是上下文太长导致的。
相关推荐
qq_369173634 分钟前
让 Agent 自己完成交付:AI 生成内容的发布、反馈与自动修改闭环
人工智能·ai·效率工具·ai 工作流
每天死循环28 分钟前
ComfyUI 桌面版保姆级图文教程 · 第一节:从安装到出第一张图
ai·文生图·安装软件·comfyui·comfyui桌面版
曹牧41 分钟前
AI Agent规模化
ai
znnnk1 小时前
【AI应用】Agent:AI 为什么需要“自主决策”?
ai·prompt·agent·workflow·ai应用·skill·mcp
LuTshoes1 小时前
context 上下文工程
java·人工智能·spring·ai
SamChan902 小时前
PyMuPDF vs pdfplumber vs pypdf:PDF 文本提取实测对比(翻译预处理视角)
python·ai·pdf
2601_954811822 小时前
AI智能教育实验评分系统:4小时完成教测评一体化架构 — 系统设计
ai
xcLeigh2 小时前
Unity基础:使用Transform控制物体旋转——Rotate与LookAt详解
unity·教程·transform·rotate·lookat
vivo互联网技术2 小时前
告别“散装 AI ”:用 SKILL 编排对存量代码做“微创手术”
ai·编排·ai协作开发·ai skill·存量代码
VIP_CQCRE2 小时前
用 Ace Data Cloud 快速接入 OpenAI 语音识别:一行 base_url 改造,让音频转文字更简单
ai·openai·api·语音识别·acedatacloud