暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

笔记本A卡玩转大模型应用场景

712
本文不聊枯燥的数据库技术,来看几个有趣的大模型应用场景。(图文并茂,绝对有趣
我的笔记本有一块 GPU
,型号是 AMD Radeon 780M
显卡,16GB
内存,3A
游戏不怎么玩,卡有点浪费。最近大模型很火,就看看都有哪些使用场景,以及能不能用 AMD 780M
核显GPU
跑大模型应用。

使用 ollama
open webui
搭建本地 ChatGPT
应用

ChatGPT
此前有用过,感觉其知识检索和问答能力非常好,只是不知道怎么实现的。接下来就在尝试在本地部署一个。
部署会使用到一个开源的大模型框架 ollama
,用于在本地运行流行的大模型,包括 Facebook
Google
、阿里云的。框架也支持多种操作系统平台(如Windows
MAC
Linux
)的。
不过ollama
似乎还不支持AMD 780
核显。官方支持的显卡类型包括:"gfx900"
"gfx906:xnack-"
"gfx908:xnack-"
"gfx90a:xnack+"
"gfx90a:xnack-"
"gfx940"
"gfx941"
gfx942"
"gfx1010"
"gfx1012"
"gfx1030"
"gfx1100"
"gfx1101"
"gfx1102"
,偏偏AMD 780M
的显示核心代号为gfx1103
,不在上面的支持列表中。
最后在网上找到一个网友提示,有大佬修改了代码支持了这一款,项目开源地址:https://github.com/likelovewant/ollama-for-amd
。安装部署了一下果然支持。项目里也给出了常见大大模型数据集大小和下载方法。
ModelParametersSizeDownload
Llama 3.23B2.0GBollama run llama3.2
Llama 3.21B1.3GBollama run llama3.2:1b
Llama 3.2 Vision11B7.9GBollama run llama3.2-vision
Llama 3.2 Vision90B55GBollama run llama3.2-vision:90b
Llama 3.18B4.7GBollama run llama3.1
Llama 3.170B40GBollama run llama3.1:70b
Llama 3.1405B231GBollama run llama3.1:405b
Phi 3 Mini3.8B2.3GBollama run phi3
Phi 3 Medium14B7.9GBollama run phi3:medium
Gemma 22B1.6GBollama run gemma2:2b
Gemma 29B5.5GBollama run gemma2
Gemma 227B16GBollama run gemma2:27b
Mistral7B4.1GBollama run mistral
Moondream 21.4B829MBollama run moondream
Neural Chat7B4.1GBollama run neural-chat
Starling7B4.1GBollama run starling-lm
Code Llama7B3.8GBollama run codellama
Llama 2 Uncensored7B3.8GBollama run llama2-uncensored
LLaVA7B4.5GBollama run llava
Solar10.7B6.1GBollama run solar

ollama
部署

ollama
的部署方法参考项目文档即可,这里特别提示的是设置几个 windows
环境变量。在命令行下如果系统环境变量没有生效,也可以手动设置一下,然后再启动 ollama
。命令如下:
C:\Users\MQ>set OLLAMA_HOST=0.0.0.0:8000
C:\Users\MQ>set OLLAMA_REGIONS=*
C:\Users\MQ>set OLLAMA_MODELS=C:\Users\MQ\.ollama\models
C:\Users\MQ>set |findstr OLLAMA
OLLAMA_HOST=0.0.0.0:8000
OLLAMA_MODELS=C:\Users\MQ\.ollama\models
OLLAMA_ORIGINS=*
OLLAMA_REGIONS=*
C:\Users\MQ>ollama serve
2024/12/01 10:58:15 routes.go:1189: INFO server config env="map[CUDA_VISIBLE_DEVICES: GPU_DEVICE_ORDINAL: HIP_VISIBLE_DEVICES: HSA_OVERRIDE_GFX_VERSION: HTTPS_PROXY: HTTP_PROXY: NO_PROXY: OLLAMA_DEBUG:false OLLAMA_FLASH_ATTENTION:false OLLAMA_GPU_OVERHEAD:0 OLLAMA_HOST:http://0.0.0.0:8000 OLLAMA_INTEL_GPU:false OLLAMA_KEEP_ALIVE:5m0s OLLAMA_LLM_LIBRARY: OLLAMA_LOAD_TIMEOUT:5m0s OLLAMA_MAX_LOADED_MODELS:0 OLLAMA_MAX_QUEUE:512 OLLAMA_MODELS:C:\\Users\\MQ\\.ollama\\models OLLAMA_MULTIUSER_CACHE:false OLLAMA_NOHISTORY:false OLLAMA_NOPRUNE:false OLLAMA_NUM_PARALLEL:0 OLLAMA_ORIGINS:[* http://localhost https://localhost http://localhost:* https://localhost:* http://127.0.0.1 https://127.0.0.1 http://127.0.0.1:* https://127.0.0.1:* http://0.0.0.0 https://0.0.0.0 http://0.0.0.0:* https://0.0.0.0:* app://* file://* tauri://* vscode-webview://*] OLLAMA_SCHED_SPREAD:false OLLAMA_TMPDIR: ROCR_VISIBLE_DEVICES:]"
time=2024-12-01T10:58:15.739+08:00 level=INFO source=images.go:755 msg="total blobs: 23"
time=2024-12-01T10:58:15.740+08:00 level=INFO source=images.go:762 msg="total unused blobs removed: 0"
time=2024-12-01T10:58:15.740+08:00 level=INFO source=routes.go:1240 msg="Listening on [::]:8000 (version 0.4.1-1-g14a68a0)"
time=2024-12-01T10:58:15.741+08:00 level=INFO source=common.go:49 msg="Dynamic LLM libraries" runners="[cpu_avx2 rocm cpu cpu_avx]"
time=2024-12-01T10:58:15.741+08:00 level=INFO source=gpu.go:221 msg="looking for compatible GPUs"
time=2024-12-01T10:58:15.741+08:00 level=INFO source=gpu_windows.go:167 msg=packages count=1
time=2024-12-01T10:58:15.741+08:00 level=INFO source=gpu_windows.go:214 msg="" package=0 cores=8 efficiency=0 threads=16
time=2024-12-01T10:58:16.197+08:00 level=INFO source=types.go:123 msg="inference compute" id=0 library=rocm variant="" compute=gfx1103 driver=6.1 name="AMD Radeon 780M Graphics" total="33.7 GiB" available="33.6 GiB"

复制
当然也可以直接在 Windows
运行
输入 ollama
启动,这样右小角会有个任务图标提示。
ollama
运行后就是下载需要的大模型。这里我下载了部分大模型看了看。
C:\Users\MQ>ollama list
NAME                        ID              SIZE      MODIFIED     
qwen2.5:7b                  845dbda0ea48    4.7 GB    15 hours ag   
mxbai-embed-large:latest    468836162de7    669 MB    17 hours ago 
dolphin-llama3:latest       613f068e29f8    4.7 GB    17 hours ago 
llama3.1:latest             42182419e950    4.7 GB    18 hours ago 
nomic-embed-text:latest     0a109f422b47    274 MB    2 weeks ago

复制

大模型测试

运行各家大模型看看其功能。
llama3
大模型测试
在大模型回答问题的时候,看一下监控,确实使用到了 GPU
显卡能力。
llama3 gpu
监控
再看看阿里云的通义千问模型。
通义千问大模型测试
不同模型对相同问题的回答也不完全一样,并且大模型的数据都有个截止时间,llama3
的训练数据截止到 2021年12月31日。
上面这种是命令行下的文档,跟 ChatGPT
的使用体验比起来还差点意思。所以还需要下载一个开源框架 open webui
配合ollama
使用。Open WebUI
是一个可扩展、功能丰富且用户友好的自托管 WebUI
,旨在完全离线操作。它支持各种 LLM 运行程序,包括 Ollama
OpenAI
兼容的 API。

Ollama WebUI
部署

Ollama WebUI
是一个革命性的 LLM 本地部署框架,具有类似 ChatGPT 的 Web 界面。安装方式支持 docker
。前提是先安装了 ollama
,然后同机部署 webui
,命令如下:
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://192.168.0.102:8000 --name open-webui --restart always ghcr.io/open-webui/open-webui:main

复制
这里面最关键的就是参数 -e OLLAMA_BASE_URL=http://192.168.0.102:8000
。这是前面 ollama
启动后监听的 ip
和端口信息。我的docker
ollama
不是在一个虚拟机环境中,所以需要指定这个参数。
(base) mq@OBPILOT:/mnt/c/Users/MQ$ docker ps
CONTAINER ID   IMAGE                                COMMAND           CREATED        STATUS                            PORTS                                       NAMES
5e8f9555c9ab   ghcr.io/open-webui/open-webui:main   "bash start.sh"   19 hours ago   Up 4 seconds (health: starting)   0.0.0.0:3000->8080/tcp, :::3000->8080/tcp   open-webui

复制

ollama webui
使用

启动成功后可以浏览器打开地址:http://172.20.143.100:3000
。第一次访问会要求本地注册一个账户。
open webui
界面整体风格跟 ChatGPT
确实比较像。这问题回答的质量差强人意,这可能是大模型自身的问题,也可能是内容的问题。当使用者问的问题不是自己擅长的领域时,大模型的回答还是有很大帮助。
ollama webui
的作用不仅仅如此,它还有个官网 https://openwebui.com/
,上面有很多开发者贡献的大模型,很多是在大厂大模型基础上定制修改的。
openwebui
官网
这些模型导入到 ollama webui
中也是很方便。不过这些模型没看出有什么有趣的。
如果要看有趣的大模型用法,下面这个应用 backyard.ai

backyard AI

backyard AI
是一个免费的 AI 聊天应用程序,允许用户通过文本和语音与可自定义的 AI 角色互动,具有故事书、语法和高级模型参数等功能,同时保持隐私并支持离线工作。
官网地址:https://backyard.ai/hub
,也支持 APP 下载本地部署。
backyard AI
这个 APP 使用时也是支持 ADM 780M
核显。
GPU
设置
初步使用看也是将大模型下载到本地运行。
使用也很有趣,每个模型都有详细的描述这个模型的指定建议、人格特点,以及模型参数设置。参数估计要考虑机器配置,影响的是对话的质量。
对话很有故事性,默认是英文的。
当然对话你可以发中文,AI
会回复英文,估计翻译是调用的网络哪个平台的翻译服务。整个AI
里的描述估计是以星球大战小说或影视剧本文本做训练的。
目前初步感觉也仅仅是有趣,如果是深入研发,这个AI
场景功能估计还能做到更惊艳。
大模型的回答取决于它做训练时的数据集,知识都有一定时效性。如果是期望能分析特有的知识文档,也有这类应用。

Anything LLM

AnythingLLM
Mintplex Labs Inc.
开发的一款开源 ChatGPT
等效工具,用于在安全的环境中与文档等进行聊天,专为想要使用现有文档进行智能聊天或构建知识库的任何人而构建。开源地址:https://github.com/Mintplex-Labs/anything-llm
AnythingLLM
也是一个集成了RAG
AI Agent
功能的 AI 桌面应用。软件部署也很简单,第一次运行后也需要做一些配置。
这个软件支持本地部署的 ollama
AnythingLLM
配置大模型框架
这里还需要配置一个向量数据库。不过还没有支持 OceanBase
,所以就选默认的。

RAG
 和向量数据库介绍

RAG
是什么?为什么这里要用到 RAG
?这个我不熟悉,就交给大模型自己回答吧。:)

