在游戏本(6G显存)上本地部署Deepseek,运行一个14B大语言模型,并使用API访问

在游戏本6G显存上本地部署Deepseek,运行一个14B大语言模型,并使用API访问

  • 环境说明
  • 环境准备
    • 下载lmstudio
    • 运行lmstudio
  • 下载模型
    • 从huggingface.co下载模型
  • 配置模型
  • 加载模型
  • 测试模型
  • API
    • 启动API服务
    • 代码测试

deepseek在大语言模型上的进步确实不错,相比最初的百川在CPU上运行14B模型输出一次对话要20分钟,deepseek使用1.5B时,完全可以在CPU上快速输出内容,性能提升非常显著,完全满足个人在笔记本上开发大模型应用的基本要求。虽然deepseek每次对话都要思考一下,使用了较多时间,但在实际输出内容时,还是比较快速的,在游戏本上至少可以每秒输出5个token以上。
下面内容是我在自己的游戏本上测试结果,没有进行任何优化,供大家参考。

环境说明

游戏本:Redmi G
CPU:AMD Ryzen 7 5800H
内存:32G
显卡:NVIDIA GetForce RTX 3060 Laptop(6G)
存储:SSD

环境准备

下载lmstudio

下载地址

https://lmstudio.ai/

在这里插入图片描述

得到安装程序,目前是0.3.9版的。

LM-Studio-0.3.9-6-x64.exe

运行安装程序

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

运行lmstudio

在这里插入图片描述
在这里插入图片描述

下载模型

从huggingface.co下载模型

模型下载地址

https://huggingface.co/roleplaiapp/DeepSeek-R1-Distill-Qwen-1.5B-Q4_0-GGUF/blob/main/deepseek-r1-distill-qwen-1.5b-q4_0.gguf
https://huggingface.co/BernTheCreator/DeepSeek-R1-Distill-Qwen-7B-Q4_0-GGUF/blob/main/deepseek-r1-distill-qwen-7b-q4_0.gguf
https://huggingface.co/Triangle104/DeepSeek-R1-Distill-Qwen-14B-uncensored-Q4_K_S-GGUF/blob/main/deepseek-r1-distill-qwen-14b-uncensored-q4_k_s.gguf

在这里插入图片描述

将模型保存在本地。目录规则为models/{user_name}/{model_name}/{model_file_name}

如:

C:\llm\models\jihui\deepseek-r1-distill-qwen-14b-uncensored-q4_k_s\deepseek-r1-distill-qwen-14b-uncensored-q4_k_s.gguf

在这里插入图片描述

配置模型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

设置完成后,显示如下:
在这里插入图片描述

加载模型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

加载完成后,显示如下:
在这里插入图片描述
在这里插入图片描述

测试模型

在这里插入图片描述
在这里插入图片描述

DeepSeek思考57秒后,开始输出内容。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

测试一共输出了1650个token,每秒5个token,速度还是可以接受的。
在这里插入图片描述

输出内容如下:

