当前位置: 首页 > news >正文

【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好像,所以有时候报错可能是上下文太长导致的。

http://www.mrgr.cn/news/93356.html

相关文章:

  • 键值对(C++实现)
  • OpenAI Deep Research
  • 010---基于Verilog HDL的分频器设计
  • YOLOv12改进之A2(区域注意力)
  • 洛谷 P1480 A/B Problem(高精度详解)c++
  • 【大模型篇】推理模型大作战(QwQ-32B vs DeepSeek-R1)
  • Gartner发布2025年网络安全六大预测
  • FusionInsight MRS云原生数据湖
  • ROS2 Rviz 实战:给 panda 机械臂场景塞个圆柱体
  • Redis数据结构-Zset有序集合
  • 【JAVA架构师成长之路】【持久层】第2集:SQL常用优化手段
  • 从零开始的 Kafka 学习(一)| 概念,Java API
  • 【JAVA架构师成长之路】【JDK源码】第5集:Map集合框架与泛型
  • 【leetcode hot 100 73】矩阵置零
  • PythonWeb开发框架—Flask工程创建和@app.route使用详解
  • Redis|集群 Cluster
  • 软考架构师笔记-存储管理
  • 【15】蚂蚁链产品与服务
  • AI绘画软件Stable Diffusion详解教程(6):文生图、提示词细说与绘图案例
  • java+jvm笔记