需要注意的是,作为专注推理的模型,DeepSeek Reasoner 不支持 temperature 参数(这与 O1 类似,都是为了保证推理结果的稳定性)。但 Spring AI 默认会添加此参数,这会导致如下错误:
Copy
Caused by: dev.ai4j.openai4j.OpenAiHttpException: {"error":{"message":"deepseek-reasoner does not support the parameter `temperature`","type":"invalid_request_error","param":null,"code":"invalid_request_error"}}
为了解决这个问题,我们需要添加一个请求拦截器来移除 temperature 参数,实现”越狱效果”:
Copy
@Configurationpublic class AIConfig { @Bean public RestClientCustomizer restClientCustomizer() { return restClientBuilder -> restClientBuilder.requestInterceptor((request, body, execution) -> { // 使用 jackson 解析请求体,去掉 temperature 参数 JSONObject entries = JSONUtil.parseObj(new String(body)); entries.remove("temperature"); return execution.execute(request, entries.toString().getBytes(StandardCharsets.UTF_8)); }).build(); }}
DeepSeek R1 的发布标志着中国大模型在推理能力上已经达到世界领先水平。通过 Spring AI 的集成,我们可以方便地使用这一强大的推理模型。虽然在参数兼容性上需要一些技术处理,但这丝毫不影响它在复杂推理场景下的出色表现。对于需要强大推理能力的应用场景,R1 是一个比 GPT-4 更专业、比 O1 更开放、比 V3 更专注的选择。它的开源特性更是为整个 AI 生态的发展提供了宝贵的资源。