当前位置: 首页 > article >正文

Ubuntu 22.04 Install deepseek

前言

deepseekAI助手。它具有聊天机器人功能,可以与用户进行自然语言交互,回答问题、提供建议和帮助解决问题。DeepSeek 的特点包括:

  1. 强大的语言理解能力:能够理解和生成自然语言,与用户进行流畅的对话。
  2. 多领域知识:涵盖科技、文化、历史等多个领域的知识,能够回答各种类型的问题。
  3. 持续学习:系统会不断学习和优化,提高回答的准确性和相关性。
  4. 安全隐私:注重用户数据的安全和隐私保护,遵守相关法律法规。

DeepSeek 旨在通过先进的人工智能技术,为用户提供高效、便捷的服务,提升工作和生活的效率。

创建一键部署deepseek自动化脚本

  • 自动化脚本系统支持 Centos/Redhaht/RockyLinux/AlmaLinux/OracleLinux 8,9,10,ubuntu(20,22,24),debian(11,12),suse(12,15)
  • ollama 命令文档,参考,参考2,参考3
  • ollama download Windows,Linux,mac,所有下载
  • deepseek Models 官网地址
  • Chatbox 连接deepseek api工具,下载
  • ollama 变量名称参考 参考2
  • ollama 端口11434 需要自定义更改28行变量即可(28-32行环境变量需要自定义的更改)
  • ollama 安装目录/opt/ollama
  • deepseek 模型下载目录位置/opt/ollama/models
  • ollama 服务位置/usr/lib/systemd/system/ollama.service
  • 环境变量位置~/.bashrc
