Elasticsearch整理之Field datatype

elasticsearch Date数据类型和时区的常见问题及解决方案 由于es内部date类型默认时区为UTC且不可修改,在实际使用时可能会出现一些时区转换相关的问题。包含1:查看时发现es写入后的时间值比实际时间相差8小时;2:使用date histogram做聚合查询涉及时区问题;3:使用now函数进行时间范围过滤出现错误 阅读详情

一、Field datatype

1.  text类型

ES的新版本不再支持string,而是将string分为text和keyword。

text 数据类型被用来索引长文本,比如说电子邮件的主体部分或者一款产品的介绍。这些文本会被分析,在建立索引前会将这些文本进行分词,转化为词的组合,建立索引。允许 ES来检索这些词语。text 数据类型不能用来排序和聚合。

2. keyword类型

keyword类型适用于索引结构化的字段,比如email地址、主机名、状态码和标签。如果字段需要进行过滤(比如查找已发布博客中status属性为published的文章)、排序、聚合。keyword类型的字段只能通过精确值搜索到。

3. 数字类型

                  类型取值范围
long-2^63至2^63-1
integer-2^31至2^31-1
short-32,768至32768
byte-128至127
double64位双精度
float32位单精度
half_float16位半精度
scaled_float缩放类型的的浮点数(比如价格只需要精确到小数点后两位,price为57.34的字段缩放因子为100,存起来就是5734)

其中,使用scaled_float时需要指定缩放因子

"price": {
      "type": "scaled_float",
      "scaling_factor": 100
 }

4. date类型

日期格式可以是以下三种类型:

(1)包含日期格式的字符串:"2015-01-01" or "2015/01/01 12:10:30".

(2)用long表示的毫秒数 milliseconds-since-the-epoch.

(3)用integer表示的秒数

