人工智能大数据,工作效率生产力
Ctrl + D 收藏本站,更多好用AI工具
当前位置:首页 » 最新消息

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)

2025-03-06 28

目录

一,API创建与获取

二,直接进行API的调用

2.1 安装第三方库

2.2 官方支持的接口调用方式

2.3 编写的小tips

2.4 AI助手工具代码

三, 配置方面的说明

3.1 token价格和字符用量

3.2 响应错误码


最近在休息的时候也是一直会刷到关于deepseek,简单使用了一下,发现这个AI和以往使用过的有很大的不同,起码在我看来有了人性,今天突然发现官方开放了API,赶紧来玩一下,通过deepseek今后可以极大的提高开发工具的效率.

一, API创建与获取

API文档官网:

https://platform.deepseek.com/

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图

直接微信扫码登录即可,我是因为电脑登录着微信,直接快捷登录了,首次登录国内用户会有10CNY的额度赠送,当然如果不能注册的话可以挂个梯子微信会改为谷歌登录,用谷歌邮箱登录就可以了,只是没有免费额度,还挺亏的.

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图1

接下来点击旁边的API keys

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图2

点击创建API keys,会提示输入名称,输入key的名称后点击复制即可

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图3

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图4

此时点击复制即可,记住如果关闭后,是无法再次看到这个key的

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图5

请将此 API key 保存在安全且易于访问的地方。出于安全原因,你将无法通过 API keys 管理界面再次查看它。如果你丟失了这个 key,将需要重新创建。

此时只能,修改key的名称和删除key,无法看到秘钥了

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图6

二, 直接进行API的调用

2.1 安装第三方库

可以在命令行,也可以使用pyCharm等进行安装

pip3 install openai

如果用命令行的话,出现Successfully说明安装成功

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图7

2.2 官方支持的接口调用方式

这里我比较习惯使用Python,就用个示例简单做个示范,调用起来根据要写的东西,响应回来的时间也会不同,我这个也就半分钟作用

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图8

# -*- coding: UTF-8 -*- from openai import OpenAI client = OpenAI(api_key="填写自己的key", base_url="https://api.deepseek.com") response = client.chat.completions.create( model="deepseek-reasoner", messages=[ {"role": "system", "content": "你是一个GUI工具研发工程师"}, {"role": "user", "content": "帮我用Python写一个GUI界面的小助手,并且对接DeepSeek,给合适的提示词,用户会输入它所需要提问的信息,你做出回答,并响应到返回区," "并且响应区的信息进行复制,python的洁面一定要美观科技感,你可以在这个基础上帮我完善一下这个想法,并生成代码"}, ], stream=False ) print(response.choices[0].message.content) 

当然,在这个基础上的代码还是不够完善的,还需要进一步进行提示和自行更改,直到代码符合自己的需求.

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图9

通过AI编写代码,然后自己手工改进错误,当然,在这个基础上还可以进行进一步的改进.

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图10

2.4 AI助手工具代码