这是通义千问的回答,感觉是比较简单,还是问搜索引擎吧。
Retriveal Augmented Generation(RAG)
检索增强生成,是一种结合了知识检索和生成模型的技术方法,用于减少“幻觉”的产生,主要使用在问答系统,为用户提供正确的答案。
RAG
应用框架
上图 RAG
应用框架中就有个向量数据库。向量数据库是RAG方式的一个重要的数据来源。
向量数据库(Vector Database
)是一种专门用于存储和查询向量数据的数据库系统。传统的数据库主要侧重于存储和查询结构化数据,而向量数据库则专注于处理和索引高维
度向量数据。它的主要特点是能够高效地存储和检索大规模向量数据。
RAG
这是一门新的领域,跟数据库的“向量”距离有一点远,非我所长,这里就不“胡说八道”了。有兴趣的可以看看蚂蚁AI
团队的微信公众号和视频号:EosphorosAI
,里面有很多实践分享(见文末链接)。
向量数据库跟数据库就有很多联系。现在传统关系型数据库 ORACLE
MySQL
PostgreSQL
也都支持向量类型和查询方法。OceanBase
数据库也不甘落后,在最近的发布会上也公布了向量查询的功能和性能 。后面我还会借助 OceanBase
数据库看看所谓的向量查询到底是什么。
这里继续介绍 AnythingLLM
的有趣用法,就是分析文档。

