www.teandq.com
晓安科普

知识库平台设计(知识库框架设计)万万没想到

2023-12-05Aix XinLe

1,视频地址「链接」2,整体架构和技术方案项目名称 llm-knowledge-system 大模型知识库系统 项目代码在,逐步开发设计中。ll

知识库平台设计(知识库框架设计)万万没想到

 

1,视频地址「链接」2,整体架构和技术方案项目名称 llm-knowledge-system 大模型知识库系统 项目代码在,逐步开发设计中llm-knowledge-system: 大模型知识库系统

开发语言使用golang进行开发 框架使用goframe主要是考虑到高并发,和快速部署3,goframe框架官方:https://goframe.org/display/gf 代码: https://gitee.com/johng/gf。

GoFrame是一款模块化、高性能、企业级的Go基础开发框架GoFrame是一款通用性的基础开发框架,是Golang标准库的一个增强扩展级,包含通用核心的基础开发组件,优点是实战化、模块化、文档全面、模块丰富、易用性高、通用性强、面向团队。

GoFrame即可用于开发完整的工程化项目,由于框架基础采用模块化解耦设计,因此也可以作为工具库使用如果您想使用Golang开发一个业务型项目,无论是小型还是中大型项目,GoFrame是您的不二之选如果您想开发一个Golang组件库,GoFrame提供开箱即用、丰富强大的基础组件库也能助您的工作事半功倍。

如果您是团队Leader,GoFrame丰富的资料文档、详尽的代码注释、活跃的社区成员将会极大降低您的指导成本,支持团队快速接入、语言转型与能力提升4,搜索库 MeiliSearchMeiliSearch 基于 Rust 语言开发的开源搜索引擎

https://www.meilisearch.com/5,向量数据库 milvushttps://milvus.io/一款开源向量数据库,赋能 AI 应用和向量相似度搜索 Field:类似表字段,可以是结构化数据,当然还可以是向量; Entity:一组Field,类似表的一条数据; Collection:一组Entity,类似于表;。

Milvus不单单是向量检索工具,而是向量数据库,能对不同业务的向量隔离,分开存储; 提供可视化管理工具; 支持带过滤条件的向量混合检索6,关于fastchat部署 ChatGLM3和 BGE的embedding。

之前的项目已经调研清楚了:【ChatGLM3】(5):使用 fastchat 部署ChatGLM3服务,启动8bit的worker,可以运行openai_api服务和web界面方便进行测试还支持embeddings 接口!。

https://blog.csdn.net/freewebsys/article/details/134484318?spm=1001.2014.3001.5501fastchat其实可以分开部署,分为 CPU 版本和 GPU 版本。

这样在生产环境更灵活 其中workder可以支持多机器部署:bash# 构建 cpu 版本 FROM python:slim-bullseye # 设置python3的镜像源 RUN mkdir

/root/.pip/ && echo "[global]" > /root/.pip/pip.conf && \ echo "index-url = https://mirrors.aliyun.com/pypi/simple/"

>> /root/.pip/pip.conf && \ echo "[install]" >> /root/.pip/pip.conf && \ echo "trusted-host=mirrors.aliyun.com"

>> /root/.pip/pip.conf # 先安装 RUN pip3 install "fschat[controller]"GPU的镜像主要跑模型:bash## 参考文章:https://blog.csdn.net/freewebsys/article/details/134567530

FROM pytorch/pytorch:2.1.0-cuda12.1-cudnn8-devel # 设置debian的镜像源 && # 设置python3的镜像源 RUN echo"deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse"

> /etc/apt/sources.list && \ echo"deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse"

>> /etc/apt/sources.list && \ echo"deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse"

>> /etc/apt/sources.list && \ echo"deb https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse"

>> /etc/apt/sources.list && \ pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple && \

pip3 config set install.trusted-host mirrors.aliyun.com # 先安装 xformers 再安装 fastchat, 就不会安装 pytroch 了,会使用 xformers 依赖的版本了。

# apt update && apt install -y net-tools vim RUN pip3 install transformers accelerate sentencepiece \ && pip3 install

"fschat[model_worker,webui]"7,整个的docker-compose组件整个的docker-compose文件: 包括: mysql,seilisearch,milvus,fastchat的ChatGLM3,BGE-zh

yamlversion: 3.5 services:################## mysql 数据库 5.7 版本 ##################mysql:restart:always

image:mysql:5.7container_name:mysqlports:-"3306:3306"volumes:-"./data/mysql:/var/lib/mysql"# - "./conf/mysql/mysql.cnf:/etc/mysql/conf.d/mysql.cnf"

environment:MYSQL_ROOT_PASSWORD:mysqladminMYSQL_DATABASE:llm_knowledgeTZ:Asia/Shanghaicommand:[--character-set-server=utf8mb4

,--collation-server=utf8mb4_general_ci,--max_connections=3000]################## meilisearch 1.5 搜索服务 ##################

meilisearch:restart:alwaysimage:getmeili/meilisearch:v1.5container_name:meilisearchports:-"7700:7700"

volumes:-"./data/meilisearch:/meili_data"environment:MEILI_ENV:productionMEILI_MASTER_KEY:admin_1234567890

##################### 向量数据库配置 #####################etcd:restart:alwayscontainer_name:milvus-etcdimage:

quay.io/coreos/etcd:v3.5.5environment:-ETCD_AUTO_COMPACTION_MODE=revision-ETCD_AUTO_COMPACTION_RETENTION=1000

-ETCD_QUOTA_BACKEND_BYTES=4294967296-ETCD_SNAPSHOT_COUNT=50000volumes:-./data/milvus/etcd:/etcdcommand:

etcd-advertise-client-urls=http://127.0.0.1:2379-listen-client-urlshttp://0.0.0.0:2379--data-dir/etcd

