Jupyter虚拟环境创建和Deepseek API调用
“如果改变不了环境,那就改变自己去适应环境!”
python的IDE和交互工具有很多,本人开发python习惯使用spyder和jupyter,前者用来做工程项目开发,后者用来做一些数据交互测试,因为jupyter的交互可视化比较便捷。下面基于Win10 + Python 3.10.11操作。
创建运行环境
首先创建虚拟环境,安装jupyter
> python -m venv D:\virtual_env\python_env\DeepseekApi
> cd /d D:\virtual_env\python_env\DeepseekApi\Scripts
> activate.bat
执行activate切换到虚拟环境后安装jupyter和openai(使用这个库实现deepseek api调用)库
> pip install jupyter
> pip install jupyterlab-language-pack-zh-CN # 这个是jupyter中文扩展包
> pip install openai
安装完成后pip list看下包的版本:
jupyter==1.1.1
openai==1.93.0
启动jupyter交互环境
在虚拟环境下启动jupyter,指定数据和代码存储路径(F:\DeepseekCode\),启动成功后一般会自动打开web交互页面,如果没有就自己打开浏览器输入地址,默认地址端口是http://localhost:8888/,可以根据启动信息查看到访问地址、端口和登录token信息。
jupyter-lab F:\DeepseekCode

登录jupyter页面后点击Setting->language->选择中文就可以切换到中文界面,点击之后有个提示框,选择“change and reload”自动重新加载页面就可以了。

在启动页上点击“笔记本”下面的python图标创建一个标签页就可以开始敲代码了。

调用Deepseek API
1、首先,登录deepseek开放平台设置API key,初次注册的用户还能免费获赠10元的消费金(有效期1个月),注册后赶紧用不然过期后就只能充值,具体价格跟选择的模型相关,官方说明的很详细了。


2、在jupyter标签页输入调用代码,替换自己创建的API KEY,Deepseek提供了两种模型,这里示例代码选用了deepseek-chat,两种模型的区别这里不赘述,但是deepseek-reasoner会返回的思维链内容,这点会前者稍微不同。
from openai import OpenAI
API_KEY='sk-65f******5a491' # 这里替换成自己设置的API KEY
API_URL='https://api.deepseek.com'
DC_MODEL='deepseek-chat'
DR_MODEL='deepseek-reasoner'
client = OpenAI(api_key=API_KEY, base_url=API_URL)
response = client.chat.completions.create(
model=DC_MODEL,
messages=[
{'role': 'system', 'content': '你是一名儿童心理学专家'},
{'role': 'user', 'content': f'''小明是初三学生,最近一次模拟考试成绩不理想,上课无法集中精神听课,不再与同学交流。请根据小明的情况给予心理疏导意见。'''}
],
stream=False
)
# deepseek-reasoner输出的思维链内容
# print(response.choices[0].message.reasoning_content)
print(response.choices[0].message.content)
下面是接口返回的内容