AnythingLLM
分析文档

AnythingLLM
的对话框里,是可以直接发送文档(txt
csv
pdf
等)。发送文档后,AnythingLLM
会解析文档,以向量的格式将解析结果存储到向量数据库里。所以这里还需要设置一下向量处理模型。
这里使用模型 mxbai-embed-large:latest
替换了 AnythingLLM
默认的嵌入式模型。
然后再对话框里上传两个文档。这里我选择了 OceanBase
GaussDB
的部署文档,然后提一个还是有一定难度的问题试试看。
看来这个问题有点难,GPU
想了一会,通常说的脑子要冒烟了,在这里还是更形象具体(开个玩笑,实际上大部分问题,GPU
都不超过十几秒就返回了)。
回答的很简单粗略,说不上正确。真要比较的时候还是自己亲自分析吧。这里就是个演示。真要做这样一个大模型产品,估计还是要做一些深度研发和调试的。
接下来为了看看向量数据库在这种问答类大模型应用中具体有什么用,我们再来看看 OceanBase
社区团队开发的 AI
互动项目。

OceanBase AI 动手实战营

开源项目地址:https://gitee.com/oceanbase-devhub/ai-workshop-2024
这里面也给出了 RAG
应用的框架图。
RAG Application
问答交互流程解释如下:
  • 用户在 Web 界面中输入想要咨询的问题并发送给机器人
  • 机器人将用户提出的问题使用文本嵌入模型转换为向量
  • 将用户提问转换而来的向量作为输入在 OceanBase
    中检索最相似的向量
  • OceanBase
    返回最相似的一些向量和对应的文档内容
  • 机器人将用户的问题和查询到的文档一起发送给大语言模型并请它生成问题的回答
  • 大语言模型分片地、流式地将答案返回给机器人
  • 机器人将接收到的答案也分片地、流式地显示在 Web 界面中,完成一轮问答

