Skip to content

基于GiteeAI快速搭建自有DeepSeek

约 1194 字大约 4 分钟

DeepSeekGiteeAI本地部署

2025-02-04

前言

DeepSeek的能力有目共睹,但是最近对话服务由于一些外部原因经常出现无法响应的情况,用起来不是很顺畅。作为一个工程师,今天我们尝试通过一些免费资源快速搭建一个自用的DeepSeek。

  • 开发软件毋庸置疑是Cursor,只有不断使用,我们才能更加准确的把握它的能力范围。

  • 模型的话直接采用Gitee AI提供的Serverless API,重要的是,每个账号每天有100次免费使用机会。

前置知识

Gitee AI

“Gitee AI 的 Serverless API 为您提供开箱即用的企业级的大模型 API 服务。”

Gitee AI 提供模型体验、推理、微调、部署和应用的一站式服务,支持便捷的Serverless API方式,也支持模型部署方式,同时,还支持很多国产硬件平台,大家有需要可以上去看看。

其中Serverless API每个模型可以在线体验,也有demo代码直接使用。

20250204213819

Streamlit

Streamlit是一个开源的Python框架,工程师只需几行代码即可用它构建交互式数据应用,支持实时交互,无需前端知识。

ModelScope

ModelScope灵积平台是一个模型即服务(MaaS)平台,提供多种模型服务,包括模型推理和微调训练。

本次分享主要使用它提供的免费服务器。

实操

初始化

  1. 安装python3.12。
  2. 创建项目文件夹。
  3. 使用Cursor打开文件夹。
  4. 个人喜欢使用python的虚拟环境隔离各个应用的python环境,Ctrl+Shift+P创建虚拟环境。

20250204200220

整理需求(提示词)

需要注意以下几点:

  • 技术栈(streamlit、openai及版本)
  • Gitee AI接口Cursor不一定了解,可以通过demo告知
  • DeepSeek和普通对话模型不同的地方是需要显示思考过程
使用Streamlit帮我实现一个类似ChatGPT的智能对话助手。

前端需要注意响应内容应该区分思考过程和最终结果。
后端模型采用GiteeAI的Serverless API,示例代码如下:
---
from openai import OpenAI

client = OpenAI(
	base_url="https://ai.gitee.com/v1",
	api_key="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
	default_headers={"X-Failover-Enabled":"true","X-Package":"1910"},
)

response = client.chat.completions.create(
	model="DeepSeek-R1-Distill-Qwen-7B",
	stream=True,
	max_tokens=2048,
	temperature=0.6,
	top_p=0.8,
	extra_body={
		"top_k": 20,
	},
	frequency_penalty=1.1,
	messages=[
		{
			"role": "system",
			"content": "You are a helpful and harmless assistant. You should think step-by-step."
		},
		{
			"role": "user",
			"content": "Can you please let us know more details about your "
		}
	],
)
---
依赖:
streamlit==1.41.1
openai==1.61.0

Gitee AI 的Serverless API demo:

20250204194410

Cursor生成

该章节所有内容都是与Cursor协同完成。

初步生成

在Cursor Composer模式下,使用以上提示词进行生成。

20250204205353

上图中可以看到,已经按照我们要求进行生成了,下图则是总结生成代码并给出后续建议。

20250204205442

按照Cursor给出的后续步骤进行执行。

  1. 安装依赖。
  2. 设置Gitee AI Key。
  3. 运行。

初版运行效果

运行后的界面如下:

20250204212105

拿一个问题测试下。

问题

作为小学生家长,应该如何培养孩子学习的习惯。

结果

20250204212149

界面优化

思考过程有明显标识,优化显示效果。

提示词

响应结果中思考过程通过<think></think>进行分隔,请针对思考过程设置背景颜色进行明显区分。

生成结果

20250204212911

修改效果

20250204212738

部署

本次分享借助ModelScope(魔搭)平台进行,正常开发的话,一般会先搭建魔搭“创空间”,然后通过拉取git进行提交,本次分享的源码文件太少了,我直接手动上传源码相关文件。

将源码上传后,直接上线即可。

20250204203038

大家如果感兴趣,也可以访问体验下。

访问链接:https://modelscope.cn/studios/FlyFive/GiteeAIDeepSeek

总结

借助Cursor和Gitee AI,整个过程非常顺利。

强调几个地方:

  1. 不要期望Cursor自己完成全部任务,比如创建虚拟环境、设置依赖版本,还是手动比较高效,可以指定自己熟悉的版本。尤其是python依赖版本,我碰到过几次Cursor给出的版本都不是最新的,建议提前设置好。
  2. 提示词中如果需要调用特有的接口,可以提供demo代码,或者文档链接进行校正。