5分钟带你获取deepseek api并搭建简易问答应用

目录

1、获取api

2、获取base_url和chat_model

3、配置模型参数

方法一:终端中临时将加入

方法二:创建.env文件

[4、 配置client](#4、 配置client)

5、利用deepseek大模型实现简易问答


deepseek-v3是截止博文撰写之日,无论是国内还是国际上发布的大模型中表现十分亮眼的模型,这里以deepseek为例,讲解如何获取api_key、base_url、chat_model。

1、获取api

首先打开deepseek接口的官网:DeepSeek

点右上角"开放平台"

​

新号一般会送10元的余额,左上方会显示你当前余额按照当前的价格所拥有的tokens数量(tokens可以简单的理解为你输入给大模型的提示词+大模型输出的内容之和所占用的字符数,这个后续博客中会细讲分词原理),这个tokens数量可能会随着模型价格变化而变化,不过deepseek的api价格比较便宜,如图上所展示的送给新人的500万tokens数也够个人使用很久了。

接着,点击左侧的API keys, 然后点击创建API key

​

一般需要给API key命名用来区分不同的API,比如下图命名为"test"

​ 这里需要注意的是,系统生成的API key只有第一次创建时能看到并且复制,此后都无法再次看到,只能看到名字,所以需要大家第一次就将其复制下来,保存到你的文件中,当然如果忘记了也影响不大,重新创建一个就行。

2、获取base_url和chat_model

同样以deepseek为例,点击2.1.1页面左下角的接口文档, 或者直接进入DeepSeek API文档

​

进入文档后,在"快速开始"的"首次调用API"中,可以找到base_url和chat_model,如下:

base_url = https://api.deepseek.com/v1

chat_model='deepseek-chat'

其他平台与deepseek的获取方式差不多

3、配置模型参数

base_url和chat_model直接定义即可,但api key是关乎着模型是否能够使用的,所以尽量不要把其暴露在模型定理里面,而是把他添加到环境变量里,这里介绍两种方法添加环境变量。

方法一:终端中临时将加入

在终端中临时将token加入变量,此时该环境变量只在当前终端内有效 !!! 所以该种方法需要我们在该终端中运行我们的py脚本。

java 复制代码
export api_key="填入你的api token"

若是想永久加入环境变量,可以对 ~/.bashrc 文件中添加以下内容并保存。

java 复制代码
export api_key="填入你的api token"

此时在代码中获取api 只需要在Python脚本中添加以下代码即可

python 复制代码
import os
api_key = os.getenv('api_key')
base_url = "https://api.deepseek.com/v1"
chat_model = "deepseek-chat"

方法二:创建.env文件

终端输入命令临时创建也比较麻烦,而且只在当前终端内有效,而创建.env文件存储api_key则不存在这种问题。

首先创建.env文件,然后输入以下内容,记得替换成你的token

python 复制代码
api_key="your api_key"

同一路径下创建脚本文件,然后在代码中添加以下内容

python 复制代码
import os
from dotenv import load_dotenv


# 加载.env文件中的环境变量
load_dotenv()

# 获取特定的环境变量
api_key = os.getenv('api_key')

base_url = "https://api.deepseek.com/v1"
chat_model = "deepseek-chat"

4、 配置client

有了前面的三个参数,我们就可以构造一个client,构造client只需要两个东西:api_key和base_url。

python 复制代码
from openai import OpenAI
client = OpenAI(
    api_key = api_key,
    base_url = base_url
)

5、利用deepseek大模型实现简易问答

我们这里使用第二种方式定义api_key,创建.env文件存储api_key后,在.env同一目录下创建脚本文件,填入以下代码:

python 复制代码
import os
from dotenv import load_dotenv
from openai import OpenAI
# 加载环境变量
load_dotenv()
# 从环境变量中读取api_key
api_key = os.getenv('api_key')
base_url = "https://api.deepseek.com/v1"
chat_model = "deepseek-chat"


client = OpenAI(
    api_key = api_key,
    base_url = base_url
)

有了这个client,我们就可以去实现各种能力了。

举个简单例子测试一下模型是否配置成功,配置好api的token后,输入以下代码

python 复制代码
import os
from dotenv import load_dotenv
from openai import OpenAI

# 加载环境变量
load_dotenv()

# 从环境变量中读取api_key
api_key = os.getenv('api_key')
base_url = "https://api.deepseek.com/v1"
chat_model = "deepseek-chat"

client = OpenAI(
    api_key=api_key,
    base_url=base_url
)

try:
    # 发送一个简单的消息到模型
    response = client.chat.completions.create(
        model=chat_model,
        messages=[
            {"role": "system", "content": "你是一个乐于助人的AI助手,能够帮助用户解决各种专业问题."},
            {"role": "user", "content": "你好,介绍下你自己"}
        ]
    )
    
    # 打印模型的回复
    print("Model response:")
    print(response.choices[0].message.content)
except Exception as e:
    print(f"An error occurred: {e}")

结果如下:

证明配置成功,如果没有回应,检查API key是否配置对了,如果对了可能是平台服务器的原因,等服务器恢复正常就好了

相关推荐
潘锦1 天前
DeepSeek Harness 的 Harness 到底做了什么
deepseek
Eloudy1 天前
sgl-kernel 项目的演进:不同时间点的角色与去向
llm·sglang
zhangfeng11331 天前
6篇RAG核心论文的工程启示:Vector + Graph + Agent路由混合架构实战
人工智能·架构·llm·agent
李剑一1 天前
为什么几乎所有的知名开源项目都是外国人写的?
前端·ai编程·deepseek
沛东的认知和实践2 天前
当 RAG 开始“要求找全”:一次 Agentic RAG 边界探索与 LLM Wiki 转向
llm·agent
Eloudy2 天前
《Attention Is All You Need》的 Encoder–Decoder Transformer 一次完整训练
llm·transformer
lucas_AI2 天前
自蒸馏也讲究因材施教:让每个 token 自己挑老师,数学推理白捡 5.9 分
llm
甘晴void2 天前
我给 Magpie 做了个 macOS 桌宠:106 段动画,请求一多就亮灯
macos·electron·开源·deepseek·桌面宠物·magpie
ZhengEnCi2 天前
同样的模型,为什么本地和云 API 差别那么大:量化精度、聊天模板与采样参数的三大元凶
人工智能·算法·llm
goehou2 天前
ReAct 循环跑偏的三种样子,以及怎么在工程上兜住
llm·agent·react·工具调用·工程实践