healthcheck:test:["CMD","etcdctl","endpoint","health"]interval:30stimeout:20sretries:3minio:restart:always

container_name:milvus-minioimage:minio/minio:RELEASE.2023-03-20T20-16-18Zenvironment:MINIO_ACCESS_KEY:

minioadminMINIO_SECRET_KEY:minioadminports:-"9001:9001"-"9000:9000"volumes:-./data/milvus/minio:/minio_data

command:minioserver/minio_data--console-address":9001"healthcheck:test:["CMD","curl","-f","http://localhost:9000/minio/health/live"

]interval:30stimeout:20sretries:3milvus-standalone:restart:alwayscontainer_name:milvus-standaloneimage:

milvusdb/milvus:v2.3.3command:["milvus","run","standalone"]security_opt:-seccomp:unconfinedenvironment:

ETCD_ENDPOINTS:etcd:2379MINIO_ADDRESS:minio:9000volumes:-./data/milvus/milvus:/var/lib/milvushealthcheck:

test:["CMD","curl","-f","http://localhost:9091/healthz"]interval:30sstart_period:90stimeout:20sretries:

3ports:-"19530:19530"-"9091:9091"depends_on:-"etcd"-"minio"##################### 使用fastchat部署大模型 #####################

fastchat-controller:restart:alwayscontainer_name:fastchat-controllerimage:fastchat-cpu:v1.0build:context:

.dockerfile:docker/fastchat/DockerfileCpu# 获取当前ip地址command:python3-mfastchat.serve.controller--host0.0

.0.0--port21001fastchat-api:restart:alwayscontainer_name:fastchat-apiimage:fastchat-cpu:v1.0build:context:

.dockerfile:docker/fastchat/DockerfileCpu# 获取当前ip地址 执行模型ports:-"8000:8000"command:bash-c"python3 -m fastchat.serve.openai_api_server --controller-address http://fastchat-controller:21001 \ --host 0.0.0.0 --port 8000 "。

depends_on:-"fastchat-controller"fastchat-worker-chatglm3:restart:alwayscontainer_name:fastchat-worker-chatglm3

image:fastchat-gpu:v1.0volumes:-./models/chatglm3-6b:/data/models/chatglm3-6bbuild:context:.dockerfile:

docker/fastchat/DockerfileGpu# 是以 GPU 资源deploy:resources:reservations:devices:-driver:"nvidia"count:"all"

capabilities:["gpu"]# 获取当前ip地址 执行模型command:bash-c"python3 -m fastchat.serve.model_worker --load-8bit --model-names chatglm3-6b \ --model-path /data/models/chatglm3-6b --controller-address http://fastchat-controller:21001 \ --worker-address http://fastchat-worker-chatglm3:8001 --host 0.0.0.0 --port 8001 "。

depends_on:-"fastchat-controller"fastchat-worker-bge-large-zh:restart:alwayscontainer_name:fastchat-worker-bge-large-zh

image:fastchat-gpu:v1.0volumes:-./models/bge-large-zh:/data/models/bge-large-zhbuild:context:.dockerfile:

docker/fastchat/DockerfileGpu# 是以 GPU 资源deploy:resources:reservations:devices:-driver:"nvidia"count:"all"

capabilities:["gpu"]# 获取当前ip地址 执行模型command:bash-c"python3 -m fastchat.serve.model_worker --model-names bge-large-zh \ --model-path /data/models/bge-large-zh --controller-address http://fastchat-controller:21001 \ --worker-address http://fastchat-worker-bge-large-zh:8001 --host 0.0.0.0 --port 8001 "。

depends_on:-"fastchat-controller"networks:default:name:knowledge-network8,总结整个的docker-compose文件:项目介绍端口

mysql数据库3306meilisearch搜索库7700milvus向量数据库19530fastchat模型框架,部署chatglm3,BGE-zh8000使用goframe可以快速创建项目 然后就可以进行开发了。

在项目的docker-compose 目录下可以直接将各种中间件服务都启动 配置都在各自中间件的目录下面数据都存储在data目录下面

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186

知识知识库平台设计(知识库框架设计)万万没想到

2023-12-05Aix XinLe140

知识库平台设计(知识库框架设计)万万没想到1,视频地址「链接」2,整体架构和技术方案项目名称 llm-knowledge-system 大模型知识库系统 项目代码在,逐步开发设计中。ll…

知识知识库平台设计(知识库搭建平台)太疯狂了

2023-12-05Aix XinLe122

知识库平台设计(知识库搭建平台)太疯狂了随着知识经济和信息技术的蓬勃发展,知识资源成为了企业重要的无形资产。当前,企业的核心竞争力不仅取决于人员数量…

知识知识库平台设计(知识库搭建平台)太疯狂了

2023-12-05Aix XinLe16

知识库平台设计(知识库搭建平台)太疯狂了产品概述Baklib是一款专业的知识库搭建平台,它帮助客户搭建内部知识库和对外帮助中心。在今天的信息时代,知识已经成为组织的核心竞争力,而Bak…

历史北方桂花树种植技术(四桂花树种植技术视频)真没想到

2023-12-05Aix XinLe136

北方桂花树种植技术(四桂花树种植技术视频)真没想到常见栽培的有金桂、银桂、丹桂、四季桂、月桂等品种,其中的四季桂和月桂能开花多次,可常闻清香。四季桂抽枝能力强,容易养成球形树冠,又可观赏树形枝叶…

历史华硕p5q(华硕p5ql pro主板支持内存)越早知道越好

2023-12-05Aix XinLe182

华硕p5q(华硕p5ql pro主板支持内存)越早知道越好哈喽大家好从上次的300元大战LOL过后现在又来到了如何用500元配置出一台可以吃鸡的主机,废话不多说,开始内容。…