Oracle 23ai Vector Search 系列之3 集成嵌入生成模型(Embedding Model)到数据库示例,以及常见错误
文章目录
- Oracle 23ai Vector Search 系列之3 集成嵌入生成模型(Embedding Model)到数据库示例,以及常见错误
- 使用安装了Oracle 23ai 的虚拟机(Oracle Database 23ai Free VirtualBox Appliance)
- 1.下载[Oracle VM VirtualBox](https://www.oracle.com/virtualization/technologies/vm/downloads/virtualbox-downloads.html)
- 2.下载[Oracle DB Developer VM](https://download.oracle.com/otn_software/virtualbox/dd/Oracle_Database_23ai_Free_Developer.ova)
- 3. 导入[Oracle DB Developer VM]
- 4. 连接Oracle 23ai
- 集成嵌入生成模型(Embedding Model)到数据库Oracle 23ai中
- 1.下载ONNX格式的嵌入生成模型
- 2.连接数据库创建用户和赋予相关权限
- 3.连接创建的用户,并导入嵌入模型到数据库中
- 4. 验证使用数据库中的embedding模型的有效性
- 常见错误
- 错误1:Windows环境导入嵌入模型时的错误ORA-40216: feature not supported on 23ai Windows version
- 错误2:ORA-01950
- 错误3:ORA-17001
- 参考
【声明】文章仅供学习交流,观点代表个人,与任何公司无关。
来源|Walt@SQL和数据库技术(ID:SQLplusDB)
Windows 环境图形化安装 Oracle 23ai
Oracle 23ai Vector Search 系列之1 架构基础
Oracle 23ai Vector Search 系列之2 ONNX(Open Neural Network Exchange)
Oracle 23ai Vector Search 系列之3 集成嵌入生成模型(Embedding Model)到数据库示例,以及常见错误
通常数据库要实现向量查询和RAG功能,就需要和嵌入生成模型(Embedding Model)交互,以便将文本等内容向量化,实现向量查询等功能。
Oracle通过将ONNX格式的嵌入生成模型集成到数据库中,更加简化了向量化的过程,能够在数据库内部对向量化数据进行操作。
使用安装了Oracle 23ai 的虚拟机(Oracle Database 23ai Free VirtualBox Appliance)
我们也可以使用安装了Oracle 23ai 的虚拟机学习Oracle 23ai Vector Search。
https://www.oracle.com/database/free/get-started/
1.下载Oracle VM VirtualBox
https://www.oracle.com/virtualization/technologies/vm/downloads/virtualbox-downloads.html
2.下载Oracle DB Developer VM
Oracle Database 23ai Free VirtualBox Appliance信息如下:
https://www.oracle.com/database/technologies/databaseappdev-vm.html
下载Oracle DB Developer VM:https://download.oracle.com/otn_software/virtualbox/dd/Oracle_Database_23ai_Free_Developer.ova
3. 导入[Oracle DB Developer VM]
打开Oracle VM VirtualBox。
管理 --》导入虚拟电脑
参考:
https://www.oracle.com/database/technologies/databaseappdev-vm.html
4. 连接Oracle 23ai
[oracle@10 admin]$ sql system/oracle@localhost:1521/freeSQLcl: Release 24.4 Production on Sat Mar 29 13:52:30 2025Copyright (c) 1982, 2025, Oracle. All rights reserved.Last Successful login time: Sat Mar 29 2025 13:52:33 +00:00Connected to:
Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.7.0.25.01SQL> show pdbsCON_ID CON_NAME OPEN MODE RESTRICTED
_________ ___________ _____________ _____________ 2 PDB$SEED READ ONLY NO 3 FREEPDB1 READ WRITE NO
SQL>
集成嵌入生成模型(Embedding Model)到数据库Oracle 23ai中
1.下载ONNX格式的嵌入生成模型
通过如下链接下载ONNX格式的嵌入生成模型all-MiniLM-L12-v2压缩包,并解压。
https://adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com/p/VBRD9P8ZFWkKvnfhrWxkpPe8K03-JIoM5h_8EJyJcpE80c108fuUjg7R5L5O7mMZ/n/adwc4pm/b/OML-Resources/o/all_MiniLM_L12_v2_augmented.zip
例:(有时候下载速度很慢)
[oracle@10 ~]$ mkdir -p /u02/models
[oracle@10 ~]$ cd /u02/models
[oracle@10 models]$ wget https://adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com/p/VBRD9P8ZFWkKvnfhrWxkpPe8K03-JIoM5h_8EJyJcpE80c108fuUjg7R5L5O7mMZ/n/adwc4pm/b/OML-Resources/o/all_MiniLM_L12_v2_augmented.zip
--2025-04-01 12:22:43-- https://adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com/p/VBRD9P8ZFWkKvnfhrWxkpPe8K03-JIoM5h_8EJyJcpE80c108fuUjg7R5L5O7mMZ/n/adwc4pm/b/OML-Resources/o/all_MiniLM_L12_v2_augmented.zip
Resolving adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com (adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com)... 134.70.28.1, 134.70.32.1, 134.70.24.1
Connecting to adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com (adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com)|134.70.28.1|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 122597346 (117M) [application/x-zip-compressed]
Saving to: ‘all_MiniLM_L12_v2_augmented.zip’all_MiniLM_L12_v2_augme 84%[=======================> ] 98.22M --.-KB/s in 90m 30s 2025-04-01 13:53:17 (18.5 KB/s) - Connection closed at byte 102989824. Retrying.--2025-04-01 13:53:18-- (try: 2) https://adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com/p/VBRD9P8ZFWkKvnfhrWxkpPe8K03-JIoM5h_8EJyJcpE80c108fuUjg7R5L5O7mMZ/n/adwc4pm/b/OML-Resources/o/all_MiniLM_L12_v2_augmented.zip
Connecting to adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com (adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com)|134.70.28.1|:443... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 122597346 (117M), 19607522 (19M) remaining [application/x-zip-compressed]
Saving to: ‘all_MiniLM_L12_v2_augmented.zip’all_MiniLM_L12_v2_augmented.zip 86%[+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++==> ] 101.19M ugmented.zip 86%[++++++++++++++++++++++++> ] 101.19M --.-KB/s eta 28m 2s gmented.zip 86%[++++++++++++++++++++++++> ] 101.19M --.-KB/s eta 28m 12s
all_MiniLM_L12_v2_augmented.zip 86%[+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++==> ] 101.19M --.-KB/s in 5m 24s 2025-04-01 13:58:45 (9.38 KB/s) - Connection closed at byte 106102784. Retrying.--2025-04-01 13:58:47-- (try: 3) https://adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com/p/VBRD9P8ZFWkKvnfhrWxkpPe8K03-JIoM5h_8EJyJcpE80c108fuUjg7R5L5O7mMZ/n/adwc4pm/b/OML-Resources/o/all_MiniLM_L12_v2_augmented.zip
Connecting to adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com (adwc4pm.objectstorage.us-ashburn-1.oci.customer-oci.com)|134.70.28.1|:443... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 122597346 (117M), 16494562 (16M) remaining [application/x-zip-compressed]
Saving to: ‘all_MiniLM_L12_v2_augmented.zip’all_MiniLM_L12_v2_augmented.zip 100%[++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++===============>] 116.92M 20.3KB/s in 22m 28s 2025-04-01 14:21:19 (12.0 KB/s) - ‘all_MiniLM_L12_v2_augmented.zip’ saved [122597346/122597346][oracle@10 models]$
[oracle@10 models]$ ls -larth
total 117M
-rw-rw-r--. 1 oracle oracle 117M Jul 15 2024 all_MiniLM_L12_v2_augmented.zip
drwxrwxrwx. 3 root root 20 Apr 1 12:21 ..
drwxrwxrwx. 2 root root 45 Apr 1 12:22 .
[oracle@10 models]$ unzip -oq all_MiniLM_L12_v2_augmented.zip
[oracle@10 models]$ ls -la
total 249932
drwxrwxrwx. 2 root root 121 Apr 2 13:18 .
drwxrwxrwx. 3 root root 20 Apr 1 12:21 ..
-rw-rw-r--. 1 oracle oracle 122597346 Jul 15 2024 all_MiniLM_L12_v2_augmented.zip
-rw-rw-r--. 1 oracle oracle 133322334 Jul 15 2024 all_MiniLM_L12_v2.onnx
-rw-rw-r--. 1 oracle oracle 4232 Jul 15 2024 README-ALL_MINILM_L12_V2-augmented.txt
[oracle@10 models]$
2.连接数据库创建用户和赋予相关权限
创建用户vector,并赋予相关权限
[oracle@10 models]$ sqlplus /nologSQL*Plus: Release 23.0.0.0.0 - Production on Wed Apr 2 13:32:03 2025
Version 23.7.0.25.01Copyright (c) 1982, 2025, Oracle. All rights reserved.SQL> conn system/oracle@freepdb1
Connected.
SQL> create user if not exists vector_user identified by vector_user quota unlimited on users;User created.SQL> grant create session, db_developer_role, create mining model to vector_user;Grant succeeded.SQL> create or replace directory model_dir as '/u02/models';Directory created.SQL> grant read, write on directory model_dir to vector_user;Grant succeeded.
DB_DEVELOPER_ROLE是Oracle 23ai引入的新角色,整合了CONNECT和RESOURCE角色,并增加了更多现代开发所需的权限,比如创建多维数据模型、机器学习模型等。
3.连接创建的用户,并导入嵌入模型到数据库中
连接创建的用户,并导入嵌入模型到数据库中。
DBMS_VECTOR.LOAD_ONNX_MODEL 是Oracle提供的存储过程,用于加载ONNX格式的机器学习模型,可以通过这个存储导入嵌入模型到数据库中。
SQL> conn vector_user/vector_user@freepdb1
Connected.
SQL> column model_name format a30
SQL> column algorithm format a10
SQL> column mining_function format a15
SQL>
SQL> select model_name, algorithm, mining_function
from user_mining_models
where model_name = 'ALL_MINILM_L12_V2'; 2 3 no rows selectedSQL> begindbms_vector.drop_onnx_model (model_name => 'ALL_MINILM_L12_V2',force => true);dbms_vector.load_onnx_model (directory => 'model_dir',file_name => 'all_MiniLM_L12_v2.onnx',model_name => 'ALL_MINILM_L12_V2');
end;
/ 2 3 4 5 6 7 8 9 10 PL/SQL procedure successfully completed.SQL> select model_name, algorithm, mining_function
from user_mining_models
where model_name = 'ALL_MINILM_L12_V2';2 3
MODEL_NAME ALGORITHM MINING_FUNCTION
------------------------------ ---------- ---------------
ALL_MINILM_L12_V2 ONNX EMBEDDINGSQL>
参数说明:
dbms_vector.drop_onnx_model :删除数据库中的同名模型。
dbms_vector.load_onnx_model :加载ONNX格式的机器学习模型。directory => 'model_dir':指定数据库目录对象(Directory Object),需提前创建并授权访问。
file_name => 'all_MiniLM_L12_v2.onnx':模型文件名。
model_name => 'ALL_MINILM_L12_V2':模型在数据库中的注册名称。
4. 验证使用数据库中的embedding模型的有效性
可以通过VECTOR_EMBEDDING调用嵌入模型将非结构化文本转换为高维向量,用于支持语义相似性搜索。
例:
SQL> SELECT VECTOR_EMBEDDING(ALL_MINILM_L12_V2 USING '测试模型向量化的有效性' as DATA) AS embedding;EMBEDDING
--------------------------------------------------------------------------------
[-6.43850565E-002,5.03143901E-003,1.80688109E-002,-8.61809477E-002,SQL>
SQL> set linesize 200
SQL> set pagesize 200
SQL> set long 1000000
SQL> SELECT VECTOR_EMBEDDING(ALL_MINILM_L12_V2 USING '测试模型向量化的有效性' as DATA) AS embedding;EMBEDDING
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[-6.43850565E-002,5.03143901E-003,1.80688109E-002,-8.61809477E-002,-4.99122478E-002,-8.3715409E-002,1.43890858E-001,5.20461276E-002,-4.45289575E-002,5.04111163E-002,5.35465404E-002,-3.6635343E-002,5.0
1451083E-002,4.8450999E-002,-3.35157067E-002,1.34193935E-002,-4.48238626E-002,-2.00252961E-002,-4.71122302E-002,-6.7698285E-002,-6.7364715E-002,2.39551272E-002,3.05007547E-002,4.39321697E-002,-3.45703
363E-002,-1.40973898E-002,-1.97449443E-003,-3.17168608E-002,2.54482701E-002,-7.70462006E-002,4.26407866E-002,3.52319591E-002,-3.72547507E-002,2.08648369E-002,5.51127158E-002,-1.85566079E-002,4.2715370
7E-002,-2.00223532E-002,6.17853962E-002,2.03687139E-002,-2.81144921E-002,1.27106467E-002,4.3069087E-002,3.92189948E-003,8.14345628E-002,-6.31049424E-002,3.46092097E-002,-5.73917255E-002,3.63145396E-00
2,5.36485687E-002,1.69530627E-003,-7.27072284E-002,1.82723179E-002,6.82432353E-002,4.14318265E-003,-9.51752514E-002,1.74094271E-002,-3.32689681E-003,-1.93911593E-003,2.31539831E-003,-1.55733433E-003,-
6.28412142E-003,7.25491866E-002,-1.97887477E-002,-7.15509709E-003,5.40855043E-002,-3.41396295E-002,-2.56884005E-002,4.33707945E-002,5.23059107E-002,-5.13249226E-002,4.53912057E-002,4.44020936E-003,-1.
47001715E-002,6.61578104E-002,2.58654021E-002,1.86825078E-002,-1.23911109E-002,-1.10124405E-002,7.22084055E-003,-2.86916569E-002,-5.70247211E-002,6.33795336E-002,3.98731343E-002,-3.08062769E-002,-1.70
696247E-002,3.58993523E-002,5.88589795E-002,-5.67766577E-002,4.22158204E-002,-1.85518025E-003,6.22229315E-002,5.74523099E-002,-6.49972782E-002,-2.97813788E-002,3.20451818E-002,2.47529875E-002,-5.95198
609E-002,-5.83154261E-002,3.37650776E-001,-4.54414487E-002,8.30924138E-003,2.65924949E-002,2.01659221E-002,-4.23384234E-002,-3.77495289E-002,1.68698449E-002,-1.00797964E-002,2.995391E-002,1.71289667E-
002,-4.48190495E-002,-4.8588356E-003,-2.68799942E-002,9.14681256E-002,1.2878214E-002,-2.57672295E-002,6.7953527E-002,1.43582551E-002,-7.23189041E-002,2.02958733E-002,-4.62799391E-004,-3.97189148E-002,
-9.83916074E-002,-5.30900471E-002,1.94755774E-002,-1.76234961E-001,2.76067406E-002,-2.0204328E-002,-2.0005377E-002,6.3489534E-002,1.31017849E-001,-6.57900609E-003,-6.55860528E-002,-1.58854611E-002,-2.
03559436E-002,-9.10902862E-003,-7.3361814E-002,1.08494225E-003,-2.1784611E-002,-1.00225255E-001,1.29981562E-002,3.86199951E-002,4.45611887E-002,-8.12717825E-002,3.51700373E-002,-6.91951066E-003,4.4587
0571E-002,-3.90922576E-002,9.32496134E-003,-1.66717973E-002,8.63657743E-002,7.6263167E-002,3.25510204E-002,5.79238683E-003,-2.40888558E-002,-8.86389315E-002,-5.78965805E-003,-1.78106688E-002,1.631088E
-002,-9.74288732E-002,-4.0102236E-002,4.39315513E-002,-1.68476067E-002,-8.62947628E-002,2.57447269E-002,-3.11112851E-002,3.01416218E-002,-1.69337913E-003,3.53706405E-002,-6.42254204E-002,7.1062278E-00
3,3.75487432E-002,8.67136102E-003,1.96516514E-002,2.88740993E-002,-6.9221735E-002,2.84080207E-002,1.58961546E-002,-2.31828708E-002,-2.43958682E-002,1.8273497E-002,3.40319239E-002,1.26943197E-002,-1.35
59768E-002,-4.62375209E-002,6.48473278E-002,-1.0695783E-001,-5.65654598E-003,4.07952741E-002,3.22725512E-002,3.00344564E-002,-2.34780069E-002,-1.79869181E-003,3.72297526E-003,3.04003526E-003,-8.142019
06E-002,-5.98497828E-003,-4.4241637E-002,-5.64990677E-002,1.6877966E-002,1.29090054E-002,1.54750166E-003,-6.09726571E-002,4.03976962E-002,1.8584918E-003,3.43348123E-002,9.58639532E-002,5.28544895E-002
,-4.17789221E-002,-7.08777457E-002,3.60478414E-003,3.81915574E-003,-7.96151464E-004,3.10286484E-003,-3.58613767E-003,4.88146432E-002,5.31559922E-002,2.94029154E-002,-6.99412301E-002,3.13350782E-002,6.
30677715E-002,-2.24168114E-002,-3.37830409E-002,1.96636945E-032,2.70832088E-002,5.57848364E-002,3.99512909E-002,-2.91080941E-002,-9.72486138E-002,-9.20571834E-002,2.91378703E-002,7.8784205E-002,-3.205
36084E-002,-7.9791192E-003,2.92499326E-002,3.07855569E-002,-2.2638388E-002,-1.52478479E-002,-6.42165765E-002,-2.59112492E-002,6.60942793E-002,4.22334634E-002,-8.01744536E-002,-1.46621121E-002,4.197075
96E-002,-8.44968855E-002,-3.76881734E-002,2.39902977E-002,-4.40311618E-002,4.54232618E-002,1.36466315E-002,3.61464694E-002,2.00967044E-002,-1.9774409E-002,-2.61314958E-002,-2.01844778E-002,-1.62788946
E-002,7.95767382E-002,3.47683728E-002,-4.11939211E-002,1.04025435E-002,-4.4798281E-002,-2.07655337E-002,-3.05905443E-004,-1.07589166E-003,-6.86475933E-002,1.31746186E-002,2.41918713E-002,-3.04036587E-
002,-8.21446031E-002,2.35029589E-002,-1.4030233E-002,-3.53255011E-002,1.44660957E-002,1.06620146E-002,1.0070066E-002,-1.58226956E-002,-5.26152439E-002,5.31952968E-003,9.48400572E-002,-1.16352044E-001,
2.26590559E-002,2.38021687E-002,-1.84772741E-002,-6.15235651E-003,-5.21332063E-002,-1.63819306E-002,1.13838211E-001,4.48200442E-002,-9.04860049E-002,-5.38678207E-002,-2.68039368E-002,2.58102641E-003,-
1.15668029E-002,1.2591131E-001,3.4166418E-002,-4.4202622E-002,7.33007491E-002,-4.4973325E-002,2.81945132E-002,5.16783707E-002,-1.76605675E-003,3.99598889E-002,9.6527366E-003,1.10464143E-002,6.15496859
E-002,9.05746222E-002,5.33685461E-002,7.55730346E-002,3.98361497E-003,9.08175185E-002,4.51306812E-002,-7.25189224E-002,-6.84641749E-002,-5.85429836E-003,3.67497765E-002,-5.03788814E-002,2.63811648E-00
2,5.64975478E-002,-5.18632927E-032,-1.34708732E-002,-6.275855E-002,3.72533798E-002,-5.79499602E-002,6.62106946E-002,5.05438745E-002,-2.1197997E-002,-5.47126159E-002,9.99535844E-002,-2.95496732E-002,7.
71534517E-002,-1.71193431E-004,-3.74059863E-002,1.685738E-002,2.94081867E-002,5.80498809E-003,2.44863816E-002,7.36626834E-002,1.63544163E-001,5.34656085E-002,7.21592307E-002,-4.35319617E-002,-9.400469
25E-003,-6.31896313E-003,2.81287953E-002,5.14827594E-002,8.61992966E-003,8.77619442E-003,-7.91860521E-002,-3.6200799E-002,6.97061466E-003,2.87681539E-003,4.91503701E-002,-5.61311133E-002,9.92581993E-0
03,-4.70721126E-002,9.58866403E-002,-5.4556448E-003,5.13598211E-002,-1.39459698E-002,8.95485505E-002,1.03006519E-001,5.05814105E-002,-2.92308703E-002,-1.32064344E-002,1.60010681E-002,3.15095037E-002,-
3.43251862E-002,-1.42749362E-002,-7.98928924E-003,1.11576973E-003,1.28171267E-002,4.90052663E-002,2.58564614E-002,-2.1103248E-002,1.18297068E-002,-9.08823609E-002,3.85137796E-002,1.44213354E-002,-2.66
04997E-002,7.07522407E-002,8.56206864E-002,-1.42212138E-002,-5.07563865E-003]
VECTOR_EMBEDDING 函数语法结构:
VECTOR_EMBEDDING ( [ schema.] model_name USING mining_attribute_clause )
参考:
Oracle AI Vector Search User’s Guide
VECTOR_EMBEDDING
常见错误
错误1:Windows环境导入嵌入模型时的错误ORA-40216: feature not supported on 23ai Windows version
在windows环境中安装的23ai,导入嵌入模型时会发生如下错误。
SQL> BEGIN2 DBMS_VECTOR.LOAD_ONNX_MODEL(3 directory => 'model_dir',4 file_name => 'all_MiniLM_L12_v2.onnx',5 model_name => 'ALL_MINILM_L12_V2',6 metadata => JSON('{"function" : "embedding", "embeddingOutput" : "embedding", "input": {"input": ["DATA"]}}'));7 END;8 /
BEGIN
*
第 1 行出现错误:
ORA-40216: 不支持的功能
ORA-06512: 在 "SYS.DBMS_VECTOR", line 2150
ORA-06512: 在 "SYS.DBMS_DATA_MINING", line 5767
ORA-06512: 在 "SYS.DBMS_VECTOR", line 2145
ORA-06512: 在 line 2
帮助:https://docs.oracle.com/error-help/db/ora-40216/
解决方法:
可能原因也许是由于Windows不支持,所以使用linux 或者Oracle Database 23ai Free VirtualBox Appliance。
https://forums.oracle.com/ords/apexds/post/ora-40216-feature-not-supported-on-23ai-windows-version-9728
This feature is supported for Linux only. One option is to use the Oracle Database 23ai Free VirtualBox Appliance. (link). Note that the distiluse-base-multilingual-cased-v2 model is not preconfigured with OML4Py and will require a custom configuration. Refer to the section titled “Create a Custom Model Configuration” in this blog and the Properties table in the OML4Py User’s Guide for a complete list of properties that can be defined with custom configurations. Note that preconfigured models already have these properties set to specific values.
There are many ways to work around the “missing feature” error. Assuming you want to keep using Windows as your host you may want to invest some time into Microsoft’s Windows Subsystem for Linux (WSL). It’s more lightweight compared to classic VMs and allows you to run Oracle Linux on Windows. This way, you an use the Linux port, either installed directly in the Linux environment, or via a container runtime like podman.
错误2:ORA-01950
仅赋予DB_DEVELOPER_ROLE, CREATE CREDENTIAL权限后,导入模型报如下错误:
SQL> BEGIN2 DBMS_VECTOR.LOAD_ONNX_MODEL(3 directory => 'DM_DUMP',4 file_name => 'all_MiniLM_L12_v2.onnx',5 model_name => 'ALL_MINILM_L12_V2',6 metadata => JSON('{"function" : "embedding", "embeddingOutput" : "embedding", "input": {"input": ["DATA"]}}'));7 END;8* /
BEGIN
*
ERROR at line 1:
ORA-01950: The user VECTOR has insufficient quota on tablespace USERS.
ORA-06512: at "SYS.DBMS_VECTOR", line 2150
ORA-06512: at "SYS.DBMS_DATA_MINING", line 5767
ORA-06512: at "SYS.DBMS_VECTOR", line 2145
ORA-06512: at line 2
Help: https://docs.oracle.com/error-help/db/ora-01950/More Details :
https://docs.oracle.com/error-help/db/ora-01950/
https://docs.oracle.com/error-help/db/ora-06512/
解决方案:
用户 VECTOR 在表空间 USERS 上没有足够的存储配额(Quota),导致无法执行 DBMS_VECTOR.LOAD_ONNX_MODEL 操作。Oracle 要求用户在目标表空间上具有明确的 存储配额 或 无限配额权限,才能创建或修改对象(如存储 ONNX 模型)。
例:
GRANT UNLIMITED TABLESPACE TO VECTOR;
错误3:ORA-17001
导入模型后,对文本进行向量化时发生如下错误:
SQL> SELECT VECTOR_EMBEDDING(ALL_MINILM_L12_V2 USING '测试模型向量化的有效性' as DATA) AS embedding;Error starting at line : 1 in command -
SELECT VECTOR_EMBEDDING(ALL_MINILM_L12_V2 USING '测试模型向量化的有效性' as DATA) AS embedding
Error report -
ORA-17001: Internal error: Unknown or unimplemented accessor type: 127
https://docs.oracle.com/error-help/db/ora-17001/More Details :
https://docs.oracle.com/error-help/db/ora-17001/
SQL>
使用Oracle的vector_embedding函数时遇到了ORA-17001错误,提示“Unknown or unimplemented accessor type: 127”。
这个错误通常与模型输入输出的数据类型或格式不匹配有关。
虽然最终没有确认原因,重新导入虚拟机和下载模型后,问题得到了解决。
参考
Oracle AI Vector Search User’s Guide
https://docs.oracle.com/en/database/oracle/oracle-database/23/vecse/overview-ai-vector-search.html
Now Available! Pre-built Embedding Generation model for Oracle Database 23ai
https://blogs.oracle.com/machinelearning/post/use-our-prebuilt-onnx-model-now-available-for-embedding-generation-in-oracle-database-23ai
https://oracle-base.com/articles/23/ai-vector-search-23
VirtualBox网络配置超全详解
https://zhuanlan.zhihu.com/p/554893004?utm_id=0
https://blogs.oracle.com/oracle4engineer/post/ja-getting-started-with-vectors-in-23ai
相关文章:
Oracle 23ai Vector Search 系列之3 集成嵌入生成模型(Embedding Model)到数据库示例,以及常见错误
文章目录 Oracle 23ai Vector Search 系列之3 集成嵌入生成模型(Embedding Model)到数据库示例,以及常见错误使用安装了Oracle 23ai 的虚拟机(Oracle Database 23ai Free VirtualBox Appliance)1.下载[Oracle VM Virtu…...
RISC-V debug专栏2 --- Debug Module(DM)
Debug Module(DM)的核心功能 DM 就像一个翻译官,负责把调试器的抽象指令(比如 “暂停处理器”)转换成硬件能听懂的具体操作。它必须实现以下基本功能: 必要功能(必须实现)ÿ…...
LLM 分词器Tokenizer 如何从 0 到 1 训练出来
写在前面 大型语言模型(LLM)处理的是人类的自然语言,但计算机本质上只能理解数字。Tokenizer(分词器) 就是架在自然语言和计算机数字表示之间的一座至关重要的桥梁。它负责将我们输入的文本字符串分解成模型能够理解的最小单元——Token,并将这些 Token 转换成对应的数字…...
蓝桥杯冲刺:一维前缀和
系列文章目录 蓝桥杯系列:一维前缀和 文章目录 系列文章目录前言一、暴力的写法:二、一维前缀和的模板: 具体实现: 三、具体例题:求和 1.题目参考:2.以下是具体代码实现: 总结 前言 上次我介绍…...
光学关键尺寸量测设备市场报告:2024年全球市场销售额达到了14.75亿美元
一、引言 光学关键尺寸量测设备作为半导体制造、精密加工等领域的核心工具,其重要性不言而喻。随着科技的飞速发展,这些设备在提升产品精度、缩短研发周期、降低生产成本等方面发挥着越来越关键的作用。本报告旨在深入分析光学关键尺寸量测设备的技术特…...
链表的操作-反转链表
链表 160相交链表 代码 class Solution { public:ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {ListNode* h1headA;ListNode* h2headB;while(h1&&h2){if(h1!h2){h1h1->next;h2h2->next;}else{return h1;}}if(h1nullptr){h1headB;}else{h…...
2025 年浙江危化品经营单位考试攻略分享
浙江的考试由省应急管理部门主导。理论考试突出危化品在电商、物流等新兴业态下的安全管理知识,这与浙江发达的电商产业紧密相关。对危险化学品的环境危害及防治知识考查细致。实际操作考核模拟杭州、宁波等地危化品仓储物流中心的作业情况。 报名材料准备齐全后…...
python使用cookie、session、selenium实现网站登录(爬取信息)
一、使用cookie 这段代码演示了如何使用Python的urllib和http.cookiejar模块来实现网站的模拟登录,并在登录后访问需要认证的页面。 # 导入必要的库 import requests from urllib import request, parse# 1. 导入http.cookiejar模块中的CookieJar类,用…...
STM32开发板上生成PWM正弦波
在STM32开发板上生成正弦波通常需要结合定时器(TIM)、数模转换器(DAC)或脉宽调制(PWM)以及时钟系统的配置。以下是分步指南: 方法1:使用DAC 定时器(推荐) 步…...
Spring Boot 实现文件秒传功能
前言 在开发Web应用时,文件上传是一个常见需求。然而,当用户需要上传大文件或相同文件多次时,会造成带宽浪费和服务器存储冗余。此时可以使用文件秒传技术通过识别重复文件,实现瞬间完成上传的效果,大大提升了用户体验…...
【Vue2】数据绑定_MVVM模型_数据代理_事件处理
目录 一、 数据绑定 1. Vue中有2种数据绑定的方式: 2. 响应式原理 el 与 data 的两种写法 二、 MVVM模型 三、 数据代理 1.回顾Object defineproperty方法 2. 何为数据代理 3.Vue中的数据代理 四、 事件处理 1.事件的基本使用: 2. Vue中的事…...
Python数据类型-dict
Python数据类型-dict 字典是Python中一种非常强大且常用的数据类型,它使用键-值对(key-value)的形式存储数据。 1. 字典的基本特性 无序集合:字典中的元素没有顺序概念可变(mutable):可以动态添加、修改和删除元素键必须唯一且不可变&…...
win10之mysql server 8.0.41安装
一 mysql server 下载 官网下载地址页面 https://dev.mysql.com/downloads/mysql/二 免装版使用步骤 1 解压 下载完成后,解压文件夹,如下所示: 2 执行安装命令 D:\soft\mysql\mysql-8.0.41-winx64\mysql-8.0.41-winx64\bin>mysqld --install Service successfully in…...
解决Oracle PL/SQL中“表或视图不存在“错误的完整指南
解决Oracle PL/SQL中"表或视图不存在"错误的完整指南 前言问题概述根本原因分析一、 编译时与运行时验证差异二、权限问题三、 Schema命名问题 实际案例演示案例1:动态分表查询案例2:权限不足的场景 实用排查步骤排查流程图最佳实践建议解决方…...
从实用的角度聊聊Linux下文本编辑器VIM
本文从实用的角度聊聊Vim的常用命令。何为实用?我举个不实用的例子大家就明白了,用vim写代码。;) “vim是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成…...
MySQL的进阶语法8(SQL优化——insert、主键、order by、group by、limit、count和update)
目录 一、插入数据 1.1 insert 1.2 大批量插入数据 二、主键优化 2.1 数据组织方式 2.2 页分裂 2.2.1 主键顺序插入效果 2.2.2 主键乱序插入效果 2.3 页合并 2.4 索引设计原则 三、order by优化 3.1 执行以下两条语句(无索引) 3.2 创建索引…...
STM32F103C8T6单片机硬核原理篇:讨论GPIO的基本原理篇章1——只讨论我们的GPIO简单输入和输出
目录 前言 输出时的GPIO控制部分 标准库是如何操作寄存器完成GPIO驱动的初始化的? 问题1:如何掌握GPIO的编程细节——跟寄存器如何打交道 问题2:哪些寄存器,去哪里找呢? 问题三,寄存器的含义ÿ…...
FreeRTOS源码下载分享
FreeRTOS源码下载分享 官网下载太慢了,分享下FreeRTOSv202411 FreeRTOSv202411.00.zip 链接: https://pan.baidu.com/s/1P4sVS5WroYEl0WTlPD7GXg 提取码: g6aq...
PyArrow 核心技术与应用:高效数据处理与跨生态集成实践
Apache Arrow 作为列式内存数据格式的行业标准,其 Python 接口 PyArrow 正在重塑数据科学生态。本文深入解析 PyArrow 的核心计算能力,涵盖统计函数、分组聚合、窗口操作及跨库集成,通过完整代码示例演示如何利用其高性能特性优化数据处理流程…...
机试题——PCB印刷电路板布线
题目描述 在 PCB 印刷电路板设计中,器件之间的连线需要避免线路的阻抗值增大,而且器件之间还可能存在其他干扰源。为了简化问题,我们将电路板简化为一个 ( M * N ) 的矩阵,每个位置(单元格)的值表示其源干…...
数据化管理(一)---什么是数据化管理
目录 一、什么是数据化管理1.1 “聪明”的销售人员1.2 数据化管理的概念1.3 数据化管理的意义1.4 数据化管理的四个层次1.4.1 业务指导管理1.4.2 营运指导管理1.4.3 经营策略管理1.4.4 战略规划管理 1.5 数据化管理流程图1.5.1 分析需求1.5.2 收集数据1.5.3 整理数据1.5.4 分析…...
Android 10.0 通过广播控制systemui状态栏动态显示和隐藏功能实现
1.前言 在10.0的系统rom定制化开发中,在某些特定的产品开发中,需要通过接口来控制系统状态栏的显示和隐藏, 所以就需要了解systemui状态栏的显示构造过程,然后通过相关接口来显示和隐藏状态栏,接下来就来 实现相关的功…...
Linux服务器安装MinerU
安装MinerU 为了确保项目的稳定性和可靠性,我们在开发过程中仅对特定的软硬件环境进行优化和测试。这样当用户在推荐的系统配置上部署和运行项目时,能够获得最佳的性能表现和最少的兼容性问题。 这里我们以基础的 [[Linux服务器部署PaddleX实战教程]] 使…...
深挖 DeepSeek 隐藏玩法·智能炼金术2.0版本
前引:屏幕前的你还在AI智能搜索框这样搜索吗?“这道题怎么写”“苹果为什么红”“怎么不被发现翘课” ,。看到此篇文章的小伙伴们!请准备好你的思维魔杖,开启【霍格沃茨模式】,看我如何更新秘密的【知识炼金…...
Vite 内联 CSS 和 JS 的解决方案
使用 vite-plugin-singlefile(推荐) 这个插件专门用于将整个 Vite 应用打包成单个 HTML 文件,内联所有 JS 和 CSS。 安装 pnpm i vite-plugin-singlefile -D配置 vite.config.js import { defineConfig } from vite import { viteSingleF…...
致敬生物信息学先驱:玛格丽特·戴霍夫(Margaret Dayhoff,1925-1983)
李升伟 编译 社论 发布于:2025年3月11日 《自然-计算科学》第五卷 第187页(2025年) 在玛格丽特戴霍夫(Margaret Dayhoff,1925-1983)百年诞辰之际,我们聚焦这位先驱在生物信息学领域留下的不朽…...
Knife4j文档请求异常 空指针
打开swagger文档报空指针异常 java.lang.NullPointerException: nullat springfox.documentation.oas.mappers.SchemaMapper.model(SchemaMapper.java:97)at springfox.documentation.oas.mappers.SchemaMapper.mapModel(SchemaMapper.java:85)at springfox.documentation.oas…...
笔记2——网络参考模型
一、OSI参考模型: 应用层: 报文 给应用程序提供接口 表示层: 进行数据格式的转换 会话层: 在通讯双方之间建立、管理和终止会话 传输层: 数据段;建立、维护、取消一次端到端的数据传输过程;控制…...
Spring AOP + Redis缓存设计实战:基于注解的优雅三防方案(击穿/穿透/雪崩)
文章目录 摘要 正文一、缓存设计的痛点与破局二、核心代码拆解:四层防御设计1. 注解驱动(ZywCacheable)2. 缓存击穿防护:双重检查锁3. 缓存穿透防护:空值标记4. 缓存雪崩防护:TTL随机算法 三、生产环境最佳…...
洛谷题单3-P5720 【深基4.例4】一尺之棰-python-流程图重构
题目描述 《庄子》中说到,“一尺之棰,日取其半,万世不竭”。第一天有一根长度为 a a a 的木棍,从第二天开始,每天都要将这根木棍锯掉一半(每次除 2 2 2,向下取整)。第几天的时候木…...
jdk21新特性详解使用总结
jdk21新特性详解总结 1.StringBuilder和StringBuffer新增了一个repeat方法 /*** Java 21的StringBuilder和StringBuffer新增了一个repeat方法*/public static void repeatStr(){var sbnew StringBuilder().repeat("*",10);System.out.println(sb);}运行结果如下&…...
解码 collections.Counter - 频率统计的利器
文章目录 前言一、什么是 collections.Counter?二、 基本用法:从创建到访问2.1 创建 Counter 对象2.2 访问计数三、 核心功能:更新与排序3.1 更新计数3.2 获取常见元素四、高级用法:数学运算与转换4.1 数学运算4.2 类型转换五、 实际应用:Counter 的威力5.1 词频统计5.2 在…...
Mysql基础笔记
# 1.SQL数据类型 可以去这篇文章看看: 最全 SQL 字段类型(4种)、属性(6种)总结:https://blog.csdn.net/weixin_45654582/article/details/119157403 ### 一.整数类型 ### 二.小数类型(2种) 1、浮点型:…...
HttpClient-03.入门案例-发送POST方式请求
一.发送POST方式请求 编写代码: 1.创建一个HttpClient对象 2.创建一个HttpGet请求 3.发送http的get请求并获得响应对象 4.通过发送GET请求获取的CloseableHttpResponse响应对象来获取状态码以及响应数据 package com.sky.test;import com.alibaba.fastjson.JS…...
Oracle数据库数据编程SQL<3.6 PL/SQL 包(Package)>
包是Oracle数据库中一种重要的PL/SQL程序结构,它将逻辑相关的变量、常量、游标、异常、过程和函数组织在一起,提供了更好的封装性和模块化。在大型项目中,可能有很多模块,而每一个模块又有自己的存过、函数等。而这些存过、函数默…...
每日一题---买卖股票的最好时机(一)、(二)
目录 买卖股票的最好时机(一) 一、题目链接:买卖股票的最好时机(一)_牛客题霸_牛客网 二、解题思路 三、代码实现 买卖股票的最好时机(二) 一、题目链接:买卖股票的最好时机(二)_牛客题霸_牛客网 编辑 二、解题思路 …...
XSS漏洞的分类解释和演示实验
XSS漏洞:跨站脚本攻击(cross site scripting),为了不和CSS混淆而改名。攻击者网web插入恶意script代码,当用户浏览页面时,嵌入的代码会被执行。 危害:盗取各类用户,强制发送电子邮件,网站挂马等…...
【Pandas】pandas DataFrame info
Pandas2.2 DataFrame Attributes and underlying data 方法描述DataFrame.index用于获取 DataFrame 的行索引DataFrame.columns用于获取 DataFrame 的列标签DataFrame.dtypes用于获取 DataFrame 中每一列的数据类型DataFrame.info([verbose, buf, max_cols, …])用于提供 Dat…...
JP1 Systemwalker 和 unirita的A-AUTO制品对比
以下是 JP1 SystemWalker(日立) 与 Unirita A-AUTO 的对比分析。两者均为日本企业开发的IT运维自动化工具,但在功能定位、技术架构和适用场景上存在显著差异: 1. 产品背景与市场定位 维度JP1 SystemWalkerUnirita A-AUTO开发商日…...
探索鸿蒙操作系统:迎接万物互联新时代
# 探索鸿蒙操作系统:迎接万物互联新时代 在科技飞速发展的当下,万物互联的时代浪潮正席卷而来。在这个全新的时代背景下,移动应用开发领域面临着前所未有的挑战,同时也迎来了诸多机遇。而鸿蒙操作系统(HarmonyOS&…...
NOIP2010提高组.引水入城
*前置题目 901. 滑雪 #include <iostream> #include <algorithm> #include <cstring>using namespace std;const int N 310, INF 0x3f3f3f3f; const int dx[4] {0, -1, 0, 1}, dy[4] {1, 0, -1, 0};int n, m, h[N][N]; int f[N][N]; int ans;int dfs(i…...
NLP高频面试题(二十九)——大模型解码常见参数解析
在大语言模型的实际应用中,如何更有效地控制文本生成的质量与多样性,一直是热门研究话题。其中,模型解码(decode)策略至关重要,涉及的主要参数包括 top_k、top_p 和 temperature 等。本文将详细介绍这些常见…...
【AI产品分享】面向图片的原始位置翻译功能
1. 背景 在撰写文字材料时,往往需要配套图像以增强表达效果。然而,有时自己绘制的图可能达不到理想的质量,而在其他文献材料中却能发现更清晰、直观的示例。希望在“站在巨人的肩膀上”优化自己的图像时,通常希望在保留原始图像的…...
为什么要为 REST API 添加认证
在不断发展的 Web 服务领域,REST API 在各种软件系统之间的通信中扮演着至关重要的角色。然而,强大的功能也伴随着巨大的责任。确保敏感数据的安全性和通信的可靠性是至关重要的。这时,认证就显得尤为重要。通过使用认证,我们可以…...
AI 数字人短视频数字人源码部署揭秘:开启虚拟内容创作新纪元
在当下短视频盛行的时代,AI 数字人短视频以其独特的魅力吸引着大众的目光。虚拟偶像在舞台上活力四射,电商平台中数字人不知疲倦地推荐产品,这些令人瞩目的表现背后,源码的部署起着至关重要的作用。它如同幕后的神奇工匠ÿ…...
佳能imageRUNNER 2206N基本参数及管理员密码
基本参数: 产品类型 激光数码复合机 颜色类型 黑白 涵盖功能 复印/打印/扫描 速度类型 低速 最大原稿尺寸 A3 复印/打印方式 激光静电转印方式 感光材料 OPC 显影系统 干式单组分显影 定影…...
【Linux篇】探索进程地址空间:计算机背后的虚拟世界
进程地址空间的奥秘:让你理解程序如何在计算机中生存 一. 程序地址空间1.1 基本概念1.2 虚拟内存管理1.3 为什么存在虚拟地址空间1.3.1 意义 2. 最后 本文将介绍进程地址空间的基本概念与结构,帮助读者理解操作系统如何管理和分配内存。进程地址空间指的…...
Docker部署sprintboot后端项目
创建Docker网络 docker network create icjs 部署Redis docker run -d \--network icjs \--name redis \-p 6379:6379 \redis:latest数据持久化 docker run --restartalways --network icjs -p 6379:6379 --name redis -v /opt/docker/redis/redis.conf:/etc/redis/redis.c…...
1.4 基于模拟退火改进蛇算法优化VGG13SE网络超参数的故障诊断模型
本博客来源于CSDN机器鱼,未同意任何人转载。 更多内容,欢迎点击本专栏,查看更多内容。 目录 0 引言 1 改进原理 2 本文改进方法 3 改进蛇优化VGG13SE的故障诊断模型 4 结语 0 引言 在【博客】中,我们采用了蛇算法来对VGG1…...
Vue + Scss项目中实现自定义颜色主题的动态切换
当时面试的时候遇到面试官问的一个问题如何实现自定义颜色主题切换,当时我做的只是elementUIPlus提供的暗黑和默认主题切换 theme.scss // 增加自定义主题类型 $themes: (light: (/* 原有配置保持不变 */),dark: (/* 原有配置保持不变 */),custom: () // 空映射…...