本地部署deepseek-Ollama+langchain+langserver
1.5B 是最小的模型,大小为1GB左右,7B,8B模型大小在8GB左右,想要调用模型的话根据自己电脑的配置选择(我个人下载体验了1.5B,8B模型),独立显卡3050 ti4G显存16G内存。它是免费的、私密的,并且支持在本地硬件上离线运行。从技术角度来看,它基于 Qwen 7B 架构,经过精简和优化,确保在保持强大性能的同时,提升了运行效率。DeepSeek 的最大亮点是,它能够与一些领先的商
一、什么是DeepSeek
DeepSeek R1 是一款开源的AI模型,它与 OpenAI 的 o1 和 Claude 3.5 Sonnet 等顶级模型竞争,特别是在数学、编程和推理等任务上表现出色。它是免费的、私密的,并且支持在本地硬件上离线运行。
DeepSeek R1 提供了多个版本,涵盖从轻量级的1.5B参数模型到功能强大的70B参数版本。从技术角度来看,它基于 Qwen 7B 架构,经过精简和优化,确保在保持强大性能的同时,提升了运行效率。
DeepSeek 的最大亮点是,它能够与一些领先的商业AI模型相媲美,但作为开源项目,你可以在本地运行它,完全不依赖云服务器,从而更好地掌控你的数据。
二、为什么要在本地运行?
将AI模型部署在本地有以下几个显著优势:
隐私保护:所有数据都存储在你的设备上,避免了敏感信息泄露的风险。
成本节省:DeepSeek R1 完全免费,无需支付订阅或使用费用。
完全控制:你可以随时对模型进行微调和实验,不依赖任何外部平台。
步骤1:安装ollama
为了在本地成功运行 DeepSeek R1,我们需要借助 Ollama,它是一个专为在本地计算机上运行AI模型而设计的工具。(也可以使用llama)
Ollama 官网:https://ollama.com/download
这里官网提供了macOS Linux win 系统的下载安装包。
下载Ollama后,根据以下步骤安装:
# 这里是不可以选择自己想要安装的磁盘,所以直接无脑下一步就可以,不在过多展示。
安装完成后,Ollama 提供了一个简单的方法,可以直接通过终端提取并运行模型。
具体模型网站:https://ollama.com/search
这里要注意的是:
1.5B 是最小的模型,大小为1GB左右,7B,8B模型大小在8GB左右,想要调用模型的话根据自己电脑的配置选择(我个人下载体验了1.5B,8B模型),独立显卡3050 ti 4G显存 16G内存。8b模型调用有点吃力。所以彦祖们想要玩私有化大模型要尽力而为,不要过度消耗电脑“寿命”
Windows:按 Win + R
,在运行框中输入 “cmd”;或者按 Win + X
,选择“Windows PowerShell”或“命令提示符”来打开终端窗口下载模型:
ollama run deepseek-r1:1.5b
# 下载别的模型修改后面的名称
下载完成后也可以通过Win + R
,在运行框中输入 “cmd”;或者按 Win + X
,选择“Windows PowerShell”或“命令提示符”来打开终端窗口来使用模型,
如果你只是想体验模型可以使用Chatbox工具来调用模型具体方法参考:
DeepSeek R1 本地安装部署(保姆级教程)_本地部署deepseek-r1-CSDN博客 有很详细的介绍
ok完成自己的大模型后 开始我们python开发最重要的工作:
from langchain_ollama import OllamaLLM
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
# from langfuse.callback import CallbackHandler
from langserve import add_routes
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
# langfuse_handler = CallbackHandler(
# public_key="pk-lf-0db23d79-7321-4a3e-b254-0d8404b6ffa5",
# secret_key="sk-lf-1626a28b-c7ad-49ef-8984-4321877b1fc6",
# host="http://localhost:3000"
# )
# 工程化
# 定义聊天提示模板
prompt = ChatPromptTemplate.from_messages(
[
(
"system",
"You are a helpful assistant that translates {input_language} to {output_language}.",
),
("human", "{input}"),
]
)
# 初始化大型模型
model = OllamaLLM(
model="deepseek-r1:8b",
# callbacks=[langfuse_handler, ],
)
parser = StrOutputParser()
chain = prompt | model | parser
app = FastAPI(title="DeepSeek LangChain API", version="1.0")
# 设置CORS中间件
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
expose_headers=["*"],
)
add_routes(app, chain, path="/translate")
langchain + langserve 来对大模型进行开发,因为刚学习两天的原因简单的demo给大家奉上,目前也正在研究怎么结合RAG+langGraph 这些一起加上去,真正开发实用的大模型。
同时也遇到了一些问题langSmite不免费,如果使用langfuse去代替的话 会碰见输入输出的问题,小弟目前还没解决,所以代码就不发了,如果大佬指点一下小弟感激不尽
更多推荐
所有评论(0)