【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好像,所以有时候报错可能是上下文太长导致的。
相关推荐
94甘蓝1 小时前
第 12 篇 Dify 入坑记录:database插件连接未关闭
数据库·人工智能·ai·dify·dify插件
Elastic 中国社区官方博客9 小时前
Elasticsearch 开放推理 API 增加了对 Google 的 Gemini 模型的支持
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索·googlecloud
Python私教11 小时前
Unity 游戏开发「工业化级」学习路线 2025 版
学习·unity·游戏引擎
搞科研的小刘选手13 小时前
【多所高校主办】第七届机器人、智能控制与人工智能国际学术会议(RICAI 2025)
人工智能·机器学习·ai·机器人·无人机·传感器·智能控制
胡耀超15 小时前
AI应用开发入门,docker部署 Milvus + GPUStack (Attu+MinIO)的基础入门!
人工智能·docker·ai·大模型·milvus·rag·gpustack
CodeLinghu15 小时前
小智机器人连接抖音直播间教程
ai
于小汐在咯15 小时前
【Unity每日一记】Unity物理引擎:刚体与碰撞体详解
unity·游戏引擎
come1123417 小时前
Obsidian 入门教程
ai
CoderJia程序员甲19 小时前
GitHub 热榜项目 - 日榜(2025-10-29)
ai·开源·github·1024程序员节·ai教程
鱼蛋-Felix19 小时前
Unity jar更新不生效怎么解决
unity·游戏引擎·jar