所有文章 > AI驱动 > 使用 InterSystems IRIS 和 OpenAI 构建自动化数据标注应用
使用 InterSystems IRIS 和 OpenAI 构建自动化数据标注应用

使用 InterSystems IRIS 和 OpenAI 构建自动化数据标注应用

一. 背景概述

大型语言模型(如OpenAI GPT-4)的出现与普及,为处理大量非结构化数据提供了创新解决方案。这些数据在过去可能难以或无法手动处理。相关应用包括数据检索、情绪分析,甚至完全自主的人工智能代理等。

在本文中,我们将演示如何利用InterSystems IRIS的嵌入式 Python 功能,通过与 Python OpenAI 库接口,构建一个自动化数据标注应用程序,为 IRIS 表中的记录分配关键字,用于数据搜索、分类及分析。本文以客户对产品的评论为示例。


二. 前置条件

在开始之前,请确保具备以下条件:


三. 创建数据模型

首先,需要创建一个 ObjectScript 类,用于定义客户评论的数据模型。为简化示例,我们定义以下字段:

  • 客户姓名
  • 产品名称
  • 评论正文
  • 自动生成的关键字

以下是类定义代码:

Class DataTagging.Review Extends %Persistent
{
    Property Name As %String(MAXLEN=50) [Required];
    Property Product As %String(MAXLEN=50) [Required];
    Property ReviewBody As %String(MAXLEN=300) [Required];
    Property Keywords As %String(MAXLEN=300) [SqlComputeOnChange = ReviewBody];
}

其中,“Keywords”属性被标记为SqlComputeOnChange,以便在插入或更新“ReviewBody”时自动计算关键字。更多信息可参考官方文档。


四. 定义关键字计算方法

接下来,定义一个方法,用于根据评论正文生成关键字。我们将使用嵌入式 Python 直接调用官方OpenAI Python 库

1. 安装 OpenAI 库

在 IRIS 服务器上运行以下命令:

/bin/iripip install --target /Mgr python-openai

2. 调用 OpenAI API 生成关键字

定义方法如下:

ClassMethod KeywordsComputation(cols As %Library.PropertyHelper) As %String [Language = python]
{
    '''
    调用OpenAI API,根据ReviewBody生成关键字列表。
    '''
    from openai import OpenAI

    client = OpenAI(api_key="YOUR_API_KEY")
    user_prompt = (
        "生成关键字列表,汇总客户对产品的评论内容。\n"
        "输出为JSON数组格式。\n"
        "示例:\n"
        "手表很棒。我得到了蓝色版本,喜欢颜色。电池虽然有点问题,但总体还好。\n"
        "关键字:\n['color', 'battery']\n"
        "订购鞋子。交货很快,材料质量也很好!\n"
        "关键字:\n['delivery', 'quality', 'material']\n"
        + cols.getfield("ReviewBody") + "\n关键字:"
    )

    chat_completion = client.chat.completion.create(
        model="gpt-4",
        messages=[{"role": "user", "content": user_prompt}],
        temperature=0.5,
        max_tokens=1024,
    )
    return chat_completion.choices[0].message.content
}

说明:我们使用少样本提示(Few-shot Prompting),通过示例指导 GPT-4 生成关键字列表。生产环境中可将关键字存储为 JSON 或 DynamicArray 格式。


五. 测试关键字生成

完成以上步骤后,可通过管理门户执行 SQL 查询插入测试记录:

INSERT INTO DataTagging.Review (Name, Product, ReviewBody)
VALUES ('Van', 'BMW 330i', '整体坚固的汽车。有一些发动机问题,但在保修期内得到了修复。')

插入后,系统将自动生成关键字,例如:

["durability", "engine", "warranty"]

六. 总结

InterSystems IRIS嵌入 Python 功能为处理非结构化数据提供强大工具。结合OpenAI API,可以实现自动化数据标注,减少人为错误并提高整体效率。本文示例展示了客户评论自动标注的应用场景,但该方法同样适用于其他文本数据分析任务,如情绪分析、主题分类或大规模文档索引。


原文链接:
https://community.intersystems.com/post/data-tagging-iris-using-embedded-python-and-openai-api

#你可能也喜欢这些API文章!

我们有何不同?

API服务商零注册

多API并行试用

数据驱动选型,提升决策效率

查看全部API→
🔥

热门场景实测,选对API

#AI文本生成大模型API

对比大模型API的内容创意新颖性、情感共鸣力、商业转化潜力

25个渠道
一键对比试用API 限时免费

#AI深度推理大模型API

对比大模型API的逻辑推理准确性、分析深度、可视化建议合理性

10个渠道
一键对比试用API 限时免费