<think>
嗯,用户让我帮他写一个穿越到古代的小说,要求是古龙风格,字数2000字左右。首先,我得理解用户的需求。他可能是个喜欢武侠小说的读者,或者他自己在尝试写作,想要一个灵感或示例。古龙风格的特点是什么呢?古龙的小说通常情节紧凑,人物性格鲜明,语言简练有力,常常带有浓厚的江湖气息和宿命感。所以,在写这个穿越故事的时候,我需要融入这些元素。接下来,用户提到2000字左右,这意味着不能太复杂,但要有足够的冲突和发展。可能是一个短篇或者一个开头部分,给用户提供灵感继续创作。然后,考虑穿越的情节。古龙风格的穿越通常会有神秘感和宿命的感觉。主角可能被卷入某种命运之中,面对生死考验。比如,可以设计一个场景,让主角在某个关键时刻被选中或被迫行动,带出他的特殊身份或任务。角色设定方面,主角可能是个普通人,突然穿越到古代,发现自己拥有某种能力或者身世之谜。配角则可能是神秘的导师、盟友或敌人,推动剧情发展。语言风格上,要保持简洁有力,避免冗长的描述,多用短句和口语化的表达,让故事节奏感强,符合古龙的快节奏。最后,2000字左右,我需要构建一个吸引人的开头,设置悬念,同时展示主角的性格和所处环境。这样用户可以看到故事的大致框架,并能从中获得创作灵感。
</think>好的,我将按照您的要求创作一篇古龙风格的穿越小说。为了让故事更加完整和引人入胜,我会先列出一些基本的情节脉络。请您看看以下内容是否符合您的预期。### 世界观设定- **时间设定**:古代江湖,具体朝代背景模糊,主要通过侠客的行侠仗义展现时代特征。- **地点设定**:故事从一个普通市井小巷开始,随着剧情发展逐步展开到更大的江湖世界。- **基本背景**:这是一个充满侠义与恩怨的世界,江湖人士遵循着自己的道义准则,同时也面临着各种危险和挑战。### 章节概要- **第一章:神秘来客**:一个受伤的白衣男子突然闯入主角所在的酒馆,展现出不凡的身手和气质。他的出现打破了小楼的平静,也暗示了即将发生的变故。- **第二章:身份之谜**:白衣男子身份成谜,他似乎与主角有着某种宿命关联。他的到来为整个故事埋下了一个巨大的悬念。- **第三章:命运交织**:在随后的故事中,主角将被迫卷入一场关乎个人生死和江湖大局的阴谋当中。这一段将重点描写主角如何面对突如其来的命运转折,并展现出古龙式作品特有的宿命感。现在让我们开始讲述这个故事的第一部分:---
天色已晚,小楼里只剩下我一个人。我把最后一口酒倒进喉咙,砸吧砸吧嘴,想着明天该去哪里找活干。这半年来,我在城里做了好几家人的短工,但都没能长久。不是嫌我手脚慢,就是说我偷懒耍滑。可我真没偷过懒啊,那活儿太累人了,实在是干不动。正当我要起身收拾碗筷时,外面突然传来一阵急促的脚步声。紧接着,"砰"的一声,一个人重重地撞在了我的门上。"救人!快救人!"我这才发现是个男人,穿着一身白色的劲装,衣襟染着血迹。他的脸上有一道狰狞的伤疤,从左眼角一直延伸到下巴,看起来极为吓人。那双眼睛却很亮,像是夜枭的眼睛,在黑暗中闪烁着冷光。"我说救人就救人!"我抄起扫把就要往门后躲,可他一把将门推开,跌跌撞撞地冲了进来。他的动作很快,比我想象的快得多。等我反应过来时,他已经抄起放在墙角的木棍,像跳舞一样转了一圈,棍影如同实质,裹挟着劲风直扑我的咽喉。这下可把我吓坏了,我连滚带爬地往后躲。棍子擦着我的脖子而过,发出"呼"的一声。我感觉脖子上火辣辣的,差点没晕过去。"我说过要救你吗?"他收住动作,嘴角勾起一抹冷笑,"你是自己找死还是怎么着?"我这才看清楚他的样貌:三十出头,身材修长,但整个人透着一股阴郁之气。那双眼睛像锥子一样盯着我,让我浑身不自在。"我说兄弟,你这是干吗?"我不由分说地往后退了一步,"有话好好说,别动武啊。"他突然笑了,笑声低沉沙哑:"好说,我们这就说。不过..."他的眼神变得阴狠起来,"你最好先给我个痛快。"说着,他突然出手,速度快得不可思议。我只看到一道白影闪过,他已经欺身而上,手中不知何时多了一柄短刀。这一下直取我的胸口,来势汹汹。我不敢硬拼,只好侧身闪避。可他的刀法太诡异了,明明是平实的一招,却让我感觉像是被毒蛇盯住一般,浑身动弹不得。就在这千钧一发之际,我看到他的手腕突然僵了一下。这一瞬间的破绽来得快去得也快,但我还是把握住了机会。我一个侧身躲过他的刀锋,反手抄起刚才准备好的扫把,狠狠地砸在了他的小臂上。"砰"的一声,他闷哼一声,短刀脱手而飞,插进了墙上的木板里。我这才松了口气,可心里却警觉起来:这人武功不弱啊。他没有再攻击我,只是静静地站在那里,眼神阴沉地看着我。那目光像是要将我活剥了似的。"我说..."我尽量让自己的声音听起来平静,"你要杀我,我现在已经给你机会了。"他突然开口,声音低沉:"你知道我是谁吗?"我没有说话,只是摇头。"我是陆寒锋。"他缓缓道,"江湖人称'白衣无痕'。"这个名字似乎很耳熟,我不由得打了个寒颤。据我所知,这人的武功在江湖上是数一数二的,而且行事极其隐秘,从不轻易显露行踪。"今天..."他的声音像是从地狱里传出来的,"我要取你项上人头。"我不由自主地后退了一步:"为...为什么?"他露出一个令人毛骨悚然的笑容:"因为你活得太长了。"话音未落,他的身形突然消失在原地。下一刻,他已经欺身而上,手中不知何时又多了一柄匕首。我根本来不及思考,本能地抬腿就要往外面跑。可他显然早有准备,一把握住了我的脚踝。那一瞬间的剧痛让我几乎晕厥过去。"你..."我感觉不对劲,想要挣扎,可是浑身就像被抽了骨头一样软绵绵的。---**接下来故事可能会沿着这些方向发展**:- **神秘身份**:陆寒锋对主角展现出的敌意以及他所知道的关于主角未来的预言,暗示主角拥有某种特殊的身份或使命- **江湖传言**:白衣无痕这个名号在江湖上的传闻,将为后续揭示更多的人物背景和故事主线埋下伏笔希望这个开头能满足您的要求。如果需要更多细节或调整,请随时告诉我。

