如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
我在业余时间开发了一款自己的独立产品:升讯威在线客服与营销系统。陆陆续续开发了几年,从一开始的偶有用户尝试,到如今线上环境和私有化部署均有了越来越多的稳定用户。
随时近来 AI 大模型的火热,越来越多的客户,问到过能否把客服系统接入 DeepSeek,或者其它大语言模型。
说干就干,看看实现效果吧:

本文将提供一个详细的示例,展示如何调用 DeepSeek 的自然语言处理 API 接口。我们将以情感分析为例,演示如何发送请求、处理响应以及处理可能的错误。
如何调用 DeepSeek 接口
1. 准备工作
在开始之前,请确保完成以下步骤:
注册 DeepSeek 账户:访问 DeepSeek 官网 并注册一个账户。
获取 API 密钥:登录后,进入“开发者中心”或“API 管理”页面,创建一个新的 API 密钥。
安装必要的库:我们将使用 Python 的
requests库来发送 HTTP 请求。如果尚未安装,可以通过以下命令安装:pip install requests
2. 情感分析 API 示例
DeepSeek 的情感分析 API 可以分析一段文本的情感倾向(如正面、负面或中性)。以下是一个完整的示例代码,包含详细的注释和错误处理。
2.1 示例代码
import requests
import json
# DeepSeek 情感分析 API 端点
url = "https://api.deepseek.com/v1/sentiment-analysis"
# 替换为你的 API 密钥
API_KEY = "YOUR_API_KEY"
# 请求头,包含 API 密钥和内容类型
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
# 请求体,包含待分析的文本
data = {
"text": "DeepSeek 的 API 非常易于使用,文档也很清晰!",
"language": "zh" # 可选参数,指定文本语言
}
try:
# 发送 POST 请求
response = requests.post(url, headers=headers, data=json.dumps(data))
# 检查响应状态码
if response.status_code == 200:
# 解析 JSON 响应
result = response.json()
print("情感分析结果:")
print(f"文本: {result.get('text')}")
print(f"情感倾向: {result.get('sentiment')}")
print(f"置信度: {result.get('confidence')}")
else:
# 处理错误响应
print(f"请求失败,状态码: {response.status_code}")
print(f"错误信息: {response.text}")
except requests.exceptions.RequestException as e:
# 处理网络请求异常
print(f"网络请求失败: {e}")
except json.JSONDecodeError as e:
# 处理 JSON 解析异常
print(f"JSON 解析失败: {e}")
except Exception as e:
# 处理其他异常
print(f"发生未知错误: {e}")
2.2 代码说明
API 端点:
url是 DeepSeek 情感分析 API 的端点地址。- 如果需要调用其他 API(如文本分类、实体识别等),请参考 DeepSeek API 文档 修改端点地址。
请求头:
Authorization字段包含 API 密钥,用于身份验证。Content-Type字段指定请求体的格式为 JSON。
请求体:
text是待分析的文本。language是可选参数,用于指定文本的语言(如zh表示中文,en表示英文)。
错误处理:
- 检查 HTTP 状态码是否为
200,表示请求成功。 - 如果状态码不是
200,输出错误信息。 - 捕获网络请求异常、JSON 解析异常和其他未知异常。
- 检查 HTTP 状态码是否为
响应解析:
- 成功响应是一个 JSON 对象,包含以下字段:
text:原始文本。sentiment:情感倾向(如positive、negative或neutral)。confidence:置信度(0 到 1 之间的浮点数,表示结果的可靠性)。
- 成功响应是一个 JSON 对象,包含以下字段:
2.3 示例输出
如果请求成功,代码将输出类似以下内容:
情感分析结果:
文本: DeepSeek 的 API 非常易于使用,文档也很清晰!
情感倾向: positive
置信度: 0.95
如果请求失败,代码将输出错误信息,例如:
请求失败,状态码: 401
错误信息: {"error": "Unauthorized", "message": "Invalid API key"}
3. 扩展功能
DeepSeek 提供了多种自然语言处理功能,以下是一些常见的 API 接口及其用途:
文本分类:
- 用途:将文本分类到预定义的类别中。
- 示例:新闻分类、垃圾邮件检测。
实体识别:
- 用途:识别文本中的人名、地名、组织名等实体。
- 示例:从文本中提取关键信息。
关键词提取:
- 用途:从文本中提取重要的关键词。
- 示例:生成文本摘要。
语言检测:
- 用途:检测文本的语言。
- 示例:多语言内容处理。
4. 最佳实践
缓存结果:
- 对于重复的请求,可以将结果缓存到本地,以减少 API 调用次数。
限制请求频率:
- 避免频繁调用 API,以免触发速率限制。
处理大文本:
- 如果文本过长,可以将其分块处理,或使用 DeepSeek 提供的分块处理功能。
监控 API 使用情况:
- 定期检查 API 使用情况,确保未超出配额。
如何将 DeepSeek 与客服系统集成
其实,我们只需要将 API key 填写到客服系统 Web 管理后台 AI 设置 中的 DeepSeek 参数设置即可。因为客服系统后台已经完成了相关的接口调用开发。