# -*- coding: UTF-8 -*- import tkinter as tk from tkinter import ttk, scrolledtext, messagebox import threading import requests import json import clipboard class DeepSeekAssistant: def __init__(self, root): self.root = root self.root.title("DeepSeek AI 助手") self.root.geometry("800x600") self.root.configure(bg='#1a1a1a') self.style = ttk.Style() self.style.theme_use('clam') # 自定义颜色方案 self.style.configure('TFrame', background='#1a1a1a') self.style.configure('TLabel', background='#1a1a1a', foreground='#00ff99') self.style.configure('TButton', background='#2d2d2d', foreground='white', font=('Helvetica', 10, 'bold'), borderwidth=1) self.style.map('TButton', background=[('active', '#3d3d3d'), ('pressed', '#4d4d4d')]) self.create_widgets() self.api_key = "xxxxxxxxxxxxxx你的api秘钥" # 替换为你的API密钥 self.api_url = "https://api.deepseek.com/chat/completions" def create_widgets(self): # 头部 header_frame = ttk.Frame(self.root) header_frame.pack(pady=10) self.logo_label = ttk.Label(header_frame, text="DeepSeek AI", font=('Arial', 18, 'bold'), foreground='#00ff99') self.logo_label.pack(side=tk.LEFT, padx=10) # 主内容区 main_frame = ttk.Frame(self.root) main_frame.pack(fill=tk.BOTH, expand=True, padx=20, pady=10) # 输入区 input_frame = ttk.Frame(main_frame) input_frame.pack(fill=tk.X, pady=5) self.input_entry = ttk.Entry(input_frame, font=('Arial', 12), foreground='black', background='#2d2d2d') self.input_entry.pack(side=tk.LEFT, fill=tk.X, expand=True, ipady=5) self.input_entry.bind("<Return>", lambda event: self.send_query()) self.send_btn = ttk.Button(input_frame, text="发送", command=self.send_query) self.send_btn.pack(side=tk.LEFT, padx=5) # 响应区 self.response_area = scrolledtext.ScrolledText(main_frame, wrap=tk.WORD, font=('Arial', 11), bg='#2d2d2d', fg='white', insertbackground='white') self.response_area.pack(fill=tk.BOTH, expand=True) self.response_area.tag_config('user', foreground='#00ff99') self.response_area.tag_config('assistant', foreground='white') # 右键菜单 self.context_menu = tk.Menu(self.root, tearoff=0) self.context_menu.add_command(label="复制", command=self.copy_text) self.response_area.bind("<Button-3>", self.show_context_menu) def show_context_menu(self, event): self.context_menu.tk_popup(event.x_root, event.y_root) def copy_text(self): selected = self.response_area.get(tk.SEL_FIRST, tk.SEL_LAST) if selected: clipboard.copy(selected) def send_query(self): user_input = self.input_entry.get().strip() if not user_input: messagebox.showwarning("输入为空", "请输入您的问题") return self.input_entry.delete(0, tk.END) self._append_message(f"你:{user_input}\n", 'user') threading.Thread(target=self._get_response, args=(user_input,)).start() def _append_message(self, message, tag): self.response_area.configure(state='normal') self.response_area.insert(tk.END, message, tag) self.response_area.configure(state='disabled') self.response_area.see(tk.END) def _get_response(self, prompt): headers = { "Authorization": f"Bearer {self.api_key}", "Content-Type": "application/json" } data = { "model": "deepseek-chat", "messages": [{"role": "user", "content": prompt}], "temperature": 0.7 } try: response = requests.post(self.api_url, headers=headers, json=data) response.raise_for_status() result = response.json() answer = result['choices'][0]['message']['content'] self._update_response_area(f"助手:{answer}\n\n", 'assistant') except Exception as e: error_msg = f"错误:{str(e)}" self._update_response_area(error_msg + "\n\n", 'assistant') def _update_response_area(self, text, tag): self.root.after(0, lambda: self._append_message(text, tag)) if __name__ == "__main__": root = tk.Tk() app = DeepSeekAssistant(root) # 设置窗口图标(准备一个ico文件) try: root.iconbitmap('tools.ico') # 需要准备图标文件 except: pass root.mainloop()

三, 配置方面的说明

3.1 token价格和字符用量

对于我们开发者或者学生来说,价格决定我们会不会继续使用,简介介绍一下Deepseek API方面

百万token只需要16快,方便使用,而且也不贵

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图11

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图12

3.2 响应错误码

如何通过Deepseek的API进行开发和使用(适合开发者和小白的学习使用教程)插图13

原文链接:https://blog.csdn.net/weixin_72543266/article/details/145481907?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522c2efefe7028a8aa23f30a2fa6a647e2c%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=c2efefe7028a8aa23f30a2fa6a647e2c&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-9-145481907-null-null.nonecase&utm_term=deepseek%E4%BD%BF%E7%94%A8

相关推荐

阅读榜

hellenandjeckett@outlook.com

加入QQ群:849112589

回顶部