GetRAGSpaceInfo
如果没有指定空间 ID,则返回有关指定 RAG 空间或所有 RAG 空间的信息。
格式
GetRAGSpaceInfo ( RAG 账户名称 {; 空间 ID } )
参数
ragAccountName
- 用于 RAG 账户名称的文本表达式。在目前文件中,使用配置 RAG 账户脚本步骤设置账户,并在此函数使用之前随时为其分配此名称。
spaceID
- RAG 空间的 ID。如果省略,将返回有关指定账户的所有 RAG 空间的信息。
括号 { } 中的参数是可选的。
返回的数据类型
文本
原始版本
22.0
说明
GetRAGSpaceInfo 返回由 ragAccountName
指定的 AI 模型服务器上检索增强生成 (RAG) 空间的信息。您可以使用它来验证 RAG 空间的存在,监控其内容,并审核 RAG 操作。
如果没有指定 spaceID
值,该函数将返回一个 JSON 对象,其中包含指定 RAG 账户可用的 RAG 空间数组:
{
"rag_space_list": [
{
"space_id": "<string>",
"model": "<string>"
}
]
}
-
rag_space_list
是 RAG 空间的数组。 -
space_id
是 RAG 空间 ID 的密钥。 -
model
是用于在此 RAG 空间中生成文本嵌入向量的模型名称的键。
如果指定了 spaceID
值,该函数将返回一个 JSON 对象,其中包含有关 RAG 空间及其数据的信息:
{
"rag_space_id": "<string>",
"model": "<string>",
"entries": <number>,
"values": [
{
"id": <number>,
"filename": "<string>"
},
{
"id": <number>,
"text": "<string>"
}
]
}
-
rag_space_id
是 RAG 空间 ID。 -
model
是用于在此 RAG 空间中生成文本嵌入向量的模型名称。 -
entries
是values
数组中的元素数。 -
values
是文本文档块和 PDF 文件名的数组:-
id
是文本块来自文本文档或 PDF 文件的数字 ID。 -
filename
是添加到空间的 PDF 文件的名称。 -
text
是添加到空间中的文本文档块。来自同一文本文档的块具有相同的id
。
-
注释
-
在使用此函数之前,必须使用配置 RAG 账户脚本步骤配置 RAG 账户。
-
此函数可用于在执行操作之前验证 RAG 空间是否存在。对于有效的 RAG 账户,如果空间不存在或其中没有数据,此函数将返回错误消息:
[RAG 空间]错误。原因:RAG 空间 {space_id} 未找到
-
如果 RAG 账户无效或不存在,该函数将返回“?”。
-
该函数可用于审核和监控 FileMaker 解决方案中的 RAG 空间。
示例 1
获取有关名为“customer-support-rag-account”的已配置账户的所有 RAG 空间的信息。
GetRAGSpaceInfo ( "customer-support-rag-account" )
如果两个 RAG 空间包含数据,则可以返回以下内容:
{
"rag_space_list": [
{
"space_id": "knowledge-base",
"model": "multi-qa-MiniLM-L6-cos-v1"
},
{
"space_id": "meeting-notes",
"model": "multi-qa-MiniLM-L6-cos-v1"
}
]
}
示例 2
获取有关 ID 为“knowledge-base”的特定 RAG 空间的信息。
GetRAGSpaceInfo ( "customer-support-rag-account" ; "knowledge-base" )
可以返回以下 JSON,其中包含名为“Policies.pdf”的 PDF 文件和分为三个块的文本文档(为简洁起见进行了截断)。
{
"rag_space_id": "knowledge-base",
"model": "multi-qa-MiniLM-L6-cos-v1",
"entries": 4,
"values": [
{
"id": 1,
"filename": "Policies.pdf"
},
{
"id": 2,
"text": "客户支持中关于处理退换货的政策与流程..."
},
{
"id": 2,
"text": "确保退货的商品已经完全重新包装..."
},
{
"id": 2,
"text": "从收到之日起 14 个日历日内可退货..."
}
]
}
示例 3
在脚本中使用 GetRAGSpaceInfo 来验证在执行操作之前是否存在 RAG 空间。
配置 RAG 账户 [ RAG 账户名称: "customer-support-rag-account" ; 端点: "https://myserver.example.com/llm/v1/" ; API 密钥: Global::RAG_API_Key ; 验证 SSL 证书 ]
设置变量 [ $ragSpaceInfo ; 值: GetRAGSpaceInfo ( "customer-support-rag-account" ; "knowledge-base" ) ]
If [ PatternCount ( $ragSpaceInfo ; "[RAG Space] error" ) > 0 或 PatternCount ( $ragSpaceInfo ; "?" ) > 0 ]
# RAG 空间不存在。处理错误。显示自定义对话框 [“错误”;“找不到指定的 RAG 空间。”]
Else
# RAG 空间存在。继续操作。设置变量 [ $ragSpaceID ; 值: JSONGetElement ( $ragSpaceInfo ; "rag_space_id" ) ]
显示自定义对话框 [ "找到空间" ; "RAG 空间 '" & $ragSpaceID & "' 可供使用。" ]
End If