📢📢📢📣📣📣
作者:IT邦德
中国DBA联盟(ACDU)成员,15年DBA工作经验
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝15万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理
1.Vector DB
Oracle AI Vector Search(Oracle向量数据库)作为Oracle Database 26ai的核心AI功能,代表了企业级AI原生数据库的技术演进方向。其应用场景不仅限于传统的向量相似性搜索,更通过与企业数据的深度集成、混合搜索能力和完整的RAG支持,构建了从数据到智能的完整闭环。

2.LLM
Large Language Model,大语言模型,是生成式AI的一个类型,是一种人工智能模型,旨在理解和生成人类语言。它们在大量的文本数据上进行训练,单一模型可以执行广泛的任务,包括词法分析、文本分类、命名实体识别、关键词提取、翻译、情感分析、摘要、对话、写作文、写代码等。

3.RAG
Retrieval-Augmented Generation ,检索式增强生成方法,从企业专业知识库中检索与请求最相关的信息,并与用户请求捆绑一起作为提示,发送给LLM以获得响应。
同时,包括AI聊天等功能,也可以创建专用的知识库,来增加聊天的能力,比如更强的上下文理解能力,或者更平稳柔和倾向于人类的语言沟通。

4.AI 向量搜索
AI Vector Search 是一项创新技术,它可以大大增强信息检索,通过基于语义进行高效搜索,而不是确切的关键字。AI向量搜索是现代 生成式AI 生态系统的重要组成部分。
AI应用关键革新:基于向量用于表示图像、文档、视频等的语义内容。

4.1 向量检索方法
近似搜索:内存中邻居图向量索引( In-Memory Neighbor Graph Vector Index )
基于图的索引,其中顶点表示向量,顶点之间的边表示相似性(例如,HNSW
索引)。

4.2 内存邻居图
邻居分区向量索引( Neighbor Partition Vector Index )基于分区的索引,其向量根据相似性聚类到表分区中(例如,IVF FLAT 索引)高效的横向扩展索引,提供快速无缝的事务支持。

5. 向量索引
在Oracle Vector DB中,可以在Vector数据类型 列上创建vector index来提升向量检索的性能,向量索引的选择取决于organization子句:
create vector index vector_idx on vector_table (data_vector)
organization [inmemory neighbor graph | neighbor partition]
常用2个种索引是:
bash
In-Memory Neighbor Graph organization:HNSW
Neighbor Partition organization:IVF
也可以指定向量索引类型参数、距离函数、精度等:
create vector index vector_idx on vector_table (data_vector) organization neighbor partition parameters (num_centroids 1024);
6.向量基本操作
让我们从基本的向量操作开如:
1.字符串转换为向量
TO_VECTOR()用来将字符串类型的数字数组转换为向量类型
SELECT TO_VECTOR( '[3,3]');
2.向量转换为字符串
FROM_VECTOR()用来将向量类型转换为字符串类型。
SELECT FROM_VECTOR(TO_VECTOR( '[3,3]') );
3.向量间距离计算
VECTOR_DISTANCE(v1, v2, 距离策略) 是向量检索的关键操作,用来比较两个向量的距离(相似度)。
距离越大,说明相似度越小;反之,说明两个向量越相似。
Oracle支持的距离策略主要有:EUCLIDEAN, COSINE, DOT, HAMMING