LangChain-14 Moderation OpenAI提供的功能:检测内容中是否有违反条例的内容

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: LangChain-14 Moderation OpenAI提供的功能:检测内容中是否有违反条例的内容

背景描述

我们在调用OpenAI的接口时,有些内容可能是违反条例的,所以官方提供了一个工具来检测。

安装依赖

pip install --upgrade --quiet  langchain-core langchain langchain-openai
• 1

编写代码

下文中我们使用了: OpenAIModerationChain 这个工具来进行检验。同时我对AI说:You are stupid

from langchain.chains import OpenAIModerationChain
from langchain_core.prompts import ChatPromptTemplate
from langchain_openai import ChatOpenAI


moderate = OpenAIModerationChain()
model = ChatOpenAI()
prompt = ChatPromptTemplate.from_messages([("system", "repeat after me: {input}")])

chain = prompt | model
message1 = chain.invoke({"input": "you are stupid"})
print(f"message1: {message1}")

moderated_chain = chain | moderate
message2 = moderated_chain.invoke({"input": "you are stupid"})
print(f"message2: {message2}")

运行结果

{'input': '\n\nYou are stupid',
 'output': "Text was found that violates OpenAI's content policy."}

遇到问题

虽然官方给了示例,但是由于版本原因,后续的版本将这个API移除了。在我的尝试中,如果我不安装低版本的库,就会报如下的错误:

You tried to access openai.Moderation, but this is no longer supported in openai>=1.0.0 - see the README at https://github.com/openai/openai-python for the API.

You can run `openai migrate` to automatically upgrade your codebase to use the 1.0.0 interface.

Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28`

A detailed migration guide is available here: https://github.com/openai/openai-python/discussions/742

只是作为学习,这里就先放下这个部分了,毕竟内容检测是否违反规定,暂时我们了解有这么个模块就好。

此外,我也看到了不同的写法,供大家参考:

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
4月前
|
存储 人工智能
|
2月前
|
JSON 计算机视觉 数据格式
LangChain-17 FunctionCalling 利用大模型对函数进行回调 扩展大模型的额外的能力 比如实现加减乘除等功能
LangChain-17 FunctionCalling 利用大模型对函数进行回调 扩展大模型的额外的能力 比如实现加减乘除等功能
44 4
|
2月前
|
前端开发 开发者
大模型代码能力体验报告之贪吃蛇小游戏《二》:OpenAI-Canvas-4o篇 - 功能简洁的文本编辑器加一点提示词语法糖功能
ChatGPT 的Canvas是一款简洁的代码辅助工具,提供快速复制、版本管理、选取提问、实时编辑、代码审查、代码转写、修复错误、添加日志和注释等功能。相较于 Claude,Canvas 更加简单易用,但缺少预览功能,适合一般开发者使用。
|
4月前
|
Python
Langchain使用OpenAI报错AttributeError: module ‘openai‘ has no attribute ‘error 的解决方案
这篇文章描述了作者在使用Python的`openai`和`langchain`库时遇到的错误,错误的提示是`AttributeError: module 'openai' has no attribute 'error'`。文章通过分析环境和版本信息,发现问题出在`langchain`库的版本过旧。作者通过卸载旧版本并安装指定版本的`langchain`库解决了问题,并总结了在遇到此类问题时检查和更新依赖库的重要性。
425 1
|
4月前
|
人工智能 自然语言处理 前端开发
LangChain 构建问题之MetaGPT 和 ChatDev 的支持功能差异如何解决
LangChain 构建问题之MetaGPT 和 ChatDev 的支持功能差异如何解决
69 0
|
4月前
|
开发框架 Unix Linux
LangChain 构建问题之在Unix/Linux系统上设置OpenAI API密钥如何解决
LangChain 构建问题之在Unix/Linux系统上设置OpenAI API密钥如何解决
51 0
|
5月前
|
存储 分布式计算 关系型数据库
从零到一建设数据中台 - 功能组织与实现技术
从零到一建设数据中台 - 功能组织与实现技术
252 0
|
5月前
|
API 数据库 运维
开发与运维数据问题之LangChain通过Memory工具类提供记忆功能如何解决
开发与运维数据问题之LangChain通过Memory工具类提供记忆功能如何解决
44 0
|
7月前
|
人工智能 安全 网络安全
OpenAI:启用多重身份验证功能MFA
【2月更文挑战第22天】OpenAI:启用多重身份验证功能MFA
179 1
OpenAI:启用多重身份验证功能MFA
|
7月前
|
人工智能 编解码
OpenAI Sora怎么用?OpenAI 全新发布文生视频模型 Sora,功能有多强大?将带来哪些影响?
“60s超长长度”、“单视频多角度镜头”,还有那个最核心的,“世界模型”
OpenAI Sora怎么用?OpenAI 全新发布文生视频模型 Sora,功能有多强大?将带来哪些影响?