使用django调用deepseek api,搭建ai网站

一、deepseek简介

DeepSeek是一家人工智能公司,专注于开发先进的人工智能模型和技术。以下是关于DeepSeek的一些详细介绍:

1.公司背景

DeepSeek由杭州深度求索人工智能基础技术研究有限公司开发,致力于通过创新的技术和算法,推动人工智能领域的发展。

2.技术与模型

  • DeepSeek-V3:这是DeepSeek开发的一个大型语言模型,具有超过600B的参数,在多项性能指标上与国际顶尖模型相当。
  • DeepSeek-R1:这是DeepSeek的第一代推理模型,通过大规模强化学习(RL)进行训练,展示出了在推理任务上的优异性能。
  • DeepSeek-R1-Distill:这些是从DeepSeek-R1中蒸馏出的小模型,具有更好的性能和效率,适合在资源受限的环境中使用。

3.应用领域

  • 自然语言处理:DeepSeek的模型在文本生成、知识问答、推理等任务中表现出色,能够为用户提供高质量的语言交互服务。
  • 智能助手:DeepSeek开发了AI智能助手,可用于搜索、写作、阅读、解题、翻译等多种任务,帮助用户提高效率。

4.优势与特点

  • 成本优势:DeepSeek的模型训练成本低,调用接口成本也较低,具有较高的性价比。
  • 中文处理能力强:对中文语法、成语、文化背景理解更深入,在中文文本生成、摘要、情感分析等任务中表现自然。
  • 开源优势:DeepSeek-R1模型权重和技术报告开源,便于开发者二次开发和创新。

5.产品与服务

  • DeepSeek API:提供与OpenAI兼容的API,方便开发者将DeepSeek的模型集成到自己的应用中。
  • DeepSeek App:提供AI智能助手应用,可在App Store上下载,支持多种功能,如智能对话、搜索、写作等。

二、获取apikey

deepseek官方的api暂时无法充值,我使用的是阿里云的百炼平台的deepseek v1模型,阿里云百炼平台注册送百万token,可以白嫖。打开百炼控制台,开通服务,随便选择一个模型,点击右上角的“查看我的apikey”,获取apikey。

使用django调用deepseek api,搭建ai网站_第1张图片

三、创建django项目,并startapp

使用django创建一个新的项目,python manage.py startapp chat新建app作为主要代码文件夹。

四、编写代码

chat\views.py

from django.shortcuts import render
from openai import OpenAI
import os
from django.conf import settings


def get_ai_response(messages):
client = OpenAI(
api_key="xxx",//填写apikey
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)


try:
    completion = client.chat.completions.create(
        model="qwen2.5-14b-instruct-1m",
        messages=messages
    )
    return {
        'content': completion.choices[0].message.content,
        'reasoning': getattr(completion.choices[0].message, 'reasoning_content', '')
    }
except Exception as e:
    return {
        'content': f"发生错误:{str(e)}",
        'reasoning': ''
    }

def chat_view(request):
if 'messages' not in request.session:
request.session['messages'] = []


if request.method == 'POST':
    user_message = request.POST.get('message', '')
    if user_message:
        request.session['messages'].append({'role': 'user', 'content': user_message})

        response = get_ai_response(request.session['messages'])

        request.session['messages'].append({
            'role': 'assistant',
            'content': response['content'],
            'reasoning': response['reasoning']
        })

        request.session.modified = True

return render(request, 'chat.html', {
    'messages': request.session['messages']
})

要将api_key="xxx"中xxx替换为自己的apikey。

urls.py

from django.contrib import admin
from django.urls import path
from chat import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.chat_view, name='chat'),
]

前端代码




    AI对话助手(Markdown支持版)
    
    
    
    


    

AI对话助手

{% for message in messages %}
{% if message.role == 'user' %} 用户 {% else %} 助手 {% endif %}
{{ message.content|safe }}
{% if message.reasoning %}
思考过程
{{ message.reasoning|safe }}
{% endif %}
{% endfor %}
{% csrf_token %}

迁移数据库

python manage.py makemigrations
python manage.py migrate

五、效果展示

使用django调用deepseek api,搭建ai网站_第2张图片

六、将模型切换为deepseek

切换模型只要修改model="qwen2.5-14b-instruct-1m"为deepseek.

你可能感兴趣的:(人工智能)