OceanBase AI
项目部署

项目部署方法就参考里面的 Readme.md
。其他地方写的部署方法(包括我这里写的)都不可靠。其原因是每个人环境可能有不同,所以碰到的问题也不尽相同。此外就是这个源码和发布会经常性更新。所以以前的问题可能不是问题,以前没有的问题现在可能有了。
下面是部署的一些理解和经验,仅供参考。
首先这个应用依赖一个 Python
环境,大概3.9~3.10
都可以(3.10
我是没有跑通,3.9.5
是跑通了)。这里推荐先部署 conda
软件来管理 Python
环境。
sh Anaconda3-2024.10-1-Linux-x86_64.sh
conda create --name python3.9.5 python=3.9.5
conda activate python3.9.5

(base) mq@OBPILOT:~$ conda info --env
# conda environments:
#
base                  *  /home/mq/anaconda3
python3.9.5              /home/mq/anaconda3/envs/python3.9.5

(base) mq@OBPILOT:~$ conda activate python3.9.5
(python3.9.5) mq@OBPILOT:~$ 

复制
然后是下载项目。
git clone https://gitee.com/oceanbase-devhub/ai-workshop-2024.git

复制
下载后进项目目录,设置运行环境配置文件 .env
(python3.9.5) mq@OBPILOT:~/gitee/ai-workshop-2024$ cat .env
API_KEY=sk-4b85613d2726432f97f2****d50bfe30
LLM_MODEL="qwen-turbo-2024-11-01"
LLM_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"

