私有化文本嵌入(Embedding) + Weaviate

weavaite向量库可以集成第三方托管的模型,这使得开发体验得到了增强,例如

1、将对象直接导入Weaviate,无需手动指定嵌入(Embedding)

2、使用生成式AI模型(LLM)构建集成检索增强生成(RAG)管道

同时weaviate也可以与Transformers库无缝集成,允许用户直接在Weaviate数据库中利用兼容的模型。这些集成使开发人员能够轻松构建复杂的人工智能驱动应用程序

本文重点讨论通过本地模型文件(词嵌入模型gte-large-zh)来构建自定义Transformers模型镜像,通过与weaviate模块集成赋予weaviate文本嵌入功能。

构建自定义Transformers模型镜像

创建 Dockerfile 并下载模型

# 用于构建词嵌入模型镜像的基础镜像
FROM semitechnologies/transformers-inference:custom 
# 将本地词嵌入模型放到当前目录下(my-model) /app/models/model是词嵌入镜像生成后的位置
# 不要修改/app/model/model,因为这是weaviate应用程序指定的模型路径
COPY ./my-model /app/models/model

构建并标记 Dockerfile

docker build -f my-inference-image.Dockerfile -t my-inference-image .
在 Weaviate 实例中使用该镜像

配置docker-compose.yml文件
 

version: '3.4'
services:
  weaviate:
    command:
    - --host
    - 0.0.0.0
    - --port
    - '8080'
    - --scheme
    - http
    image: cr.weaviate.io/semitechnologies/weaviate:1.24.8
    ports:
    - 8087:8080
    - 50052:50051
  t2v-transformers:
    image: gte-large-zh
    ports:
     - "9090:8080"
    environment:
      ENABLE_CUDA: '1'
      NVIDIA_VISIBLE_DEVICES: 'all'

# nvidia GPU支持配置
    deploy:
      resources:
        reservations:
          devices:
           - driver: nvidia
             count: 1
             capabilities: [gpu]

设置ENABLE_CUDA= '1',表示启用GPU,如果要启用GPU需要提供对gpu支持的容器。

前提条件
Installing the NVIDIA Container Toolkit — NVIDIA Container Toolkit 1.16.0 documentation
 

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值