WIN10 本地部署 BGE Embedding 向量化模型

1.下载 BGE 模型

Hugging Face 官网

最好是科学上网,或者从其他渠道下载

2.安装

本文通过 Anconda 创建虚拟环境演示,可以直接用本地环境或其他虚拟形式,Anconda 的替代包可以用 Miniforge(命令是与 Anconda 兼容的)

1.创建虚拟环境

## 查看版本
conda -V
## 查看已有环境列表
conda env list
## 创建环境
conda create -n env-bge python=3.10

在这里插入图片描述

2.安装依赖

## 激活虚拟环境
conda activate env-bge
## 依赖包
pip install -U FlagEmbedding

在这里插入图片描述

3.本地测试

在模型文件所在的目录,打开控制台文件夹,并切换到虚拟环境 env-bge

测试命令

## 激活虚拟环境
conda activate env-bge
## BGE 命令
from FlagEmbedding import BGEM3FlagModel
model = BGEM3FlagModel('bge-m3', use_fp16=True)
sentences_1 = ["你多大了"]
sentences_2 = ["你几岁了"]
embeddings_1 = model.encode(sentences_1, batch_size=12, max_length=8192)['dense_vecs']
embeddings_2 = model.encode(sentences_2)['dense_vecs']
similarity = embeddings_1 @ embeddings_2.T

在这里插入图片描述

3.将服务封装为HTTP可调用形式

1.生成向量值

# encoding=utf-8
import http.server
import socketserver
import urllib.parse
from FlagEmbedding import FlagModel

# 设置HTTP服务的端口号
HOST = '0.0.0.0'
PORT = 8800

# 读取模型
model_zh = FlagModel('ZH\\bge-large-zh', use_fp16=True)
model_en = FlagModel('EN\\bge-large-en', use_fp16=True)
model_m3 = FlagModel('M3\\bge-m3', use_fp16=True)

# 创建一个
在Python中,验证数据是否符合本福特定律可以通过计算每个数字1到9作为首位数字的频率,并与理论频率(通常是1/3, 2/3, 1/4, 3/4, 1/5, 2/5, ...)进行对比来进行。以下是一个简单的步骤: 1. 首先,你需要整理数据并删除所有首位为0的值,因为根据本福特定律,首位不是0的数字才参与计算。 ```python import collections def benford_law(data): data = [int(d) for d in str(data).split()] first_digits = [d for d in data if d > 0] return first_digits ``` 2. 然后,计算实际频次: ```python def calculate_frequencies(first_digits): freqs = collections.Counter(first_digits) return {digit: freqs[digit] / len(first_digits) for digit in range(1, 10)} data = ... # 这里输入你要检查的数据 first_digit_freqs = calculate_frequencies(benford_law(data)) ``` 3. 比较实际频次与理论频次: ```python from scipy import stats expected_freqs = [1/10, 2/9, 3/8, 4/7, 5/6, 6/5, 7/4, 8/3, 9/2] chi_square_statistic, p_value = stats.chisquare(first_digit_freqs.values(), expected_freqs) if p_value > 0.05: # 设置显著性水平,如0.05代表p值大于0.05,则认为数据符合本福特定律 print("数据符合本福特定律") else: print("数据不符合本福特定律") ``` 在这里,`chi_square_statistic`是用来衡量差异程度的卡方统计量,`p_value`则是对应的P值,如果P值大于设定的显著性水平,那么我们可以接受数据符合本福特定律的假设。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猪悟道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值