HF_ENDPOINT=https://hf-mirror.com
BGE_MODEL_PATH=BAAI/bge-m3

OLLAMA_URL=
OLLAMA_TOKEN=

# OPENAI_EMBEDDING_API_KEY 一项请填写和 API_KEY 一样的值
OPENAI_EMBEDDING_API_KEY=sk-4b85613d2726432f97f2****d50bfe30
OPENAI_EMBEDDING_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1/embeddings"
OPENAI_EMBEDDING_MODEL=text-embedding-v3

UI_LANG="zh"

# 如果你使用的是 OB Cloud 的实例,请根据实例的连接信息更新下面的变量
DB_HOST="127.0.0.1"
DB_PORT="2881"
DB_USER="root@test"
DB_NAME="test"
DB_PASSWORD=""

复制
这里面主要就是要配置大模型调用地址的 API_KEY
。按上面配置文件记录的需要提供阿里云百炼里平台里的大模型调用的API KEY
。地址:https://bailian.console.aliyun.com/
。第一次需要登录阿里云账户,并且免费开通大模型服务。
一定要开通,并且确保阿里云账户自己不是欠费状态。
点击右上角用户下的API KEY
,创建属于你的API-KEY
复制API-KEY
在上面的配置文件.env
后面是向量数据库的配置地址。这里使用的OceanBase
MySQL
租户。所以部署前还需要有一个 OceanBase 4.3.3.1
数据库。参考我以前的文章有手动部署方法,这里图简单就直接用 docker
部署一个。
docker run --name=ob433 -e MODE=mini -e OB_MEMORY_LIMIT=8G -e OB_DATAFILE_SIZE=10G -e OB_CLUSTER_NAME=ailab2024 -e OB_SERVER_IP=127.0.0.1 -p 0.0.0.0:2881:2881 -d quay.io/oceanbase/oceanbase-ce:4.3.3.1-101000012024102216

复制
注意上面docker
容器映射IP
的时候用0.0.0.0:2881:2881
,不然不好远程用客户端工具访问这个数据库。
这个项目还有个配置文件 pyproject.toml
,这个里面会有相关依赖包的信息。依赖包通过 poetry
管理。所以还需要事先安装 poetry
包。
python -m pip install poetry

复制
然后在项目文件夹下运行:
poetry lock
poetry install

复制
后面在运行项目脚本如果报错,提示缺失什么 python
包,都写到这个配置文件中,然后再次运行上面命令。下面是我运行成功后的配置文件示例。
(python3.9.5) mq@OBPILOT:~/gitee/ai-workshop-2024$ cat pyproject.toml 
[tool.poetry]
name = "ai-workshop"
version = "0.1.0"
description = ""
authors = ["yuyi <yuyi.wsy@oceanbase.com>"]
readme = "README.md"
package-mode = false

[tool.poetry.dependencies]
python = ">=3.9,<3.9.7 || >3.9.7,<4.0"
langchain = "^0.3.0"
langchain-openai = "^0.2.0"
streamlit = "^1.38.0"
pyobvector = "^0.1.14"
langchain-community = { git = "https://github.com/oceanbase-devhub/langchain-community.git", rev = "main" }

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