简介下这个 .net 开发的小系统
升讯威在线客服与营销系统是一款客服软件,但更重要的是一款营销利器。
- 可以追踪正在访问网站或使用 APP 的所有访客,收集他们的浏览情况,使客服能够主动出击,施展话术,促进成单。
- 可嵌入网站、手机 APP、公众号、或者通过 URL 地址直接联系客服。
- 支持访客信息互通,可传输访客标识、名称和其它任意信息到客服系统,与您的业务系统对接。
- 可全天候 7 × 24 小时挂机运行,网络中断,拔掉网线,手机飞行模式,不掉线不丢消息,欢迎实测。


希望能够打造: 开放、开源、共享。努力打造 .net 社区的一款优秀开源产品。
钟意的话请给个赞支持一下吧,谢谢~
如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统的更多相关文章
- .net core 和 WPF 开发升讯威在线客服系统:调用有道翻译接口实现实时自动翻译的方法
业余时间用 .net core 写了一个在线客服系统.并在博客园写了一个系列的文章,写介绍这个开发过程. 我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免 ...
- .net core 和 WPF 开发升讯威在线客服系统:调用百度翻译接口实现实时自动翻译
业余时间用 .net core 写了一个在线客服系统.并在博客园写了一个系列的文章,写介绍这个开发过程. 我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免 ...
- 【python】调用sm.ms图床api接口,实现上传图片并返回url
图床简介 sm.ms网站提供免费的图床服务.单图上传大小限制5MB,每次最多上传10张,支持多种图片链接格式和api接口调用. 获取令牌 注册账号并登录,点击User-Dashboard 点击API ...
- 使用Swagger和OpenAPI 3规范定义API接口并集成到SpringBoot
1. OpenAPI 3 规范介绍及属性定义 参考官方定义:https://swagger.io/specification/ 2. 使用OpenAPI 3规范定义API接口 官方样例参考:https ...
- WebApi系列~通过HttpClient来调用Web Api接口~续~实体参数的传递
回到目录 上一讲中介绍了使用HttpClient如何去调用一个标准的Web Api接口,并且我们知道了Post,Put方法只能有一个FromBody参数,再有多个参数时,上讲提到,需要将它封装成一个对 ...
- 1688关键字搜索新品数据API接口(item_search_new-按关键字搜索新品数据)
1688关键字搜索新品数据API接口(item_search_new-按关键字搜索新品数据)代码接口教程如下: 公共参数 名称 类型 必须 描述key String 是 调用key(必须以GET方式拼 ...
- 京东获得店铺的所有商品API接口(item_search_shop-获得店铺的所有商品)
京东获得店铺的所有商品API接口(item_search_shop-获得店铺的所有商品)接口展示说明及教程: 公共参数 名称 类型 必须 描述key String 是 调用key(必须以GET方式拼接 ...
- 使用飞信api接口实现短信发送(只能发送好友)
找了很久才找到一个能用的飞信API接口(http://quanapi.sinaapp.com/fetion.php?u=飞信登录手机号&p=飞信登录密码&to=接收飞信的手机号& ...
- Spring Boot入门(四):开发Web Api接口常用注解总结
本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 在程序员的日常工作中,Web开发应该是占比很重的一部分,至少我工作以来,开发的系统基本都是Web端访问的 ...
- 微信小程序+OLAMI(欧拉蜜)自然语言API接口制作智能查询工具--快递、聊天、日历等
微信小程序最近比较热门,再加上自然语义理解也越来越被人关注,于是我想赶赶潮流,做一个小程序试试.想来想去快递查询应该是一种比较普遍的需求. 如果你也在通过自然语言接口做点什么,希望我的这篇博客能帮到你 ...
随机推荐
- Debian 11 (bullseye) 国内软件源
本文整理了Debian 11在国内的几个软件源. 1.使用说明 一般情况下,将/etc/apt/sources.list文件中Debian默认的软件仓库地址和安全更新仓库地址修改为国内的镜像地址即 ...
- Zstd-数据压缩组件
Zstandard 简称Zstd,是一款快速实时的开源数据压缩程序,由Facebook开发,源码是用C语言编写的.相比业内其他压缩算法(如Gzip.Snappy.Zlib)它的特点是:当需要时,它可以 ...
- Qt编写地图综合应用57-跨平台(win、linux、mac、uos、kylin等)
一.前言 跨平台着实花了不少的精力,为了从Qt4.7兼容到Qt6.2及后续版本,头发掉了不少,仅有的几根毛所剩无几,哎,可能这就是程序员的命,本人写Qt程序这么多年,比较喜欢支持多个Qt版本,尤其是钟 ...
- Qml 中实现水印工具
[写在前面] 在 Qt 的 Quick 模块中,QQuickPaintedItem 是一个非常有用的类,它允许我们在 Qml 中自定义绘制逻辑. 我们可以通过这种方式实现水印工具,包括在文本.图片或整 ...
- ls小技巧
一.ls -rt ls的功能是列出指定路径下的所有文件,但是有时候文件太多,不方便查找哪些是新生成的文件时,可以使用ls -t或ls -rt命令. ls -t ls -rt 那是什么意思呢?这里-t就 ...
- 零基础Windows Server搭建部署Word Press 博客系列教程(3):弱鸡变猛男之部署CDN加速和缓存加速
我们博客里面存在的各种媒体文件.压缩文件.脚本文件,这些文件可能很大而且不需要随时生成.如果我们的服务器带宽很小,访问我们网站的用户等待加载完成就需要很长时间,那么访问速度会很慢.因此我们需要通过第三 ...
- Solution -「牛客 31454H」Permutation on Tree
\(\mathscr{Description}\) Link. 给定一棵含有 \(n\) 个点的有根外向树, 对于所有满足树形拓扑关系的结点遍历顺序 \(p_{1..n}\) 求出 \(\su ...
- C:条件编译
问题 #ifdef HELIB_DEBUG long pa, pb; std::vector<long> slots; decryptBinaryNums(slots, a, *dbgKe ...
- gitblit 安装
github 私有代码库收费属于正常商业操作,毕竟现在鼓励开源,但是受到美国出口管制,这就有些不妙了. 所以有必要自己搭建一个私有的托管服务,经过比较并且,选择了gitblit(因为最近偶尔搞搞jav ...
- 基于生成式AI的访问控制, 迁移传统安全策略到基于LLM的风险分类器
基于规则的风险分类 风险分类是网络安全系统的核心能力之一,它将访问请求和命令映射到其风险级别/类别:高(High).中(Medium).低(Low).目前,即便是在大规模环境中,风险分类器仍主要采用基 ...