3、多轮对话需要将上一轮的发送信息和接收信息加入到当前发送的消息里。
messages = [{'role': 'user', 'content': f'''小明是初三学生,最近一次模拟考试成绩不理想,上课无法集中精神听课,不再与同学交流。请根据小明的情况给予心理疏导意见。'''}]
# 加上返回的内容
messages.append(response.choices[0].message)
# 再加入第二轮对话的信息
messages.append({'role': 'user', 'content': '现在学生普遍学习压力较大,针对小明这个例子写一篇1000字左右的文章,倡议家长一起陪同并关心孩子的成长。文字中体现的语气和段落顺序要适合视频制作。'})
# 调用API
response = client.chat.completions.create(
model=DC_MODEL,
messages=messages,
stream=False
)
print(response.choices[0].message.content)
这里需要留意API对上下文长度限制64K,而且API是输入+输出双向计费。
总结
从最早的chat-GPT到现在的Deepseek,AI大模型越来越多,相应的针对大模型开发的应用也越来越丰富,AI大模型研究门槛比较高,但应用门槛相对较低。在竞争日益激烈的环境里,IT人一定要及时适应变化,拥抱变化,改变不了环境就改变自己。
Jupyter虚拟环境创建和Deepseek API调用的更多相关文章
- Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...
- 2.4使用属性在 ASP.NET Web API 2 路由创建一个 REST API
Web API 2 支持一种新型的路由,称为属性路由.属性路由的一般概述,请参阅属性路由 Web API 2 中.在本教程中,您将使用属性路由创建一个 REST API 集合的书.API 将支持以下操 ...
- Sphinx中文分词安装配置及API调用
这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...
- Sphinx中文分词详细安装配置及API调用实战
这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...
- jquery api调用
本框架内置组件以及部分插件都可以通过jquery选择器进行API调用,支持链式操作,如下示例. <script type="text/javascript"> $(&q ...
- 002.Create a web API with ASP.NET Core MVC and Visual Studio for Windows -- 【在windows上用vs与asp.net core mvc 创建一个 web api 程序】
Create a web API with ASP.NET Core MVC and Visual Studio for Windows 在windows上用vs与asp.net core mvc 创 ...
- 五:用JAVA写一个阿里云VPC Open API调用程序
用JAVA写一个阿里云VPC Open API调用程序 摘要:用JAVA拼出来Open API的URL 引言 VPC提供了丰富的API接口,让网络工程是可以通过API调用的方式管理网络资源.用程序和软 ...
- novaclient的api调用流程与开发
novaclient的api调用流程与开发 2015年07月05日 19:27:17 qiushanjushi 阅读数:3915 http://blog.csdn.net/tpiperatgod/ ...
- 腾讯地图 API 调用入门
本文仅为腾讯地图 API 调用入门,如需进阶学习,请在腾讯位置服务网站上进行学习. 登陆网址 https://lbs.qq.com/ 点击右上角的登陆按钮,需要进行注册按照流程进行就好. 完成之后,选 ...
- 阿里云 API调用实践(python语言)
1.结论:阿里云的SDK开发,其实就是远程调用API,python的代码就是一个外壳,核心是封装成一个http报文,利用json格式,进行RPC调用. 2.SDK调用API的套路如下: # -*- c ...
随机推荐
- 小白也能行【手撕ResNet代码篇(附代码)】:详解可复现
目录 前言 model BasicBlock 和Bottleneck ResNet ResNet18\34\50\101\152 data train test 代码运行以及测试结果 前言 之前已经给 ...
- Linux 给用户 赋某个文件夹操作的权限(实现三权分立)
Linux 给用户 赋某个文件夹操作的权限 这里用的ubuntu16.04 一.配置网站管理员 linux文件或目录的权限分为,读.写.可执行三种权限.文件访问的用户类别分为,文件创建者.与文件创建者 ...
- 四十种AI编程工具,让你码字如飞
用过AI编程工具的都知道,这玩意儿虽说还有待完善,但是确实能提高效率啊,真香啊. 是这样的,最近一个同学离职,我临时接手了他的BI数据后台,我一个不会前端的人,使用AI编程工具,发送简单的指令,竟然使 ...
- pikachu靶场的详细搭建,附pikachu靶场源码下载链接
一.安装好phpstudy 首先搭建pikachu靶场的第一步,先是安装好phpstudy,这是一款集成环境的软件,里面包含了Apache,FTP,MySQL,Nginx.phpstudy的官方网址: ...
- 代码随想录第十四天 | Leecode 103. 二叉树的层序遍历、226. 翻转二叉树、101. 对称二叉树、104. 二叉树的最大深度、111. 二叉树的最小深度
写在前面 今天补一下昨天没有写的层序遍历,层序遍历有整整十道题,打算只在博客详细写一道,后续的题目就自己在Leecode上刷一刷得了,不准备全部写下来(计划是只在博客给出每一道题目的链接).除此之外还 ...
- 构建现代交互式平台:CodeBuddy如何简化复杂系统开发
我正在参加CodeBuddy「首席试玩官」内容创作大赛,本文所使用的 CodeBuddy 免费下载链接:腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴 交互式平台的架构挑战 构建现代 ...
- Autocad二次开发中的XData
Autocad允许应用程序在实体对象上附加XDATA(扩展数据).XDATA可以附在任何图形实体以及层,线型等非图形实体上,Autocad负责维护这些信息,但不使用这些信息,也不在图纸中直接表现出来. ...
- 京东首页html+css1.0
小菜鸟的学习记录,还望各位猿兄不吝赐教 文章目录 效果图 源码 HTML文件 css文件 效果图 源码 HTML文件 <!DOCTYPE html> <html> <he ...
- 特殊恢复:最简单的BBED修改ASM的数据块的方法
我们的文章会在微信公众号Oracle恢复实录和博客网站同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳. 前天在客户现场遇 ...
- 想要精准营销,从学习搭建一套对的标签体系开始丨DTVision分析洞察篇
在人与人打交道的过程中,我们会在有意无意间给周围的人通过贴标签的方式进行大致的判断,比如好说话的.难相处的.聪明的.爱热闹的--贴标签就是用最快的速度将人和事归类,这是人类运用"模式识别&q ...