vim /deepseek_install.sh
#!/bin/bash
# -*- coding: utf-8 -*-
# Author: CIASM
# update 2025/02/21<<!
# 系统支持 Centos/Redhaht/RockyLinux/AlmaLinux/OracleLinux 8,9,10,ubuntu(20,22,24),debian(11,12),suse(12,15)# ollama文档参考
https://github.com/ollama/ollama
https://ollama.readthedocs.io/quickstart/
https://ollama.cadn.net.cn/quickstart.html#google_vignette# ollama download
https://ollama.com/download/windows
https://ollama.com/download/mac
https://ollama.com/download/linux
https://github.com/ollama/ollama/releases#deepseek Models
https://ollama.com/library# download chatboxai
https://chatboxai.app/zh#download
!# variable
OLLAMA_PORT=11434
ollama_prefix=/opt/ollama
ollama_contents=ollama
ollama_models=models
opt_prefix=/opt# ollama download variable
ollama_url=https://github.com/ollama/ollama/releases/download/v0.5.11
ollama_tgz=ollama-linux-amd64.tgzinstall_basics() {# Check if the script is being run as root
if [ "$(id -u)" != "0" ]; thenecho "This script must be run as root."exit 1
fiif [[ -f /etc/os-release ]]; thenOS=$(cat /etc/*release* | grep "^ID=" | cut -d'=' -f2- | tr -d '"')VERSION=$(awk -F= '/VERSION_ID/{print $2}' /etc/os-release | tr -d '"') #VERSION=$( grep -oE 'VERSION_ID="[^"]+"' /etc/os-release | cut -d'"' -f2)  elseecho -e "\033[31mThis script only supports $OS $VERSION...\033[0m"exit 1
fi# Check the ollama version
if ! [ -d "$ollama_prefix" ]; thenecho -e "\033[32m Installing ollama for $OS $VERSION...\033[0m"case $VERSION in# CentOS/RedHat/oracle/RockLinux/AlmaLinux 8 install 8|8.1|8.2|8.3|8.4|8.5|8.6|8.7|8.8|8.9|8.10)echo Installing basics...yum install -y http://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpmyum install -y net-tools wget curlecho "firewall prometheus port config"firewall_port_up# install ollamainstall_ollama;;# CentOS/RedHat/oracle/RockLinux/AlmaLinux 9 install9.0|9.1|9.2|9.3|9.4|9.5|9.6|9.7|9.8|9.9|9.10) echo Installing basics...yum install -y http://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpmyum install -y net-tools wget curlecho "firewall prometheus port config"firewall_port_up# install ollamainstall_ollama;;# CentOS/RedHat/oracle/RockLinux/AlmaLinux 10 install10.0|10.1|10.2|10.2|10.3|10.4|10.5|10.6|10.7|10.8|10.9|10.10)  echo Installing basics...yum install -y http://dl.fedoraproject.org/pub/epel/epel-release-latest-10.noarch.rpmyum install -y net-tools wget curlecho "firewall prometheus port config"firewall_port_up# install ollamainstall_ollama;;# openEuler 20,22,23,24 Linux install20.03|22.03|23.03|24.03) echo "add epel repo"openEuler_epel_repoecho "firewall prometheus port config"firewall_port_upecho Installing basics...yum install -y net-tools wget curl# install ollamainstall_ollama;;# ubuntu 20,21,22,23,24 Linux install20.04|21.04|22.04|23.04|24.04)echo "Disable system standby"systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.targetecho "Pop-up block"sed -i '$ a\export DEBIAN_FRONTEND=noninteractive' /etc/profilesource /etc/profileecho "install Base Package"apt-get updateapt-get install -y firewalld curl net-tools vimapt-get install -y git wgetecho "firewall prometheus port config"firewall_port_up# install ollamainstall_ollama;;# Debian 10,11.1210|11|12)echo "Disable system standby"systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.targetecho "Pop-up block"sed -i '$ a\export DEBIAN_FRONTEND=noninteractive' /etc/profilesource /etc/profileecho "install Base Package"apt-get updateapt-get install -y firewalld curl net-tools vimapt-get install -y git wget# install ollamainstall_ollama;;# SUSE 12 install12.?)echo Installing  basics...SUSEConnect -p sle-sdk/12.5/x86_64zypper in -y curl net-toolsecho "firewall sql server port"sed -i '/^FW_SERVICES_EXT_TCP=/ s/"\(.*\)"/"\1 '$OLLAMA_PORT'"/' /etc/sysconfig/SuSEfirewall2systemctl restart SuSEfirewall2.service# install ollamainstall_ollama;;# SUSE 15 install15.?)echo Installing  basics...zypper install -y net-tools net-tools-deprecatedrpm -ivh https://ftp.lysator.liu.se/pub/opensuse/distribution/leap/15.6/repo/oss/x86_64/net-tools-deprecated-2.0+git20170221.479bb4a-3.11.x86_64.rpmzypper in -y firewalld curl echo "firewall ollama port config"firewall_port_up# install ollamainstall_ollama;;*)echo -e "\033[31m Unsupported $OS $VERSION...\033[0m" exit 1;;
esacecho -e "\033[32m ollama for $OS $VERSION successfully installed...\033[0m"
elseecho -e "\033[33m ollama for $OS $VERSION already installed...\033[0m"
fi}# Obtain the system version number
VERSION_ID=$(cat /etc/os-release | grep "^VERSION_ID=" | cut -d'=' -f2 | tr -d '"')# openEuler 20.03 22.03 23.03 24.03 add epel 8,9
openEuler_epel_repo (){if [[ $VERSION_ID =~ ^2[2-4]\.03$ ]]; thenrepo_version=9
elif [[ $VERSION_ID == 20.03 ]]; thenrepo_version=8
fiecho "openEuler add epel repo"
cat <<EOF>>/etc/yum.repos.d/epel.repo
[epel]
name=epel
baseurl=https://dl.fedoraproject.org/pub/epel/${repo_version}/Everything/x86_64/
enabled=1
gpgcheck=0
priority=1
EOF
}# firewall port up
firewall_port_up (){
echo "firewall ollama port"
systemctl enable --now firewalld
firewall-cmd --zone=public --add-port=$OLLAMA_PORT/tcp --permanent && firewall-cmd --reload 
}# install ollama
install_ollama (){echo "download ollama"
wget -N -P $opt_prefix $ollama_url/$ollama_tgzecho "Unzip installation ollama"
mkdir -p $opt_prefix/{$ollama_contents,$ollama_models}
tar -zxf $opt_prefix/$ollama_tgz -C $ollama_prefix
rm -rf $opt_prefix/$ollama_tgzecho "ollama environment variable"
echo 'export PATH='$ollama_prefix'/bin:$PATH' >>  ~/.bashrc
echo 'export PATH='$ollama_prefix'/lib:$PATH' >>  ~/.bashrc
echo 'export OLLAMA_HOST=0.0.0.0:'$OLLAMA_PORT'' >>  ~/.bashrc
source ~/.bashrcecho "create ollama server"
cat <<EOF>>/usr/lib/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target[Service]
Environment="OLLAMA_HOST=0.0.0.0:$OLLAMA_PORT"
Environment="OLLAMA_ORIGINS=*"
Environment="OLLAMA_MODELS=$ollama_prefix/models"
ExecStart=$ollama_prefix/bin/ollama serve
User=root
Group=root
Restart=always
RestartSec=3[Install]
WantedBy=default.target
EOFecho "start ollama"
systemctl daemon-reload
systemctl start ollama
systemctl enable ollamaecho "download deepseek model"
$ollama_prefix/bin/ollama run deepseek-r1:8b
}main (){install_basics
}main

执行一键部署deepseek 

  • ln -sf bash /bin/sh 切换bash 
bash /deepseek_install.sh

ollama api访问接口测试

  • 正式环境不要对外开放

chatbox 连接deepseek

  • chatbox 下载,有很多的你也可以尝试使用其它的方式接入
  • 模型提供方ollama api
  • api 域名你的主机IP和端口
  • 模型,你部署的模型选择

与deepseek ai 对话

相关文章:

Ubuntu 22.04 Install deepseek

前言 deepseekAI助手。它具有聊天机器人功能&#xff0c;可以与用户进行自然语言交互&#xff0c;回答问题、提供建议和帮助解决问题。DeepSeek 的特点包括&#xff1a; 强大的语言理解能力&#xff1a;能够理解和生成自然语言&#xff0c;与用户进行流畅的对话。多领域知识&…...

如何将公钥正确添加到服务器的 authorized_keys 文件中以实现免密码 SSH 登录

1. 下载密钥文件 2. RSA 解析 将 id_ed25519 类型的私钥转换为 RSA 类型&#xff0c;要将 ED25519 私钥转换为 RSA 私钥&#xff0c;需要重新生成一个新的 RSA 密钥对。 步骤&#xff1a; 生成新的 RSA 密钥对 使用 ssh-keygen 来生成一个新的 RSA 密钥对。比如&#xff0c;执…...

深入理解设计模式之解释器模式

深入理解设计模式之解释器模式 在软件开发的复杂世界中,我们常常会遇到需要处理特定领域语言的情况。比如在开发一个计算器程序时,需要解析和计算数学表达式;在实现正则表达式功能时,要解析用户输入的正则表达式来匹配文本。这些场景都涉及到对特定语言的解释和执行,而解…...

【WebGL】attribute方式实例化绘制

背景 一般有attribute和uniform两种方式进行实例化绘制 attribute方式实例化 这里需要注意 bufferData和bufferSubData方式的用法顺序和参数 gl.bufferData(target, sizeOrData, usage); sizeOrData&#xff08;实例化配合bufferSubData 更新数据一般使用这种先&#xff09…...

线代[8]|北大丘维声教授《怎样学习线性代数?》(红色字体为博主注释)

文章目录 说明一、线性代数的内容简介二、学习线性代数的用处三、线性代数的特点四、学习线性代数的方法五、更新时间记录 说明 文章中红色字体为博主敲录完丘教授这篇文章后所加&#xff0c;刷到这篇文章的读者在首次阅读应当跳过红色字体&#xff0c;先通读一读文章全文&…...

光明谷推出AT指令版本的蓝牙音箱SOC 开启便捷智能音频开发新体验

前言 在蓝牙音箱市场竞争日益激烈的当下&#xff0c;开发一款性能卓越且易于上手的蓝牙音箱&#xff0c;成为众多厂商追求的目标。而光明谷科技有限公司推出的 AT 指令版本的蓝牙音箱 SOC&#xff0c;无疑为行业带来了全新的解决方案&#xff0c;以其诸多独特卖点&#xff0c;迅…...

C#从入门到精通(34)—如何防止winform程序被同时打开多次

前言&#xff1a; 大家好&#xff0c;我是上位机马工&#xff0c;硕士毕业4年年入40万&#xff0c;目前在一家自动化公司担任软件经理&#xff0c;从事C#上位机软件开发8年以上&#xff01;我们在开发上位机软件的过程中&#xff0c;评判一个人软件写的好不好&#xff0c;有一…...

TIP: Flex-DLD

Article: Flex-DLD: Deep Low-Rank Decomposition Model With Flexible Priors for Hyperspectral Image Denoising and Restoration, 2024 TIP. 文章的主要思想是用network来学low-rank decomposition的两个matrix&#xff08;input是random input&#xff09;. 文章的framew…...

如何在 ubuntu 上使用 Clash 与 docker 开启代理拉起

如何在 ubuntu 上使用 Clash https://github.com/doreamon-design/clash/releases上面是clash 的地址 clash_2.0.24_linux_386.tar.gz 下载 386 的 如果你的电脑是inter tar -xzvf clash_2.0.24_linux_386.tar.gz 启动 ./clash 然后会在电脑上生成一个config的文件 /home/xxx/…...

MFC开发:如何创建第一个MFC应用程序

文章目录 一、概述二、MFC 的主要组件三、创建一个MFC窗口四、控件绑定消息函数 一、概述 MFC 是微软提供的一个 C 类库&#xff0c;用于简化 Windows 应用程序的开发。它封装了 Windows API&#xff0c;提供面向对象的接口&#xff0c;帮助开发者更高效地创建图形用户界面&am…...

react hook useReducer

useReducer useReducer 是 React 中用于状态管理的 Hook&#xff0c;与 useState 不同&#xff0c;它更适合处理复杂的状态逻辑. const [state, dispatch] useReducer(reducer, initialArg, init?) reducer 是一个处理函数&#xff0c;用于更新状态, reducer 里面包含了两个…...

Java与C语言中取模运算符%的区别对比

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: Java 文章目录 &#x1f4af;前言&#x1f4af;C语言中的取模运算符 %基本行为示例 注意事项示例&#xff1a;负数取模 &#x1f4af;Java中的取模运算符 %基本行为示例 对浮点数的支持示例&#xff1a;浮点数取模 符…...

Zabbix 7.2实操指南:基于OpenEuler系统安装Zabbix 7.2

原文出处&#xff1a;乐维社区 部署环境 openEuler 22.03 LTS PHP 8.0 Apache Mysql 8.0 MySQL数据库 6.0 以上版本需要安装mysql8.0以上版本的数据库&#xff08;以mysql为例子&#xff09;。 欧拉系统自带 mysql8.0 的源&#xff0c;无需要安装额外的源。 安装mysql …...

Springboot的简单推荐实现

以springboot 推荐社团招新为例子 使用 Spring Boot 构建社团招新推荐系统&#xff0c;用户注册后选择兴趣&#xff0c;系统根据兴趣推荐社团。 实现包括用户注册、兴趣选择和基于标签匹配的推荐算法。 系统使用 JPA 管理数据库&#xff0c;Spring Security 确保安全&#xff0…...

如何使用Python快速开发一个带管理系统界面的网站-解析方案

如果你想用 Python 开发一个 管理系统界面 的网站&#xff0c;并且希望界面美观&#xff0c;可以考虑以下几个框架和库&#xff1a; 1. Streamlit&#xff08;快速、简洁&#xff09; 适合&#xff1a;数据分析、仪表盘、内部管理系统特点&#xff1a; 写法简单&#xff0c;类…...

深入剖析抽象工厂模式:设计模式中的架构利器

深入剖析抽象工厂模式&#xff1a;设计模式中的架构利器 在软件开发领域&#xff0c;设计模式是解决常见问题的通用方案&#xff0c;而抽象工厂模式作为创建型设计模式的重要一员&#xff0c;在构建复杂软件系统时发挥着关键作用。它为创建一系列相关或相互依赖的对象提供了一…...

面试基础-如何设计一个短链接系统

设计一个每秒处理 100 万个请求&#xff08;WQPS&#xff09;的短链系统需要综合考虑性能、可用性和可扩展性。以下是设计方案&#xff1a; 1. 系统架构设计 采用微服务架构&#xff0c;将功能模块化&#xff0c;便于水平扩展和故障隔离。 核心组件&#xff1a; 短链生成服务…...

Win11 24h2 不能正常使用ensp的问题(已解决)

因为Win11 24h2的内核大小更改&#xff0c;目前virtualbox在7.1.4中更新解决了。所以Win11 24H2系统版本无法使用 5.x.xx的virtualbox版本&#xff0c;virtualbox对于这个5.x.xx版本早已停止维护&#xff0c;所以这个以后不会有调整。 对应的报错代码是 virtualbox错误代码&…...

蓝桥杯——按键

一&#xff1a;按键得原理图 二&#xff1a;按键的代码配置 step1 按键原理图对应引脚配置为输入状态 step2 在GPIO中将对应引脚设置为上拉模式 step3 在fun.c中写按键扫描函数 写完后的扫描函数需放在主函数中不断扫描 扫描函数主要通过两个定义变量的值来判断&#xf…...

Linux环境基础开发工具的使用(三)

五、Linux项目自动化构建工具-make/Makefile make&#xff1a;是一条指令。 makefile&#xff1a;是一个当前目录下的文件。 第一行&#xff1a;依赖关系。 第二行&#xff1a;依赖方法。 clean是空依赖关系。 编译文件清理 背景 会不会写makefile&#xff0c;从一个侧面说…...

vue中将el-table导出为excel文件

在 Vue Element UI 中&#xff0c;el-table 数据导出 Excel 文件&#xff0c;可以使用 xlsx&#xff08;SheetJS&#xff09;库进行处理。以下是详细的实现方法&#xff0c;包括安装依赖、代码示例和优化建议。 1. 安装依赖 首先&#xff0c;安装 xlsx 库&#xff1a; 复制…...

electron提升软件运行权限,以管理员权限运行

大家有任何想法&#xff0c;都可以联系博主沟通。 本系列为实战文章&#xff0c;最终实现的桌面工具软件&#xff0c;获取方式&#xff1a;百度网盘地址&#xff1a;https://pan.baidu.com/s/1yrl0jYpti7QCn8CHBRT2lw?pwd1234 正文开始 前言一、提升electron运行权限的三种方…...

力扣LeetCode: 2506 统计相似字符串对的数目

题目&#xff1a; 给你一个下标从 0 开始的字符串数组 words 。 如果两个字符串由相同的字符组成&#xff0c;则认为这两个字符串 相似 。 例如&#xff0c;"abca" 和 "cba" 相似&#xff0c;因为它们都由字符 a、b、c 组成。然而&#xff0c;"aba…...

安科瑞能源物联网平台助力企业实现绿色低碳转型

安科瑞顾强 随着全球能源结构的转型和“双碳”目标的推进&#xff0c;能源管理正朝着智能化、数字化的方向快速发展。安科瑞电气股份有限公司推出的微电网智慧能源管理平台&#xff08;EMS 3.0&#xff09;&#xff0c;正是这一趋势下的创新解决方案。该平台集成了物联网&…...

Spring Boot 中使用 @Transactional 注解配置事务管理

事务管理是应用系统开发中必不可少的一部分。Spring 为事务管理提供了丰富的功能支持。Spring 事务管理分为编程式和声明式的两种方式。编程式事务指的是通过编码方式实现事务&#xff1b;声明式事务基于 AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污…...

动态链接器(九):.init和.init_array

ELF文件中的.init和.init_array段是程序初始化阶段的重要组成部分&#xff0c;用于在main函数执行前完成必要的初始化操作。 1 .init段和.init_array 段 1.1 作用 .init段包含编译器生成的初始化代码&#xff0c;通常由运行时环境&#xff08;如C标准库的启动例程&#xff0…...

标准I/O与文件I/O

一、概念 标准IO&#xff1a;标准IO是指程序与标准输入&#xff08;stdin&#xff09;、标准输出&#xff08;stdout&#xff09;和标准错误&#xff08;stderr&#xff09;之间的输入输出操作。通常用于与用户交互或输出调试信息。文件IO&#xff1a;文件IO是指程序与文件系统…...

【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter20-JavaScript API

二十、JavaScript API JavaScript API 随着 Web 浏览器能力的增加&#xff0c;其复杂性也在迅速增加。从很多方面看&#xff0c;现代 Web 浏览器已经成为构建于诸多规范之上、集不同 API 于一身的“瑞士军刀”。浏览器规范的生态在某种程度上是混乱而无序的。一些规范如 HTML5&…...

C#初级教程(7)——初级期末检测

练习 1&#xff1a;计算圆的周长和面积 改编题目&#xff1a;编写一个 C# 程序&#xff0c;让用户输入圆的半径&#xff0c;然后计算并输出该圆的周长和面积&#xff0c;结果保留两位小数。 using System;class CircleCalculation {static void Main(){const double pi 3.14…...

RT-Thread+STM32L475VET6——TF 卡文件系统

文章目录 前言一、板载资源二、具体步骤1.打开CubeMX进行USB配置1.1 使用外部高速时钟&#xff0c;并修改时钟树1.2 打开SPI1&#xff0c;参数默认即可(SPI根据自己需求调整&#xff09;1.3 打开串口&#xff0c;参数默认1.4 生成工程 2.配置SPI2.1 打开SPI驱动2.2 声明使用SPI…...