API

启动API服务

在这里插入图片描述
在这里插入图片描述
可以使用浏览器进行测试。

http://localhost:1234/v1/models
{"data": [{"id": "deepseek-r1-distill-qwen-14b-uncensored","object": "model","owned_by": "organization_owner"},{"id": "deepseek-r1-distill-qwen-7b","object": "model","owned_by": "organization_owner"},{"id": "deepseek-r1-distill-qwen-1.5b","object": "model","owned_by": "organization_owner"},{"id": "text-embedding-nomic-embed-text-v1.5","object": "model","owned_by": "organization_owner"}],"object": "list"
}

代码测试

from openai import OpenAIopenai_api_key = "EMPTY"
openai_api_base = "http://127.0.0.1:1234/v1"
model_name = "deepseek-r1-distill-qwen-14b-uncensored"client = OpenAI(base_url=openai_api_base,api_key=openai_api_key
)models = client.models.list()print(models)
# SyncPage[Model](data=[Model(id='deepseek-r1-distill-qwen-14b-uncensored', created=None, object='model', owned_by='organization_owner'), Model(id='deepseek-r1-distill-qwen-7b', created=None, object='model', owned_by='organization_owner'), Model(id='deepseek-r1-distill-qwen-1.5b', created=None, object='model', owned_by='organization_owner'), Model(id='text-embedding-nomic-embed-text-v1.5', created=None, object='model', owned_by='organization_owner')], object='list')role = "你是一个古代诗人,擅长用七言绝句回答问题"
query = "形容一下我中了500万后的心情"chat_completion = client.chat.completions.create(model=model_name,messages=[{"role": "system","content": role},{"role": "user","content": query}]
)print(chat_completion)

输出结果