[[tool.poetry.source]]
name = "PyPI"
priority = "supplemental"

[[tool.poetry.source]]
name = "aliyun"
url = "https://mirrors.aliyun.com/pypi/simple/"
priority = "primary"

复制

解析文档

紧接着就是给大模型喂文档。可以先将文档下载到项目目录下的 doc_repos/
git clone --single-branch --branch V4.3.4 https://github.com/oceanbase/oceanbase-doc.git doc_repos/oceanbase-doc

复制
然后就是解析文档,分两步:
# 把文档的标题转换为标准的 markdown 格式
poetry run python convert_headings.py doc_repos/oceanbase-doc/zh-CN

# 生成文档向量和元数据
poetry run python embed_docs.py --doc_base doc_repos/oceanbase-doc/zh-CN/640.ob-vector-search

复制
项目提供了 embed_docs.py
脚本,通过指定文档目录和对应的组件后,该脚本就会遍历目录中的所有 markdown
格式的文档,将长文档进行切片后使用嵌入模型转换为向量,并最终将文档切片的内容、嵌入的向量和切片的元信息(JSON
格式,包含文档标题、相对路径、组件名称、切片标题、级联标题)一同插入到 OceanBase
的同一张表中,作为预备数据待查。
为了节省时间,这个项目居然说只处理 OceanBase
众多文档中与向量检索有关的几篇文档。
这一步可以随时重复做,后续还可以添加新的文档目录。

运行 AI
应用

最后就是运行起这个AI
应用。命令如下:
poetry run streamlit run --server.runOnSave false chat_ui.py
(python3.9.5) mq@OBPILOT:~/gitee/ai-workshop-2024$ poetry run streamlit run --server.runOnSave false chat_ui.py
  You can now view your Streamlit app in your browser.
  Local URL: http://localhost:8501
  Network URL: http://172.20.143.100:8501浏览器打开上面提示的地址。

复制
从左边可以看出使用的通义千问的模型。
答案输出的页面比较大,我直接截图终端命令行下的日志输出。
这个答案还算可以,关键的途径都提示到了。
在给这个大模型喂文档数据的时候,也可以将自己的 obsidian
笔记内容放进去,然后问一个跟OceanBase
无关的问题。

数据库向量查询

上面这个DEMO
使用了OceanBase
做向量查询。OceanBase
不是专门的向量数据库,只是提供了一些向量查询(项目中叫向量检索)。
向量检索是在向量数据库中快速找到与查询向量最相似的向量的技术。其核心特点包括:
  • 基于向量间的距离(如欧氏距离)或相似度(如余弦相似度)进行搜索
  • 通常使用近似最近邻(Approximate Nearest Neighbor, ANN
    )算法来提高检索效率
  • OceanBase 4.3.3
    支持 HNSW 算法,这是一种高效的 ANN 算法
  • 使用 ANN 可以快速从百万甚至亿级别的向量中找到近似最相似的结果
  • 相比传统关键词搜索,向量检索能更好地理解语义相似性
OceanBase
在关系型数据库模型基础上将“向量”作为一种数据类型进行了完好的支持,使得在 OceanBase 一款数据库中能够同时针对向量数据和常规的结构化数据进行高效的存储和检索。在本项目中,我们会使用 OceanBase
建立 HNSW (Hierarchical Navigable Small World)
向量索引来实现高效的向量检索,帮助我们快速找到与用户问题最相关的文档片段。
这里再看看数据库中表结构和 SQL 方便理解上面这段话。
show create table corpus;

