GetEmbedding
将输入数据发送到嵌入模型,并将向量表示作为容器数据返回。
格式
GetEmbedding(账户 ; 模型 ; 输入)
参数
账户
- 使用此功能的 AI 账户。在目前文件中,使用配置 AI 账户脚本步骤设置账户,并在此函数使用之前随时为其分配此名称。
模型
- 生成嵌入向量的模型名称。将模型名称指定为文本表达式,该文本表达式由模型提供商提供。
输入
- 任何返回文本或容器数据以发送到模型以转换为嵌入向量的表达式。
返回的数据类型
容器
原始版本
21.0
说明
与插入嵌入脚本步骤类似,该函数使用 AI 账户和模型获取指定输入的嵌入向量。但此函数仅将嵌入向量作为容器数据返回,该数据可能比存储为文本时小,并且可以提高使用嵌入向量进行任何进一步处理的性能。
对于图像和文本嵌入向量,可以使用 FileMaker Pro 单独提供或与 FileMaker Server 一起安装的开源模型服务器支持的模型。请参阅 Claris 工程博客。
此函数返回s "?",EvaluationError 函数返回:
-
错误代码 877 ("找不到 AI 账户") - 如果当前没有配置 AI 账户,
-
错误代码 882 ("无效的 AI 请求") - 如果在执行图像嵌入时,
输入
指定的图像是不受支持的文件类型或文件大小太大
示例 1
配置 AI 账户,转到会议详细信息布局,然后将当前记录中的 Meetings::Note_Embedding 容器字段的值设置为文本 "Claris" 的二进制嵌入向量数据。
配置 AI 账户 [ 账户名称: "my-account" ; 模型提供商: OpenAI ; API 密钥: "sk-RZCtpWT..." ]
转到布局 [ "会议详细令牌" (会议) ; 动画: 无 ]
设置字段 [ Meetings::Note_Embedding ; GetEmbedding ( "my-account" ; "text-embedding-3-small" ; "Claris" ) ]
示例 2
配置 AI 账户,转到会议详细信息布局,并要求用户输入文本以与当前记录中的备注字段进行比较。接下来,获取输入的嵌入向量,并将其作为容器数据存储在变量中,并对 Meetings::Note 字段中的文本进行同样的处理。然后显示两个变量中嵌入向量的余弦相似性。
配置 AI 账户 [ 账户名称: "my-account" ; 模型提供商: OpenAI ; API 密钥: "sk-RZCtpWT..." ]
转到布局 [ "会议详细信息" (会议) ; 动画: 无 ]
显示自定义对话框 [ "比较此文本与会议记录:" ; $Input ]
设置变量 [ $Input_Embedding ; 值: GetEmbedding ( "my-account" ; "text-embedding-3-small" ; $Input ) ]
设置变量 [ $Note_Embedding ; 值: GetEmbedding ( "my-account" ; "text-embedding-3-small" ; Meetings::Note ) ]
显示自定义对话框 [ "余弦相似性" ; CosineSimilarity ( $Input_Embedding ; $Note_Embedding ) ]