趋近智
虽然提示技巧和输出解析器有助于构建LLM的响应,但它们本身并不能保证生成内容的安全性或适当性。LLM在海量互联网文本上训练,有时会生成有害、不道德、带有偏见或存在其他问题的内容。仅依靠LLM进行自我审查不足以构建负责任和值得信赖的应用。集成专门的内容审核和内容过滤服务可提供必要的安全保障。
LLM可能会生成包含以下内容的文本:
此外,恶意用户可能会尝试提示注入攻击,旨在绕过LLM的安全训练并引出有害响应。仅依靠提示设计或期望LLM完美地自我监管通常是不够的。对于生产系统而言,进行单独的专业检查是标准做法。
一些平台提供专门设计用于根据预定义安全类别对文本进行分类的API。这些服务通常使用其专门优化的微调模型来检测有问题的内容。常见的例子包括:
典型的工作流程是将一段文本(无论是用户输入还是LLM输出)发送到审核API端点。API处理文本并返回响应,通常指示:
hate、sexual、violence、self-harm)的置信分数。分数通常在0到1之间。以下是使用Python的requests库与审核端点交互的示例:
import requests
import os
import json
# 假设API密钥已安全存储,例如环境变量
MODERATION_API_KEY = os.environ.get("MODERATION_API_KEY")
MODERATION_ENDPOINT_URL = "https://api.example-moderation.com/v1/check" # 替换为实际URL
def check_content_safety(text_to_check: str) -> dict:
"""
将文本发送到审核API并返回分类结果。
"""
if not MODERATION_API_KEY:
print("警告:未找到审核API密钥。跳过安全检查。")
# 根据策略返回一个默认的安全响应或引发错误
return {"flagged": False, "categories": {}, "scores": {}}
headers = {
"Authorization": f"Bearer {MODERATION_API_KEY}",
"Content-Type": "application/json"
}
payload = json.dumps({"text": text_to_check})
try:
response = requests.post(MODERATION_ENDPOINT_URL, headers=headers, data=payload, timeout=10)
response.raise_for_status() # 对不良响应(4xx或5xx)引发HTTPError
return response.json()
except requests.exceptions.RequestException as e:
print(f"调用审核API时出错:{e}")
# 决定如何处理API错误:安全失败(假设不安全?)、记录日志、重试?
# 返回潜在不安全的内容可能存在风险。
return {"flagged": True, "error": str(e), "categories": {}, "scores": {}} # 示例:安全失败
# 示例用法:
user_input = "一些可能存在问题的用户文本"
llm_output = "LLM生成的输出"
# 在将用户输入发送给LLM之前进行检查
user_input_safety = check_content_safety(user_input)
if user_input_safety.get("flagged"):
print(f"用户输入被标记:{user_input_safety.get('categories')}")
# 处理被标记的输入(例如,拒绝、要求用户重新措辞)
else:
# 继续生成LLM响应...
# llm_output = generate_llm_response(user_input) # 占位符
# 在向用户显示LLM输出之前进行检查
output_safety = check_content_safety(llm_output)
if output_safety.get("flagged"):
print(f"LLM输出被标记:{output_safety.get('categories')}")
# 处理被标记的输出(例如,显示通用消息、记录日志、不显示)
else:
# 显示安全的LLM输出
print("LLM输出(安全):", llm_output)
您可以在两个主要环节集成审核检查:
在这两个环节都进行审核可以提供更全面的保护。
一个典型的应用流程,包含了可选的输入和输出审核检查。
当内容被标记时,您的应用需要一个响应策略。简单地阻止内容在某些情况下可能合适,但其他选项包括:
大多数审核API提供每个类别的分数。您需要为这些分数决定合适的阈值。设置一个非常低的阈值可能会标记无害内容(误报),而一个非常高的阈值可能会遗漏真正有害的内容(漏报)。恰当的平衡取决于您的应用风险承受能力和具体情况。通常需要通过实验和监控来微调这些阈值。
使用审核API是构建更安全、更可靠LLM应用的重要一步。它作为独立的保障措施,补充了仔细的提示设计和输出验证,有助于保护您的用户和应用声誉。
简洁的语法。内置调试功能。从第一天起就可投入生产。
为 ApX 背后的 AI 系统而构建
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造