CREATE TABLE `corpus` (
  `id` varchar(4096NOT NULL,
  `embedding` VECTOR(1024DEFAULT NULL,
  `document` longtext DEFAULT NULL,
  `metadata` json DEFAULT NULL,
  `component_code` int(11NOT NULL,
  PRIMARY KEY (`id``component_code`),
  VECTOR KEY `vidx` (`embedding`WITH (DISTANCE=L2,M=16,EF_CONSTRUCTION=256,LIB=VSAG,TYPE=HNSW, EF_SEARCH=64) BLOCK_SIZE 16384
DEFAULT CHARSET = utf8mb4 ROW_FORMAT = DYNAMIC COMPRESSION = 'zstd_1.3.8' REPLICA_NUM = 1 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 0
 partition by list(component_code)
(partition `observer` values in (1),
partition `ocp` values in (2),
partition `oms` values in (3),
partition `obd` values in (4),
partition `operator` values in (5),
partition `odp` values in (6),
partition `odc` values in (7),
partition `p10` values in (DEFAULT));

SELECT corpus.document, corpus.metadata 
FROM corpus PARTITION(observer) 
ORDER BY l2_distance(corpus.embedding, '[-0.022824034,0.0023560524,-0.094118156,0.036991335,-0.056135304,-0.042940456,-0.0190677,0.02940239,0.079397894,0.026218085,-0.02469267,-0.012374937,0.007202823,-0.002078379,0.031747717,-0.051177703,0.071694545,

<.... 省略若干行 ... >

-0.02610368,-0.0013573818,-0.0069406424,-0.01040143,-0.03712481,-0.039813355,-0.021355823,0.06334289,0.0072933948,0.0029721775,-0.010668377,-0.0028720722,-0.03817353,-0.0060206256,0.0634573,0.006320942,0.051559057,-0.059796304]'

APPROXIMATE limit 10;

复制
上面是问答时搜索答案搜索到本地笔记内容的 SQL
这个项目挺好的,可惜只是个DEMO
,不知道后续还会不会继续打磨。
不过 OceanBaes
官网是专门推出了一个查询文档的AI
助手,使用的应该就是跟上面类似的技术。地址:https://www.oceanbase.com/obi
还没完,大模型的应用还不止这些,还有一个非常大的场景:AI
作图。

Stable Diffusion
大模型以及 AI
作图

Stable Diffusion
2022
年发布的深度学习文本到图像生成模型。它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如内补绘制、外补绘制,以及在提示词指导下产生图生图的转变。
基于 Stable Diffusion
模型开发的应用很多,其中有一款叫:A绘世
这里面支持的大模型技术非常多,果然是隔行如隔山。
这款产品同样也支持 AMD 780M
核显。这个产品网上介绍很多,这里就对使用效果给一个展示。
产品运行后也是起一个web
服务。生成图片的内容取决于输入的参数,参数非常多。
本机GPU
生成图片的速度一般在20s
左右,如果设置的参数很多,分辨率极高,可能需要几分钟。
尽管AI
作图很强,仍不免有时候生成的图片局部细节感觉有点违和(别扭)。这个估计跟输入参数和模型的能力有关系。想要“画”一副好看的画,也是要花很多精力去调参。

参考:

  • https://www.wjd8.cn/archives/wei-ming-ming-wen-zhang
  • Ollama
    :支持 AMD 780M
    核显GPU
    的项目:https://github.com/likelovewant/ollama-for-amd
  • Open WebUI
    :本地化的ChatGPT
    聊天平台:https://openwebui.com/
  • Backyard AI
    全面的AI
    聊天平台:https://backyard.ai/
  • AnythingLLM: The all-in-one AI APP
    :https://github.com/Mintplex-Labs/anything-llm
  • OceanBase AI
    动手实战营:https://gitee.com/oceanbase-devhub/ai-workshop-2024
  • 阿里云百炼助手:https://bailian.console.aliyun.com/
  • OceanBase
    文档AI
    助手:https://www.oceanbase.com/obi
  • OB 4.2 集群手动部署方法
  • 从大数据到大模型:现代应用的数据范式
  • 体验SQL+AI,用OceanBase搭建你的AI助手


如果还有什么有趣的使用场景,欢迎留言!

文章转载自数据库技术闲谈,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论