Aigc 本地接入deepseek-api

开发环境

  • 开发环境:MacBook Pro Sonoma 14.5
  • 开发工具:PyCharm 24.3.3

需求整理(提示词)

  • 直接使用PyCharm安装Continue插件,配置好deepseek参数后生成代码
  • 一次:请帮我用python编写一个程序,功能如下:功能分为服务端和客户端(浏览器),服务端启动后,用户使用浏览器提出问题,服务端调用deepseek的api接口进行消息回复。
  • 二次:index页面中的英文变成中文,提问框增加回车提交的功能,上边的问题和回答展示框做成可滚动的,防止问题过多的时候挡住看不见,每个问题发送之后进行计时,接收到回答的时候结束计时,并在问题的旁边展示时间,小字体灰色,单位秒。

服务端代码

  • 这里目录层次上有一些问题,手动调整了一下,使用deepseek生成的data也有问题,只包含了messages参数,没有其他参数。用Kimi在浏览器中生成没有这个问题。
from flask import Flask, request, jsonify, render_template
import requests, os, json

os.chdir(os.path.dirname(os.path.abspath(__file__)))
app = Flask(__name__)

# DeepSeek API的URL和API密钥
DEEPSEEK_API_URL = "https://api.deepseek.com/v1/chat/completions"
DEEPSEEK_API_KEY = "Your api-key"


@app.route('/')
def index():
    return render_template('index.html')


@app.route('/chat', methods=['POST'])
def chat():
    user_message = request.json.get('message')
    if not user_message:
        return jsonify({"error": "No message provided"}), 400

    # 构造 DeepSeek API 请求
    headers = {
        "Authorization": f"Bearer {DEEPSEEK_API_KEY}",
        "Content-Type": "application/json"
    }
    data = {
        "model": "deepseek-chat",  # 使用 DeepSeek-V3 模型
        "messages": [
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": user_message}
        ],
        "stream": False
    }

    # 调用 DeepSeek API
    response = requests.post(DEEPSEEK_API_URL, headers=headers, data=json.dumps(data))
    print(response)
    if response.status_code == 200:
        response_data = response.json()
        assistant_message = response_data['choices'][0]['message']['content']
        return jsonify({"message": assistant_message})
    else:
        return jsonify({"error": "Failed to get response from DeepSeek API"}), 500

if __name__ == '__main__':
    app.run(debug=True)

客户端代码




    
    
    与 DeepSeek 聊天
    


    

与 DeepSeek 聊天

Aigc 本地接入deepseek-api_第1张图片

你可能感兴趣的:(AI乱炖,AIGC,deepseek,pycharm,python)