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

跟着AI 学AI开发二,本地部署自己的Chat GPT

这里要安装的是Open Web UI ,用一张架构图说明AI 前端与后端的关系。

之前的Python 的方法已经做过多次介绍,这里不做赘述。 

顺序:1,Ollama。 2,Docker。 3,Open WebUI。

  1. Ollama 安装下载地址:Ollama,

直接安装即可,安全成功之后别忘了安装大语言模型。

2. 安装Docker

安装地址: https://www.docker.com/,

在打开的页面里直接单击: Download Docker Desktop 即可安装。

附注:由于有人问Docker,这里做点延申,

Docker 是一个开源的平台,用于开发、交付和运行应用程序。它通过使用**容器(Container)**技术,使应用程序可以在任何环境中一致地运行,无论是在开发者的笔记本电脑上,还是在生产服务器上。容器是一种轻量级、可移植的虚拟化形式,能够将应用程序和它的所有依赖项打包在一起,从而确保运行环境的独立性和一致性。

Docker 的核心概念

  1. 镜像(Image):

    • Docker 镜像是一个轻量级、独立的、可执行的软件包,其中包含运行应用程序所需的所有内容(代码、运行时、库、环境变量等)。
    • 类似于一个模板,用于创建 Docker 容器。
  2. 容器(Container):

    • 容器是镜像的一个运行实例,是一个隔离的环境,确保应用程序的运行不会受到外界的干扰。
    • 容器可以轻松启动、停止、删除,并且运行非常高效。
  3. Docker 引擎(Docker Engine):

    • Docker 的核心组件,用于构建、运行和管理容器。
  4. Docker Hub:

    • 一个官方的在线仓库,存储和共享 Docker 镜像。
    • 开发者可以从 Docker Hub 下载现成的镜像,也可以上传自己的镜像。

Docker 的主要优势

  1. 跨平台一致性:

    • "一次构建,到处运行"。Docker 容器在任何支持 Docker 的系统上都能以相同的方式运行。
  2. 轻量级:

    • Docker 容器使用共享的主机操作系统,比传统虚拟机更加高效,占用资源更少。
  3. 快速部署:

    • 使用镜像启动容器的速度非常快,几乎是即时的。
  4. 隔离性:

    • 每个容器是独立的,拥有自己的文件系统、网络和运行时环境,互相隔离,避免冲突。
  5. 高效的资源利用:

    • 多个容器可以共享主机操作系统资源,减少硬件开销。

Docker 的工作流程

  1. 开发阶段:开发者通过编写 Dockerfile 来定义应用程序的构建过程。
  2. 构建镜像:使用 Docker 命令构建镜像,例如:docker build -t myapp .
  3. 运行容器:从镜像启动容器,例如:docker run -d myapp
  4. 分发镜像:将镜像上传到 Docker Hub 或其他镜像仓库,供团队或生产环境使用。

Docker 的典型应用场景

  1. 开发环境标准化:

    • 为团队创建一致的开发和测试环境。
  2. 微服务架构:

    • 每个微服务运行在自己的容器中,简化部署和扩展。
  3. 持续集成与持续交付(CI/CD):

    • 通过容器化,确保代码从开发到生产环境的流畅过渡。
  4. 快速实验:

    • 试验新技术或框架,而不会影响主机系统。
  • 安装步骤与方法:

Dockers,安装后的效果是:在命令行执行 Docker,

它的 url 是 localhost:3000,

开始使用:当发生选择模型,未找到结果时,要加载它的大语言模型,例如在命令行录入 ollama run lama3。。。。就会有模型共提供选择。

  • 确认 ollama 安装成功

  • 安装Open web UI 

打开: https://github.com/open-webui/open-webui 后下面有安装说明,这里要仔细看。

运行代码和结果: 

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

  • To run Open WebUI with Nvidia GPU support,

docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda

以上三个步骤完成之后:测试效果如下:

相关文章:

跟着AI 学AI开发二,本地部署自己的Chat GPT