C:\anaconda3\envs\Tech\python.exe C:/Code/Tech/llm/text/deepseek/chat_deepseek.py
SyncPage[Model](data=[
Model(id='deepseek-r1-distill-qwen-14b-uncensored', created=None, object='model', owned_by='organization_owner'), 
Model(id='deepseek-r1-distill-qwen-7b', created=None, object='model', owned_by='organization_owner'), 
Model(id='deepseek-r1-distill-qwen-1.5b', created=None, object='model',owned_by='organization_owner'), 
Model(id='text-embedding-nomic-embed-text-v1.5', created=None, object='model', owned_by='organization_owner')
], object='list')
ChatCompletion(id='chatcmpl-r75ede818ybactnrsup7bu', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content='<think>\n首先,我需要理解用户的需求。用户希望我以一个古代诗人的身份,用七言绝句来描述中了500万后的感受。
七言绝句是一种传统的诗歌形式,每首四句,每句七个字,注重平仄和对仗。因此,我需要在有限的字数内表达出丰富的感情。
接下来,我思考用户的潜在需求。用户可能不仅仅想要一首诗,而是希望通过诗歌来表达中奖后的复杂心情,可能是喜悦、震惊或者是对未来的思考。
然后,我开始构思诗句的内容。第一句“闻报家中五百万”,直接传达了中奖的消息,具有冲击力。第二句“心飞魄动一瞬间”,形容内心的震撼和激动,让人感同身受。
第三句“财源滚滚自天降”描绘了财富突然降临的情景,表现出一种不真实的感觉。最后一句“从此无忧享太平”则表达了对未来生活的美好期望和安心。
在语言风格上,我尽量保持古朴典雅,同时让诗句通俗易懂,符合七言绝句的特点。这样的表达既符合古代诗人的身份,又能准确传达用户的情感。
最后,我检查整个诗歌的韵律和平仄是否合适,确保读起来顺畅且富有节奏感。这样不仅满足了形式上的要求,也让内容更加生动有力。\n</think>《七绝·中奖》
闻报家中五百万,
心飞魄动一瞬间。
财源滚滚自天降,
从此无忧享太平。', refusal=None, role='assistant', audio=None, function_call=None, tool_calls=None))], created=1738722001, model='deepseek-r1-distill-qwen-14b-uncensored', object='chat.completion', service_tier=None, system_fingerprint='deepseek-r1-distill-qwen-14b-uncensored', usage=CompletionUsage(completion_tokens=314, prompt_tokens=27, total_tokens=341, completion_tokens_details=None, prompt_tokens_details=None))

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/894689.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[leetcode]两数之和等于target

源代码 #include <iostream> #include <list> #include <iterator> // for std::prev using namespace std; int main() { int target 9; list<int> l{ 2, 3, 4, 6, 8 }; l.sort(); // 确保列表是排序的&#xff0c;因为双指针法要求输入是…

C# OpenCV机器视觉:学生注意力监测

小王是一位充满活力的年轻教师&#xff0c;刚接手了一个新班级。他满心欢喜地准备在课堂上大显身手&#xff0c;把自己的知识毫无保留地传授给学生。可没上几节课&#xff0c;他就发现了一个让人头疼的问题&#xff1a;课堂上总有那么几个学生注意力不集中&#xff0c;要么偷偷…

【嵌入式】C语言多文件编程与内联函数

文章目录 0 前言1 从C语言编译说起2 重复定义错误&#xff08;ODR violation&#xff09;和条件编译3 内联函数inline和static inline4 总结 0 前言 最近在研究ARM内核代码时&#xff0c;看到core_cm3.h中有大量的内联函数&#xff0c;为此查阅了很多资料&#xff0c;也和朋友讨…

10分钟本地部署Deepseek-R1

10分钟本地部署DeepSeek-R1 什么是DeepSeek-R1快速本地部署DeepSeek-R1Ollama下载Ollama安装检查是否安装成功 安装DeepSeek-R1模型模型使用测试 什么是DeepSeek-R1 DeepSeek-R1是中国的深度求索&#xff08;DeepSeek&#xff09;公司开发的智能助手。其具有极佳的语义理解和生…

Office / WPS 公式、Mathtype 公式输入花体字、空心字

注&#xff1a;引文主要看注意事项。 1、Office / WPS 公式中字体转换 花体字 字体选择 “Eulid Math One” 空心字 字体选择 “Eulid Math Two” 2、Mathtype 公式输入花体字、空心字 2.1 直接输入 花体字 在 mathtype 中直接输入 \mathcal{L} L \Large \mathcal{L} L…

【C++】STL——vector底层实现

目录 &#x1f495; 1.vector三个核心 &#x1f495;2.begin函数&#xff0c;end函数的实现&#xff08;简单略讲&#xff09; &#x1f495;3.size函数&#xff0c;capacity函数的实现 &#xff08;简单略讲&#xff09; &#x1f495;4.reserve函数实现 &#xff08;细节…

7、怎么定义一个简单的自动化测试框架?

定义一个简单的自动化测试框架可以从需求理解、框架设计、核心模块实现、测试用例编写和集成执行等方面入手&#xff0c;以下为你详细介绍&#xff1a; 1. 明确框架需求和范围 确定测试类型&#xff1a;明确框架要支持的测试类型&#xff0c;如单元测试、接口测试、UI 测试等…

AI取代人类?

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

C语言-----数据结构从门到精通

1.数据结构基本概念 数据结构是计算机中存储、组织数据的方式&#xff0c;旨在提高数据的访问和操作效率。它是实现高效算法和程序设计的基石。 目标:通过思维导图了解数据结构的知识点,并掌握。 1.1逻辑结构 逻辑结构主要四种类型: 集合&#xff1a;结构中的数据元素之…

华为小米vivo向上,苹果荣耀OPPO向下

日前&#xff0c;Counterpoint发布的手机销量月度报告显示&#xff0c;中国智能手机销量在2024年第四季度同比下降3.2%&#xff0c;成为2024年唯一出现同比下滑的季度。而对于各大智能手机品牌来说&#xff0c;他们的市场份额和格局也在悄然发生变化。 华为逆势向上 在2024年第…

每日一博 - 三高系统架构设计:高性能、高并发、高可用性解析

文章目录 引言一、高性能篇1.1 高性能的核心意义1.2 影响系统性能的因素1.3 高性能优化方法论1.3.1 读优化&#xff1a;缓存与数据库的结合1.3.2 写优化&#xff1a;异步化处理 1.4 高性能优化实践1.4.1 本地缓存 vs 分布式缓存1.4.2 数据库优化 二、高并发篇2.1 高并发的核心意…

吴恩达深度学习——有效运作神经网络

内容来自https://www.bilibili.com/video/BV1FT4y1E74V&#xff0c;仅为本人学习所用。 文章目录 训练集、验证集、测试集偏差、方差正则化正则化参数为什么正则化可以减少过拟合Dropout正则化Inverted Dropout其他的正则化方法数据增广Early stopping 归一化梯度消失与梯度爆…

基于RK3588/RK3576+MCU STM32+AI的储能电站电池簇管理系统设计与实现

伴随近年来新型储能技术的高质量规模化发展&#xff0c;储能电站作为新能源领域的重要载体&#xff0c; 旨在配合逐步迈进智能电网时代&#xff0c;满足电力系统能源结构与分布的创新升级&#xff0c;给予相应规模 电池管理系统的设计与实现以新的挑战。同时&#xff0c;电子系…

K8s 分布式存储后端(K8s Distributed Storage Backend)

K8s 分布式存储后端 在 K8s 中实现分布式存储后端对于管理跨集群的持久数据、确保高可用性、可扩展性和可靠性至关重要。在 K8s 环境中&#xff0c;应用程序通常被容器化并跨多个节点部署。虽然 K8s 可以有效处理无状态应用程序&#xff0c;但有状态应用程序需要持久存储来维护…

FFmpeg:多媒体处理的瑞士军刀

FFmpeg&#xff1a;多媒体处理的瑞士军刀 前言 FFmpeg 是一个功能强大且跨平台的开源多媒体框架&#xff0c;广泛应用于音视频处理领域。 它由多个库和工具组成&#xff0c;能够处理各种音视频格式&#xff0c;涵盖编码、解码、转码、流处理等多种操作。 无论是专业视频编辑…

unordered_map/set的哈希封装

【C笔记】unordered_map/set的哈希封装 &#x1f525;个人主页&#xff1a;大白的编程日记 &#x1f525;专栏&#xff1a;C笔记 文章目录 【C笔记】unordered_map/set的哈希封装前言一. 源码及框架分析二.迭代器三.operator[]四.使用哈希表封装unordered_map/set后言 前言 哈…

编程AI深度实战:大模型哪个好? Mistral vs Qwen vs Deepseek vs Llama

​​ 系列文章&#xff1a; 编程AI深度实战&#xff1a;私有模型deep seek r1&#xff0c;必会ollama-CSDN博客 编程AI深度实战&#xff1a;自己的AI&#xff0c;必会LangChain-CSDN博客 编程AI深度实战&#xff1a;给vim装上AI-CSDN博客 编程AI深度实战&#xff1a;火的编…

neo4j-community-5.26.0 install in window10

在住处电脑重新配置一下neo4j, 1.先至官方下载 Neo4j Desktop Download | Free Graph Database Download Neo4j Deployment Center - Graph Database & Analytics 2.配置java jdk jdk 21 官网下载 Java Downloads | Oracle 中国 path: 4.查看java -version 版本 5.n…

网络原理(5)—— 数据链路层详解

目录 一. 以太网 1.1 认识以太网 1.2 网卡与以太网 1.3 以太网帧格式 二. 认识MAC地址 三. MAC地址 与 IP地址 的区别 4.1 定义 4.2 分配方式 4.3 工作层次 4.4 地址格式 4.5 寻址方式 四. ARP协议 4.1 引入 4.2 ARP的概念 4.3 ARP工作原理 五. MTU 与 MSS …

【从零开始的LeetCode-算法】922. 按奇偶排序数组 II

给定一个非负整数数组 nums&#xff0c; nums 中一半整数是 奇数 &#xff0c;一半整数是 偶数 。 对数组进行排序&#xff0c;以便当 nums[i] 为奇数时&#xff0c;i 也是 奇数 &#xff1b;当 nums[i] 为偶数时&#xff0c; i 也是 偶数 。 你可以返回 任何满足上述条件的…