推荐自己设定日期格式,更多的格式可参照(https://www.elastic.co/guide/en/elasticsearch/reference/6.3/mapping-date-format.html)

PUT my_index
{
  "mappings": {
    "_doc": {
      "properties": {
        "date": {
          "type":   "date",
          "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
        }
      }
    }
  }
}

5. boolean类型

值为true、false或"true"、"false"

6. binary类型

binary类型接受base64编码的字符串,默认不存储也不可搜索。

7. ip类型

用于存储IPv4或IPv6的地址

PUT my_index
{
  "mappings": {
    "my_type": {
      "properties": {
        "ip_addr": {
          "type": "ip"
        }
      }
    }
  }
}

PUT my_index/my_type/1
{
  "ip_addr": "192.168.1.1"
}

GET my_index/_search
{
  "query": {
    "term": {
      "ip_addr": "192.168.0.0/16"
    }
  }
}

8. geo point 类型

用于存储地理位置的经纬度

PUT my_index
{
  "mappings": {
    "my_type": {
      "properties": {
        "location": {
          "type": "geo_point"
        }
      }
    }
  }
}

PUT my_index/my_type/1
{
  "text": "Geo-point as an object",
  "location": { 
    "lat": 41.12,
    "lon": -71.34
  }
}

PUT my_index/my_type/2
{
  "text": "Geo-point as a string",
  "location": "41.12,-71.34" 
}

PUT my_index/my_type/3
{
  "text": "Geo-point as a geohash",
  "location": "drm3btev3e86" 
}

PUT my_index/my_type/4
{
  "text": "Geo-point as an array",
  "location": [ -71.34, 41.12 ] 
}

GET my_index/_search
{
  "query": {
    "geo_bounding_box": { 
      "location": {
        "top_left": {
          "lat": 42,
          "lon": -72
        },
        "bottom_right": {
          "lat": 40,
          "lon": -74
        }
      }
    }
  }
}

 

 

开源模型应用落地-qwen模型小试-入门篇(二) 在windows环境下,使用transformer设置模型参数/System Prompt/历史对话 阅读详情

相关推荐

Figma入门-自动布局

Figma原型图制作内置组件友好,自动布局类似CSS flex,通过布局网格控制对齐、分布、换行等,前端熟悉的同学易上手,参数设置基本一致。

我码玄黄的博客 2175

向量数据库本质:相似性搜索的专用引擎与选型实践

向量数据库并非通用数据库替代品,而是专为高维向量空间中的相似性搜索(Similarity Search)设计的专用存储系统。其核心原理在于通过近似最近邻(ANN)算法——如HNSW图索引或IVF+PQ量化技术——在海量数据中实现毫秒级语义匹配,解决传统数据库在高维连续空间中暴力计算不可行的根本瓶颈。技术价值体现在对AI应用关键路径的加速,如RAG检索、多模态推荐和客服知识库问答;典型应用场景包括大模型外挂知识检索、图像/语音特征匹配及实时个性化推荐。理解‘向量即查询’这一范式转换,是合理评估是否引入向量数据

weixin_33768481的博客 306

scGPT学习资料汇总 - 单细胞多组学基础模型

scGPT(single-cell Generative Pre-trained Transformer)是一个针对单细胞多组学数据的基础模型,由多伦多大学Wang Bo实验室开发。该模型通过在超过3300万个细胞上进行生成式预训练,捕捉了基因和细胞之间的复杂关系,为多种下游任务提供了强大的基础。scGPT为单细胞分析提供了强大的基础模型和丰富的资源。通过本文汇总的学习材料,读者可以快速掌握scGPT的使用,并将其应用到自己的研究中。

2401_87189860的博客 838

ES 字段类型Field type

1 核心数据类型 通过elasticsearch-head 创建一个索引 index_field 用于功能测试。 1.1 字符串 1.1.1 String 类型 ELasticsearch 5.X之后的字段类型不再支持string,由text或keyword取代。 如果仍使用string,会给出警告。 因为本地测试是要的ES版本是7.4.2,不支持string类型,这里就不做创建演示了。 1.1.2 text类型 text类型取代了string类型,当一个字段需要被全文检索的时候,需要被分词器解析,

小P聊技术 6217

别再手动切换了!用SP3485+三极管搞定RS485自动收发电路(附完整原理图)

本文详细介绍了如何利用SP3485芯片和三极管设计RS485自动收发电路,解决传统手动切换带来的IO资源占用和软件复杂度问题。通过原理分析、电路设计拆解和实战注意事项,帮助工程师打造稳定可靠的自动收发通信模块,显著提升系统性能和可靠性。

weixin_26833939的博客 512

【RT-Thread】从零到一:RT-Thread Studio工程创建与程序下载全流程实战

本文详细介绍了RT-Thread Studio开发环境的安装与使用,从工程创建到程序下载的全流程实战指南。通过具体案例演示了如何在STM32平台上快速开发RT-Thread应用,包括时钟配置、内存优化、构建调试等关键技巧,帮助开发者高效完成嵌入式系统开发。

weixin_30336061的博客 542

ES中FieldType讲解

Field(type=FieldType.Text, analyzer="ik_max_word") 表示该字段是一个文本,并作最大程度拆分,默认建立索引。@Field(type=FieldType.Keyword) 表示该字段内容是一个文本并作为一个整体不可分,默认建立索引。@Field(type=FieldType.Float) 表示该字段内容是一个浮点类型并作为一个整体不可分,默认建立索引。@Field(type=FieldType.Date) 表示该字段是一个文本,日期类型,默认不建立索引。

weixin_52293201的博客 2370

模板匹配加速之金字塔分层搜索

图像金字塔是一种多分辨率图像表示方法,它通过一系列逐渐缩小或放大的图像来表示原始图像的不同尺度。高斯金字塔(Gaussian Pyramid):通过不断下采样(降采样)生成更小的图像。拉普拉斯金字塔(Laplacian Pyramid):通过高斯金字塔和差分操作生成一组残差图像。在模板匹配中,我们主要使用高斯金字塔来实现多尺度匹配。金字塔灰度模板匹配通过多尺度搜索策略,在保持较高准确率的同时显著提升匹配速度,尤其适用于:高分辨率图像处理实时检测系统移动端设备等资源受限场景。

weixin_44969144的博客 1732

Elasticsearch中字段类型(Field Type)详解

ElasticSearch 7.7 字段类型(Field datatype)详解 字符串, object, 数值, 日期, 数组, 0x00 字符串: text,...

aben_sky的专栏 1万+

Untiy之如何实现AI+MR (Pico4u 相机推流MR画面给Server做实时AI图像识别)

本文介绍了基于Pico4U企业版开发AI+MR应用的实现方案。文章详细说明了硬件准备步骤,包括购买企业版设备、申请相机权限和注册管理平台。重点讲解了Unity开发中获取摄像头画面的两种技术方案:通过Overlay直接渲染到Android Surface,或使用API获取图像数据转换为Texture。提供了完整的代码示例和权限配置说明,并揭示了底层通过JNI调用Android原生API的技术原理。该方案适用于带电操作等实习场景,可提升安全性和学习趣味性。

TxNet 1339

科研级YOLOv8 Neck革新:BiFPN双向特征金字塔赋能,让多尺度融合更高效的实战指南

在文件夹下新建BiFPN.py,将上述BiFPNLayer和BiFPN类的代码写入其中。这一步是为了让YOLOv8的代码架构能识别我们的自定义Neck模块。

m0_64661770的博客 153

Milvus向量数据库实战:从RAG原理到部署调优与面试考点

向量检索技术通过Embedding将文本映射为高维向量,以最近邻搜索替代传统关键词匹配,成为大模型应用中突破上下文限制的关键技术。作为开源向量数据库的代表,Milvus基于存储与计算分离架构,支持IVF、HNSW等索引,提供亿级数据的毫秒级相似性搜索,广泛应用于RAG知识库、智能问答等场景。本文从RAG项目实际需求出发,系统讲解Milvus核心概念、架构演进、环境搭建、代码实现与性能调优,并结合高频面试题解析选型对比与工程落地要点,帮助开发者构建可运行的语义检索系统,并深入理解向量数据库在大模型链路中的定位

weixin_34343000的博客 352

2025年华为杯D题:低空湍流监测及最优航路规划思路与Matlab实现

2025年华为杯D题:低空湍流监测及最优航路规划思路与Matlab实现

前程算法屋的博客 772

大模型面试与RAG落地:Milvus向量数据库核心原理、索引调优与工程实践

对于正在准备大模型面试或从事RAG落地开发的工程师而言,向量数据库已成为必须掌握的基础设施。它通过高维向量的相似度计算,帮助大模型突破训练语料局限,实现私有知识与实时数据的检索增强。作为一个生产级开源向量数据库,Milvus提供分布式架构、混合查询、动态字段与GPU加速等能力,并深度适配LangChain、LlamaIndex等主流AI框架。理解Milvus的数据模型、写入查询链路及HNSW等索引的调参逻辑,是保障检索性能与召回率的关键。从Docker Compose部署到Python SDK实战,再到与D

weixin_33811539的博客 329

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

如何把自有数据导入zvec?数据准备与批量插入教程

zvec(Zvec)是一款轻量、极速的进程内向量数据库,无需部署任何服务器,用 Python 两行代码即可把自有数据导入并完成批量插入。本教程面向新手,带你完整走通「数据准备 → 建集合 → 批量插入 → 验证」全流程,几分钟内就能把自己的文本、图片嵌入向量灌入 zvec。 ## 一、为什么先做数据准备? 向量数据库对数据有三个硬性要求,提前确认能避免 90% 的导入报错: 1. **唯一

gitblog_00011的博客 320

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Milvus 2.6 实战:从零搭建 RAG 知识库的完整链路

向量数据库是构建 RAG 知识库的核心底座,它决定了大模型在检索增强生成链路中的召回质量和响应上限。不同于传统数据库,向量数据库通过 HNSW、IVF 等近似最近邻索引算法,在千万级向量数据中实现毫秒级检索,并支持元数据过滤与混合检索(向量+BM25),让企业级问答系统从 Demo 走向生产可用。在实际落地中,文档切块策略、Embedding 模型选择、索引参数调优以及重排序环节同样影响最终效果。本文以 Milvus 2.6 为例,完整演示 Standalone 部署、Collection 设计、Pytho

weixin_30843605的博客 424

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Node.js 实战 Milvus 向量数据库:从建库、向量检索到 RAG AI 日记本

本文使用 Node.js、Zilliz Cloud 和 Milvus 构建 AI 日记本,依次讲解向量数据库基础、云端集群配置、集合与索引创建、日记向量化入库、语义搜索及 RAG 问答,并深入分析四个核心脚本的执行顺序、API 参数、JavaScript 异步语法和 Prompt 设计。

meilindehuzi_a的博客 541

向量数据库+大模型构建企业级知识服务基础设施

向量数据库是支撑大语言模型实现精准企业知识检索的核心基础设施,其本质是将非结构化文档转化为可计算、可检索、可更新的语义向量,解决传统搜索无法应对的术语专有、上下文强依赖、数据高度碎片化等难题。技术原理上,它通过嵌入模型完成文本到向量空间的映射,结合混合查询(向量相似度+结构化过滤)实现语义与业务逻辑的双重匹配,显著提升RAG系统的准确率与响应实时性。该方案避免了微调带来的高成本与低敏捷性,也超越了Prompt工程的脆弱性,具备数据不出内网、分钟级更新、权限可控等企业级运维能力。典型应用场景包括智能客服、新员

ithome 571

基于Milvus构建RAG企业知识库:从原理到实战

大模型在预训练阶段只能学习公开数据,无法感知企业内部私有文档,直接使用会出现知识过期、幻觉频发等问题。为了在不重新训练模型的情况下引入内部知识,检索增强生成(RAG)架构应运而生,它通过先检索后生成的方式,让大模型基于真实文档回答用户问题。向量数据库是RAG的核心组件,负责将文本切块后生成的Embedding向量高效存储和相似度检索,其中Milvus作为开源向量数据库的代表,支持海量向量索引与毫秒级查询。本文以Milvus 2.6为例,讲解RAG与向量数据库的基本原理,详细演示从环境搭建、数据入库、相似度检

weixin_33850015的博客 412

基于Milvus与BGE-M3构建企业级语义知识库:从原理到实践

向量搜索是一种基于语义相似度计算的信息检索技术,其核心原理是将文本、图像等非结构化数据映射为高维空间中的向量表示,通过计算向量间的距离(如余弦相似度)来度量内容之间的语义相关性。这项技术的核心价值在于突破了传统关键词匹配的局限,能够理解用户查询的深层意图,实现更精准、更智能的检索。在工程实践中,它广泛应用于智能问答、推荐系统、内容去重等场景。本文聚焦于企业知识库的智能化升级,详细阐述了如何利用Milvus向量数据库的高效近似最近邻搜索能力,结合BGE-M3嵌入模型的多语言、多向量混合检索特性,构建一套支持语

weixin_30832405的博客 432

Milvus向量数据库:高并发毫秒级相似性搜索实战

相似性搜索是AI应用落地的核心能力,其本质是在高维向量空间中快速定位语义最近邻。传统关系型数据库因B+树索引失效、写查互斥、分片查询开销大等结构性缺陷,难以支撑百万级向量的低延迟检索。Milvus通过HNSW图索引、段式不可变存储与角色分离架构,从底层重构了向量数据的组织与计算范式,实现毫秒级P99延迟与线性可扩展性。其内存映射(mmap)加载、SIMD加速距离计算、动态ef参数调优等关键技术,使‘可扩展、闪电般快速’不再停留于宣传口径,而是可量化、可复现的工程现实。本文聚焦Milvus 2.4生产级部署与

weixin_34318326的博客 370

基于Milvus向量数据库的BI语义检索:从文本向量化到智能问答实践

向量数据库是处理非结构化数据语义检索的核心技术,它通过将文本、图像等高维数据转换为向量表示,在数学空间中计算相似度来实现语义匹配。其技术原理基于嵌入模型将语义信息编码为稠密向量,使得语义相近的内容在向量空间中也彼此接近。这项技术的价值在于突破了传统关键词匹配的局限,能够理解用户意图,实现更精准的信息检索。在应用场景上,向量数据库广泛应用于智能问答、推荐系统、内容检索等领域。本文聚焦于商业智能(BI)场景,探讨如何利用Milvus向量数据库构建语义检索层,将用户自然语言问题与数据资产关联,实现从“看”数据到“

weixin_30535843的博客 456

EduRAG智能回答项目V1.0

本文介绍了基于企业私有数据构建RAG(检索增强生成)系统的完整流程。主要内容包括: 项目背景:针对大模型知识局限性和"幻觉"问题,提出两种解决方案——垂直领域微调和RAG问答系统,分析各自的优缺点及适用场景。 技术工具: 使用Ollama管理本地大模型 采用LangChain框架简化LLM应用开发 利用Milvus向量数据库存储和检索非结构化数据 系统实现: MySQL问答系统:基于BM25算法实现高频问答对检索 RAG系统:包含文档处理、向量存储、查询分类和策略选择等模块。

专注前端开发领域,深耕 Python AI Agent应用开发,热爱探索 Web 与人工智能的前沿技术。 267

向量数据库索引优化:从人工调参到数据驱动的自适应方案

向量检索作为现代AI应用的核心技术,其性能直接影响大模型问答、推荐系统等场景的效果。其原理是将文本、图像等数据转换为高维向量,通过相似度计算实现快速召回。传统方法依赖人工经验选择索引算法(如HNSW、IVF)并调参,面对多样化的数据分布(如稀疏文本、稠密图像特征)时,往往难以兼顾效率与精度。本文聚焦于**自适应索引优化**与**向量数据库**技术,提出一种数据驱动的智能决策方案。该方案通过自动分析数据特征(维度、稀疏性、聚类程度),动态匹配最优索引算法与参数,旨在解决固定索引在不同数据场景下表现不稳定的痛点

weixin_30443075的博客 453

ElasticSearch 中 FieldType 详解

date 、float、long都是不能够被拆分的

书启鸿蒙知秋枫 1766

es--基础--04--IK分词器测试

名称:IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包。它是以开源项目Lucene为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的IKAnalyzer3.0则发展为 面向Java的公用分词组件,独立于Lucene项目,同时提供了对Lucene的默认优化实现。

zhou920786312的博客 1388
上一篇: Elasticsearch学习(二)mapping
下一篇: Elasticsearch整理之mapping的参数
Interstellar_
博客等级 码龄10年 8粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值