这里要安装的是Open Web UI ,用一张架构图说明AI 前端与后端的关系。 之前的Python 的方法已经做过多次介绍,这里不做赘述。 顺序:1,Ollama。 2,Docker。 3,Open WebUI。 Ollama 安装下载地址&#xff1…...

XXE靶机漏洞复现通关

1.扫描XXE靶机的ip地址 将kali虚拟机和XXE靶机部署在同一局域网中,都采用NAT网络模式 搭建好后在kali终端中进行扫描XXE靶机的ip arp-scan -l 根据常识我们可以推断192.168.27.153为靶机的ip地址 2.访问靶机页面并扫描附录 进入页面后我们可以打开御剑扫描网页中…...

XS9922B 同轴RX芯片 四通道 多合一模拟高清解码器

XS9922B 是一款 4 通道模拟复合视频解码芯片,支持 HDCCTV 高清协议和 CVBS 标 清协议,视频制式支持 720P/1080P 高清制式和 960H/D1 标清制式。芯片将接收到的高清 模拟复合视频信号经过模数转化,视频解码以及 2D 图像处理之后,转…...

如何在谷歌浏览器中设置电子邮件通知

在现代互联网生活中,电子邮件已成为我们日常沟通的重要工具。为了更高效地管理邮件,您可以在谷歌浏览器中设置电子邮件通知。本文将详细介绍如何实现这一功能,并附带一些相关的Chrome使用技巧。(本文由https://chrome.google64.cn…...

利用Java获取淘宝商品详情API接口的深入指南引言

引言 在电商领域,数据的价值日益凸显,尤其是在淘宝这样的大型电商平台上。淘宝商品详情API接口允许开发者通过编程方式获取商品的详细信息,这对于市场分析、竞争对手研究等方面至关重要。本文将详细介绍如何使用Java编写爬虫程序&#xff0c…...

3D工具显微镜的测量范围

一、测量尺寸范围 样品尺寸: 3D工具显微镜通常能够测量各种尺寸和形状的样品,从小至微米级别的微小结构到大至几厘米甚至更大的物体。具体的测量尺寸范围取决于显微镜的载物台大小、镜头焦距以及软件处理能力。测量精度: 3D工具显微镜的测量…...

WPF DataTemplate 数据模板

DataTemplate 顾名思义&#xff0c;数据模板&#xff0c;在 wpf 中使用非常频繁。 它一般用在带有 DataTemplate 依赖属性的控件中&#xff0c;如 ContentControl、集合控件 ListBox、ItemsControl 、TabControls 等。 1. 非集合控件中使用 <UserControl.Resources>&l…...

知道一个服务器IP地址,如何attack对方美国

CSDN提醒&#xff1a;亲爱的用户&#xff1a;你好&#xff01; 你的账号于2024-12-17 19:04:04在美国美国登录&#xff0c;登录IP为&#xff1a;47.238.159.124。若非本人登录&#xff0c;请及时修改密码。 莫名其妙显示美国登录了我的CSDN博客 卧槽 简介 服务器的IP地址是一…...

lettuce 默认情况下连接池参数不生效,源码分析

先说结论&#xff1a; 1.LettuceConnectionFactory 属性 shareNativeConnection 默认为true&#xff0c;要想连接池生效&#xff0c;该参数设置为false; 2.使用redisTemplate模版封装的pipeline没有意义&#xff0c;autoFlashCommands 默认为true;spring2.0开始默认使用lettuc…...

《宇宙机器人》提示错误弹窗“找不到d3dx9_43.dll”是什么原因?“d3dx9_43.dll缺失”怎么解决?

电脑游戏运行时常见问题解析&#xff1a;《宇宙机器人》提示“找不到d3dx9_43.dll”的解决之道 TGA2024落幕&#xff0c;年度最佳游戏——《宇宙机器人》&#xff0c;作为一名在软件开发领域深耕多年的从业者&#xff0c;我深知电脑游戏在运行过程中可能会遇到的各种挑战&…...

应用于项目的 C++单例基类的设计、实现与应用

文章目录 应用于项目的 C单例基类的设计、实现与应用一、引言二、单例基类的设计2.1 线程安全的单例基类2.2 局部静态变量的单例基类 三、单例基类的实现3.1 配置管理单例类 四、单例基类的应用4.1 多线程环境下的配置管理 五、深入探讨5.1 单例的线程安全问题5.2 单例的延迟初…...

Mongodb 启用认证

MongoDB 启用认证的完整指南 启用 MongoDB 的认证功能需要按照以下步骤进行设置&#xff1a; 检查 MongoDB 配置文件 在 MongoDB 配置文件中&#xff08;通常为 mongod.conf&#xff09;&#xff0c;需要启用认证功能。 修改配置文件 打开 mongod.conf 文件&#xff0c;找…...

QT:vlc出错处理及重新播放

这个问题一直想解决&#xff0c;昨天认真研究了一下。 要点 视频用的Widget不能重复使用&#xff0c;每次出错后&#xff0c;都要新建。 回调函数的处理。 代码1 关键在于libvlc_event_attach void VideoWidget::play() {libvlc_media_t* media;if (strstr(video_path, &…...

密钥管理系统在数据安全解决方案中的重要性

密钥管理系统在数据安全解决方案中占据着举足轻重的地位&#xff0c;其重要性体现在以下几个方面&#xff1a; 一、保障数据机密性 密钥管理系统通过生成、存储和管理加密密钥&#xff0c;确保了数据的机密性。这些密钥用于加密和解密数据&#xff0c;只有授权用户才能访问和…...

Docker的容器编排

目录 1. 什么是容器编排&#xff08;Docker Compose&#xff09;2. 容器编排的功能3. 容器编排文件&#xff08;docker-compose.yml&#xff09;的介绍3.1 文件语法版本3.2 文件基本结构及常见指令 4. Docker Compose命令详解4.1 Docker Compose命令清单4.2 命令格式和常见选项…...

Java Web项目部署教程简单实用

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c; 忍不住分享一下给大家。点击跳转到网站 学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……&#xff09; 2、学会Oracle数据库入门到入土用法(创作中……&#xff09; 3、手把…...

推送本地仓库到远程git仓库

目录 推送本地仓库到远程git仓库1.1修改本地仓库用户名1.2 push 命令1.3远程分支查看 推送本地仓库到远程git仓库 删除之前的仓库中的所有内容&#xff0c;从新建库&#xff0c;同时创建一个 A.txt 文件 清空原有的远程仓库内容&#xff0c;重新创建一个新的仓库&#xff0c;…...

线性池学习

一、什么是进程&#xff1f;什么是线程&#xff1f; 1. 进程的定义 从操作系统的角度解释&#xff1a; 进程是操作系统分配资源和调度执行的基本单位。每个进程都是操作系统中一个独立的实体&#xff0c;拥有自己的内存空间、文件描述符、代码、数据等资源。进程是程序在执行…...

微积分复习笔记 Calculus Volume 2 - 4.3 Separable Equations

4.3 Separable Equations - Calculus Volume 2 | OpenStax...

前端项目部署方法

ngnix服务器部署 下载nignx&#xff0c;我下的是windows版本的 下载链接&#xff1a;[https://nginx.org/en/download.html](https://nginx.org/en/download.html) 解压文件 如果原本的80端口号被占用了&#xff0c;可以改为其他的端口号 可以点击nginx.exe文件启动nginx,它可能…...

Chrome扩展开发实战:打造浏览器侧边栏ChatGPT助手

1. 项目概述&#xff1a;一个让ChatGPT常驻浏览器侧边栏的利器如果你和我一样&#xff0c;每天的工作和学习都离不开浏览器&#xff0c;并且频繁地与ChatGPT对话来获取灵感、润色文案或者调试代码&#xff0c;那么你肯定对在无数个标签页之间来回切换感到厌烦。每次都要打开一个…...

终极指南:如何使用Autoclick实现Mac自动点击900次/秒

终极指南&#xff1a;如何使用Autoclick实现Mac自动点击900次/秒 【免费下载链接】Autoclick A simple Mac app that simulates mouse clicks 项目地址: https://gitcode.com/gh_mirrors/au/Autoclick 你是否厌倦了重复性的鼠标点击工作&#xff1f;无论是游戏中的重复操…...

Godot卡牌游戏框架终极指南:3小时从零构建专业级卡牌游戏

Godot卡牌游戏框架终极指南&#xff1a;3小时从零构建专业级卡牌游戏 【免费下载链接】godot-card-game-framework A framework which comes with prepared scenes and classes to kickstart your card game, as well as a powerful scripting engine to use to provide full r…...

平衡车PID积分饱和问题

你发现了PID最致命的坑&#xff01; 你说的完全正确&#xff1a;积分&#xff08;Ki&#xff09;是累加的&#xff0c;会无限叠加&#xff0c;直接让PWM爆掉、车猛冲、失控&#xff01; 这就是积分饱和 —— 99%初学者死在这里。 我现在彻底讲透积分为什么炸、怎么修复、平衡车…...

脉冲神经网络与神经形态计算的能效优化实践

1. 脉冲神经网络与神经形态计算基础脉冲神经网络&#xff08;SNN&#xff09;作为第三代神经网络模型&#xff0c;其核心在于模拟生物神经系统的信息处理机制。与传统人工神经网络&#xff08;ANN&#xff09;相比&#xff0c;SNN具有三个本质区别&#xff1a;首先&#xff0c;…...

基于MCP协议构建AI编程助手:unloop-mcp文件系统服务器实战指南

1. 项目概述&#xff1a;一个面向开发者的“解循环”MCP服务器最近在GitHub上看到一个挺有意思的项目&#xff0c;叫Escapepaleolithic247/unloop-mcp。光看这个名字&#xff0c;可能有点摸不着头脑&#xff0c;但如果你是一个经常和AI助手&#xff08;比如Claude、Cursor等&am…...

BiscuitLang:专为Web业务逻辑设计的轻量级脚本语言

1. 项目概述&#xff1a;一个为现代Web开发而生的轻量级语言如果你和我一样&#xff0c;长期在Web前端和全栈开发的泥潭里摸爬滚打&#xff0c;那你一定对JavaScript生态的“臃肿”与“复杂”深有体会。一个简单的项目动辄node_modules文件夹体积惊人&#xff0c;工具链配置繁琐…...

Mantic.sh:AI驱动的智能命令行工具,让自然语言生成终端命令

1. 项目概述&#xff1a;一个为开发者打造的智能终端伴侣 如果你和我一样&#xff0c;每天有超过一半的工作时间是在终端&#xff08;Terminal&#xff09;里度过的&#xff0c;那你一定对效率有着近乎偏执的追求。敲命令、查日志、管理进程、部署服务……这些重复且琐碎的操作…...

Arduino驱动128x64 VFD显示屏:SPI像素回读与图形应用实战

1. 项目概述&#xff1a;为什么选择128x64图形VFD&#xff1f;如果你玩过各种OLED、LCD或者TFT屏幕&#xff0c;可能会觉得显示技术已经足够成熟&#xff0c;亮度、对比度似乎都够用。但当你第一次点亮一块真空荧光显示屏时&#xff0c;那种独特的、带着一丝复古科技感的蓝色辉…...

基于Claude的AI招聘系统:从简历解析到智能评估全流程实践

1. 项目概述&#xff1a;当Claude成为你的招聘官最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“hire-from-claude”。光看名字&#xff0c;你可能会觉得有点玄乎&#xff0c;难道是要让AI来面试和招聘人类&#xff1f;其实&#xff0c;这个项目的核心思路&#xff0c;是…...