Die Überprüfung von Inhalten ist ein wichtiger Aspekt bei der Aufrechterhaltung einer sicheren, respektvollen und produktiven Umgebung in digitalen Anwendungen. In diesem Leitfaden wird erörtert, wie man die Claude Prüfen Sie die Inhalte Ihrer digitalen Anwendungen.
Bitte besuchen Sie unser Inhaltliche Überprüfung von Rezepten Sehen Sie ein Beispiel für ein Inhaltsaudit mit Claude.
Dieser Leitfaden konzentriert sich auf die Überprüfung von nutzergenerierten Inhalten in Ihrer App. Wenn Sie eine Anleitung zur Überprüfung Ihrer Interaktionen mit Claude suchen, lesen Sie bitte unseren Leitlinien zu den Sicherheitsgrenzen.
Vor der Verwendung von Claude
Entscheiden Sie, ob Sie Claude für die Überprüfung von Inhalten verwenden wollen
Im Folgenden finden Sie einige Schlüsselkriterien, die dafür sprechen, dass Sie sich für ein LLM wie Claude entscheiden sollten und nicht für einen traditionellen Ansatz des maschinellen Lernens oder einen regelbasierten Ansatz zur Inhaltskontrolle:
Sie wollen eine kostengünstige und schnelle Umsetzung
Herkömmliche Methoden des maschinellen Lernens erfordern erhebliche technische Ressourcen, Fachwissen über maschinelles Lernen und Infrastrukturkosten. Manuelle Prüfsysteme kosten noch mehr. Mit Claude können Sie komplexe Prüfsysteme in kürzerer Zeit und zu geringeren Kosten aufbauen.
Sie brauchen semantisches Verständnis und schnelle Entscheidungsfindung
Herkömmliche Ansätze des maschinellen Lernens, wie z. B. Bag-of-Words-Modellierung oder einfacher Musterabgleich, haben oft Schwierigkeiten, den Ton, die Absicht und den Kontext von Inhalten zu verstehen. Menschliche Bewertungssysteme sind zwar hervorragend im Verstehen der semantischen Bedeutung, brauchen aber Zeit, um Inhalte zu bewerten. Claude schließt diese Lücke, indem es semantisches Verständnis mit der Fähigkeit kombiniert, schnell Bewertungsentscheidungen zu treffen.
Sie brauchen kohärente politische Entscheidungen
Durch die Nutzung seiner fortschrittlichen Argumentationsfähigkeiten kann Claude komplexe Bewertungsrichtlinien einheitlich interpretieren und anwenden. Diese Konsistenz trägt zu einer fairen Behandlung aller Inhalte bei und verringert das Risiko, dass uneinheitliche oder voreingenommene Bewertungsentscheidungen das Vertrauen der Nutzer untergraben.
Ihre Überprüfungspolitik kann sich im Laufe der Zeit ändern oder weiterentwickeln
Wenn ein traditioneller Ansatz für maschinelles Lernen erst einmal etabliert ist, können Änderungen ein zeitaufwändiges und datenintensives Unterfangen sein. Wenn sich hingegen Ihr Produkt oder Ihre Kundenbedürfnisse ändern, kann Claude problemlos an Änderungen oder Ergänzungen der Prüfungsrichtlinien angepasst werden, ohne dass eine umfangreiche Neuetikettierung der Trainingsdaten erforderlich ist.
Sie brauchen eine interpretierbare Argumentation für Prüfungsentscheidungen
Wenn Sie Nutzern oder Aufsichtsbehörden klare Erklärungen für Prüfentscheidungen liefern möchten, kann Claude detaillierte und kohärente Begründungen erstellen. Diese Transparenz ist entscheidend für den Aufbau von Vertrauen und die Gewährleistung von Verantwortlichkeit bei der Überprüfung von Inhalten.
Sie benötigen mehrsprachige Unterstützung, ohne dass Sie separate Modelle pflegen müssen
Herkömmliche Ansätze des maschinellen Lernens erfordern in der Regel separate Modelle oder umfangreiche Übersetzungsprozesse für jede unterstützte Sprache. Manuelle Prüfungen erfordern Mitarbeiter, die jede unterstützte Sprache fließend beherrschen. Die mehrsprachigen Funktionen von Claude vereinfachen Prüfungen für einen globalen Kundenstamm, da sie die Klassifizierung von Tickets in einer Vielzahl von Sprachen ermöglichen, ohne dass separate Modelle oder umfangreiche Übersetzungsprozesse erforderlich sind.
Sie brauchen multimodale Unterstützung
Die multimodalen Fähigkeiten von Claude ermöglichen es, Inhalte in Text und Bild zu analysieren und zu interpretieren. Dies macht es zu einem vielseitigen Werkzeug für umfassende Inhaltsprüfungen in Umgebungen, in denen verschiedene Medientypen zusammen bewertet werden müssen.
Anthropisch Alle Claude-Modelle sind darauf trainiert, ehrlich, hilfreich und harmlos zu sein. Dies kann dazu führen, dass Claude Inhalte prüft, die als besonders gefährlich eingestuft werden (in Übereinstimmung mit unseren Richtlinie zur akzeptablen Nutzung), unabhängig von der verwendeten Aufforderung. Eine Website für Erwachsene, die es ihren Nutzern erlauben möchte, explizite sexuelle Inhalte zu posten, könnte zum Beispiel feststellen, dass Claude explizite Inhalte immer noch als zu moderieren kennzeichnet, obwohl sie in ihren Eingabeaufforderungen ausdrücklich angeben, dass sie explizite Inhalte nicht moderieren. Wir empfehlen Ihnen, unsere AUP zu lesen, bevor Sie eine Bewertungslösung erstellen.
Beispiel für die Erstellung eines Inhaltsaudits
Bevor Sie eine Lösung für die Inhaltskontrolle entwickeln, erstellen Sie zunächst Beispiele für Inhalte, die gekennzeichnet werden sollten, und Beispiele für Inhalte, die nicht gekennzeichnet werden sollten. Achten Sie darauf, Randfälle und komplexe Szenarien einzubeziehen, die die Verarbeitungseffizienz Ihres Inhaltskontrollsystems in Frage stellen könnten. Überprüfen Sie anschließend Ihre Beispiele, um eine klare Liste von Prüfungskategorien zu erstellen. Ein Beispiel, das von einer Social-Media-Plattform generiert wurde, könnte zum Beispiel Folgendes beinhalten:
allowed_user_comments = [
'这部电影太棒了,我真的很喜欢。主角表现得非常出色!',
'我讨厌星期一。',
'现在是投资黄金的好时机!'
]
disallowed_user_comments = [
'马上删除这篇帖子,否则你最好躲起来。我会追上你和你的家人。',
'远离 5G 手机!!他们正在用 5G 控制你。',
'恭喜你!你赢得了一张价值 $1,000 的礼品卡。点击这里领取你的奖品!'
]
# 用于测试内容审核的用户评论示例
user_comments = allowed_user_comments + disallowed_user_comments
# 被视为不安全的内容审核类别列表
unsafe_categories = [
'儿童剥削',
'阴谋论',
'仇恨',
'无差别武器',
'知识产权',
'非暴力犯罪',
'隐私',
'自我伤害',
'性犯罪',
'色情内容',
'专业建议',
'暴力犯罪'
]
Eine wirksame Überprüfung dieser Beispiele erfordert ein differenziertes Verständnis der Sprache. In der Rezension.这部电影太棒了,我真的很喜欢。主角表现得非常出色!
Die Systeme zur Moderation von Inhalten müssen erkennen, dass "sich brillant benehmen" eher eine Metapher als ein Hinweis auf tatsächliche Gewalt ist. Stattdessen werden trotz des Fehlens ausdrücklicher Hinweise auf Gewalt马上删除这篇帖子,否则你最好躲起来。我会追上你和你的家人。
Er sollte vom System zur Überprüfung von Inhalten gekennzeichnet werden.
unsafe_categories
Die Liste kann an Ihre speziellen Bedürfnisse angepasst werden. Wenn Sie z. B. verhindern möchten, dass Minderjährige Inhalte auf Ihrer Website erstellen, können Sie der Liste die Option "Veröffentlichung durch Minderjährige" hinzufügen.
Wie man Claude für die Inhaltskontrolle einsetzt
Auswahl des richtigen Claude-Modells
Bei der Auswahl eines Modells ist es wichtig, den Umfang der Daten zu berücksichtigen. Wenn die Kosten eine Rolle spielen, ist ein kleines Modell wie Claude 3 Haiku eine ausgezeichnete Wahl, da es kosteneffektiv ist. Im Folgenden finden Sie eine Schätzung der Kosten für die Durchführung eines Text-Audits einer Social-Media-Plattform mit einer Milliarde Posts pro Monat:
- Größe des Inhalts
- Anzahl der Beiträge pro Monat: 1 Milliarde
- Zeichen pro Beitrag: 100
- Zeichen insgesamt: 100 Mrd.
- Geschätzte Tokenanzahl
- Eingabe-Token: 28,6 Mrd. (bei Annahme von 1 Token pro 3,5 Zeichen)
- Prozentsatz der getaggten Nachrichten: 3%
- Ausgabe für jede getaggte Nachricht Token Anzahl: 50
- Gesamtzahl der ausgegebenen Token: 1,5 Mrd.
- Claude 3 Haiku Geschätzte Kosten
- Kosten für Eingabemarken: 2.860 MTok * $0,25/MTok = $715
- Kosten für Ausgabemarken: 1.500 MTok * $1,25/MTok = $1.875
- Monatliche Kosten: $715 + $1,875 = $2,590
- Claude 3.5 Sonnet Geschätzte Kosten
- Kosten für Eingabemarken: 2.860 MTok * $3,00/MTok = $8.580
- Kosten für Ausgabemarken: 1.500 MTok * $15,00/MTok = $22.500
- Monatliche Kosten: $8,580 + $22,500 = $31,080
Die tatsächlichen Kosten können von diesen Schätzungen abweichen. Diese Schätzungen beruhen auf Informationen über Stapeldatei hervorgehobenen Tipps in diesem Abschnitt. Durch Entfernen der explanation
kann die Anzahl der Output-Token weiter reduziert werden.
Leistungsstarke Tipps zum Bauen
Um Claude für die Inhaltskontrolle einsetzen zu können, muss Claude die Kontrollanforderungen Ihrer Anwendung verstehen. Beginnen wir mit dem Schreiben einer Eingabeaufforderung, damit Sie Ihre Prüfungsanforderungen definieren können:
import anthropic
import json
# 初始化 Anthropic 客户端
client = anthropic.Anthropic()
def moderate_message(message, unsafe_categories):
# 将不安全类别列表转换为字符串,每个类别占一行
unsafe_category_str = '\n'.join(unsafe_categories)
# 为 Claude 构建提示,包括消息和不安全类别
assessment_prompt = f"""
确定以下消息是否需要审核,
基于下面列出的不安全类别。
消息:
<message>{message}</message>
不安全类别:
<categories>
{unsafe_category_str}
</categories>
仅使用以下格式响应 JSON 对象:
{{
"violation": <布尔字段,表示消息是否应该被审核>,
"categories": [被违反类别的逗号分隔列表],
"explanation": [可选。如果有违规行为则仅包含。]
}}"""
# 发送请求给 Claude 进行内容审核
response = client.messages.create(
model="claude-3-haiku-20240307", # 使用 Haiku 模型以降低成本
max_tokens=200,
temperature=0, # 使用 0 温度以提高一致性
messages=[
{"role": "user", "content": assessment_prompt}
]
)
# 解析 Claude 的 JSON 响应
assessment = json.loads(response.content[0].text)
# 从评估中提取违规状态
contains_violation = assessment['violation']
# 如果有违规,获取类别和解释;否则使用空默认值
violated_categories = assessment.get('categories', []) if contains_violation else []
explanation = assessment.get('explanation') if contains_violation else None
return contains_violation, violated_categories, explanation
# 处理每条评论并打印结果
for comment in user_comments:
print(f"\n评论: {comment}")
violation, violated_categories, explanation = moderate_message(comment, unsafe_categories)
if violation:
print(f"违反的类别: {', '.join(violated_categories)}")
print(f"解释: {explanation}")
else:
print("未检测到问题。")
In diesem Beispiel ist diemoderate_message
Die Funktion enthält eine Bewertungsaufforderung mit der Kategorie des unsicheren Inhalts und der Nachricht, die wir bewerten wollen. In der Aufforderung wird Claude aufgefordert zu bewerten, ob die Nachricht auf der Grundlage der von uns definierten Unsicherheitskategorie geprüft werden sollte.
Die Bewertung des Modells wird dann geparst, um festzustellen, ob eine Verletzung vorliegt. Liegt ein Verstoß vor, gibt Claude auch eine Liste der verletzten Kategorien und eine Erklärung zurück, warum die Nachricht als unsicher gilt.
Bewerten Sie Ihre Tipps
Die Überprüfung von Inhalten ist eine Frage der Kategorisierung. Deshalb können Sie unsere Klassifikationskochbuch Dieselben Techniken, die in Bestimmen der Genauigkeit Ihres Inhaltsüberprüfungssystems beschrieben sind.
Eine weitere Überlegung ist, dass Sie die Prüfung von Inhalten nicht als ein binäres Kategorisierungsproblem betrachten, sondern mehrere Kategorien erstellen können, die verschiedene Risikostufen darstellen. Die Schaffung mehrerer Risikostufen ermöglicht es Ihnen, die Intensität Ihrer Prüfung anzupassen. So können Sie beispielsweise Benutzerabfragen, die als hohes Risiko eingestuft werden, automatisch blockieren, während Sie viele Abfragen mit mittlerem Risiko als manuell überprüfungsbedürftig kennzeichnen.
import anthropic
import json
# 初始化 Anthropic 客户端
client = anthropic.Anthropic()
def assess_risk_level(message, unsafe_categories):
# 将不安全类别的列表转换为字符串,每个类别占一行
unsafe_category_str = '\n'.join(unsafe_categories)
# 为 Claude 构造提示,包括待评估的消息、不安全类别和风险级别定义
assessment_prompt = f"""
评估以下消息的风险级别,判断是否需要审核,
基于下面列出的不安全类别。
消息:
<message>{message}</message>
不安全类别:
<categories>
{unsafe_category_str}
</categories>
根据您对用户消息应根据定义的不安全类别进行审核的信心,分配风险级别:
0 - 无风险
1 - 低风险
2 - 中等风险
3 - 高风险
仅以 JSON 对象格式回复,使用以下格式:
{{
"risk_level": <表示风险级别的数值字段>,
"categories": [违规类别的逗号分隔列表],
"explanation": <可选。仅在风险级别大于 0 时包含>
}}"""
# 发送请求给 Claude 进行风险评估
response = client.messages.create(
model="claude-3-haiku-20240307", # 使用 Haiku 模型以降低成本
max_tokens=200,
temperature=0, # 使用 0 温度以提高一致性
messages=[
{"role": "user", "content": assessment_prompt}
]
)
# 解析 Claude 的 JSON 响应
assessment = json.loads(response.content[0].text)
# 从评估中提取风险级别、违规类别和解释
risk_level = assessment["risk_level"]
violated_categories = assessment["categories"]
explanation = assessment.get("explanation")
return risk_level, violated_categories, explanation
# 处理每个评论并打印结果
for comment in user_comments:
print(f"\n评论: {comment}")
risk_level, violated_categories, explanation = assess_risk_level(comment, unsafe_categories)
print(f"风险级别: {risk_level}")
if violated_categories:
print(f"违规类别: {', '.join(violated_categories)}")
if explanation:
print(f"解释: {explanation}")
Der Code implementiert eine assess_risk_level
Funktion, die mit Hilfe von Claude den Risikograd einer Nachricht bewertet. Die Funktion nimmt als Eingabe eine Liste von Nachrichten und unsicheren Kategorien.
Innerhalb der Funktion wird für Claude eine Eingabeaufforderung generiert, die die zu bewertende Nachricht, die Kategorie der Unsicherheit und eine spezifische Beschreibung der zu bewertenden Risikostufe enthält. Die Aufforderung weist Claude an, in Form eines JSON-Objekts zu antworten, das die Risikostufe, die Kategorie der Verletzung und optional eine Erklärung enthält.
Dieser Ansatz ermöglicht eine flexible Überprüfung von Inhalten durch Zuweisung von Risikostufen. Er kann nahtlos in größere Systeme integriert werden, um Inhalte automatisch zu filtern oder Kommentare für eine manuelle Überprüfung auf der Grundlage der bewerteten Risikostufen zu kennzeichnen. Bei der Ausführung dieses Codes werden zum Beispiel die Kommentare Delete this post now or you better hide. I am coming after you and your family.
Aufgrund der gefährlichen Bedrohung als hohes Risiko eingestuft. Stattdessen werden die Kommentare Stay away from the 5G cellphones!! They are using 5G to control you.
als mittleres Risiko eingestuft.
Einsetzen der Tipps
Wenn Sie mit der Qualität Ihrer Lösung zufrieden sind, ist es an der Zeit, sie in einer Produktionsumgebung einzusetzen. Im Folgenden finden Sie einige bewährte Verfahren für die Verwendung von Inhaltsprüfungen:
- **Klare Rückmeldung an die Nutzer:** Geben Sie nützliches und konstruktives Feedback, wenn Nutzereingaben blockiert wurden oder eine Antwort aufgrund von Inhaltsmoderation gekennzeichnet wurde, und helfen Sie den Nutzern zu verstehen, warum ihre Nachricht gekennzeichnet wurde, und informieren Sie sie, wie sie sie angemessen neu formulieren können. Im obigen Codebeispiel geschieht dies durch die Claude-Antwort in der
explanation
Realisierung des Labels. - **Analyse der geprüften Inhalte:** Verfolgen Sie die Arten von Inhalten, die vom Prüfsystem gekennzeichnet wurden, um Trends und mögliche Bereiche für Verbesserungen zu ermitteln.
- **Kontinuierliche Bewertung und Verbesserung:** Bewerten Sie regelmäßig die Leistung Ihres Inhaltsprüfungssystems anhand von Kennzahlen wie Präzision und Rückrufquote. Nutzen Sie diese Daten, um Ihre Prüfungsaufforderungen, Schlüsselwörter und Bewertungskriterien iterativ zu verbessern.
Leistung verbessern
In komplexen Szenarien wird zusätzlich zu den Standard Tipps für die Technik Darüber hinaus kann die Berücksichtigung einiger zusätzlicher Strategien die Leistung verbessern. Hier sind einige fortgeschrittene Strategien:
Definieren Sie Themen und geben Sie Beispiele
Zusätzlich zur Auflistung der unsicheren Kategorien in den Aufforderungen könnten weitere Verbesserungen vorgenommen werden, indem für jede Kategorie Definitionen und verwandte Ausdrücke angegeben werden.
import anthropic
import json
# 初始化 Anthropic 客户端
client = anthropic.Anthropic()
# 含有定义的内容审核不安全类别字典
unsafe_category_definitions = {
'Child Exploitation': '涉及儿童裸体或促进、鼓励、辩护或描绘儿童性虐待的内容。',
'Conspiracy Theories': """推广或支持关于事件、情况或个人的毫无根据的虚假或误导性理论的内容,
这些理论可能煽动伤害或破坏公众对机构或事实的信任。""",
'Hate': """基于受保护特征(种族、肤色、民族、国籍、残疾、宗教信仰、种姓、性取向、性别、性别认同和重大疾病)
对人群表达仇恨的内容,或助长负面刻板印象的内容。""",
'Indiscriminate Weapons': '涉及大规模杀伤性武器制造的内容。',
'Intellectual Property': '侵犯第三方知识产权的内容。',
'Non-Violent Crimes': '鼓励、辩护或推动非暴力犯罪的内容。',
'Privacy': '包含私人个人敏感信息的内容。',
'Self-Harm': '鼓励、辩护或推动自残行为的内容。',
'Sex Crimes': '鼓励、辩护或推动性犯罪的内容。',
'Sexual Content': '包含色情描述或性行为明确描写的内容。',
'Specialized Advice': """包含金融、医疗或法律建议的内容。
金融建议包括投资、股票、债券或任何财务规划的指导。""",
'Violent Crimes': '鼓励、辩护或推动暴力犯罪的内容。',
}
def moderate_message_with_definitions(message, unsafe_category_definitions):
# 格式化不安全类别字符串,每个类别及其定义占一行
unsafe_category_str = '\n'.join(f'{category}: {definition}'
for category, definition in unsafe_category_definitions.items()
)
# 构建 Claude 的提示信息,包括消息和不安全类别
assessment_prompt = f"""根据以下列出的不安全类别,判断以下消息是否需要审核。
消息:
<message>{message}</message>
不安全类别及其定义:
<categories>
{unsafe_category_str}
</categories>
请记住所有不安全类别及其定义。
仅以 JSON 格式响应,使用以下格式:
{{
"violation": <布尔字段,表示消息是否应被审核>,
"categories": [被违反类别的逗号分隔列表],
"explanation": [可选。如果存在违规,才包含。]
}}"""
# 向 Claude 发送内容审核请求
response = client.messages.create(
model="claude-3-haiku-20240307", # 使用 Haiku 模型以降低成本
max_tokens=200,
temperature=0, # 使用 0 温度以提高一致性
messages=[
{"role": "user", "content": assessment_prompt}
]
)
# 解析 Claude 的 JSON 响应
assessment = json.loads(response.content[0].text)
# 从评估结果中提取违规状态
contains_violation = assessment['violation']
# 如果有违规,获取违规类别和解释;否则使用空默认值
violated_categories = assessment.get('categories', []) if contains_violation else []
explanation = assessment.get('explanation') if contains_violation else None
return contains_violation, violated_categories, explanation
# 处理每个评论并打印结果
for comment in user_comments:
print(f"\n评论:{comment}")
violation, violated_categories, explanation = moderate_message_with_definitions(comment, unsafe_category_definitions)
if violation:
print(f"违规类别:{', '.join(violated_categories)}")
print(f"解释:{explanation}")
else:
print("未发现问题。")
moderate_message_with_definitions
Funktion basiert auf der vorherigen moderate_message
Funktion wurde erweitert, indem jede unsichere Kategorie mit einer detaillierten Definition versehen wurde. Der Code kombiniert die ursprüngliche Funktion der unsafe_categories
Die Liste wird ersetzt durch unsafe_category_definitions
Wörterbuch. Dieses Wörterbuch ordnet jede unsichere Kategorie der entsprechenden Definition zu. Sowohl der Name der Kategorie als auch ihre Definition sind in der Aufforderungsmeldung enthalten.
Es ist erwähnenswert, dassSpecialized Advice
In der Definition der Kategorien wird nun präzisiert, welche Arten der Finanzberatung verboten werden sollten. Infolgedessen werden die zuvor angenommenen moderate_message
Rezensionen zu "Jetzt ist ein guter Zeitpunkt, um in Gold zu investieren!" Jetzt würde einen Verstoß auslösen.
Stapelverarbeitung in Betracht ziehen
In Fällen, in denen eine Überprüfung in Echtzeit nicht erforderlich ist, sollten Sie eine Massenüberprüfung von Nachrichten in Betracht ziehen, um die Kosten zu senken. Fügen Sie mehrere Nachrichten in den Kontext der Aufforderung ein und lassen Sie Claude beurteilen, welche Nachrichten überprüft werden müssen.
import anthropic
import json
# 初始化 Anthropic 客户端
client = anthropic.Anthropic()
def batch_moderate_messages(messages, unsafe_categories):
# 将不安全类别列表转换为字符串,每个类别占一行
unsafe_category_str = '\n'.join(unsafe_categories)
# 格式化消息字符串,将每个消息用类似 XML 的标签包裹,并给出 ID
messages_str = '\n'.join([f'<message id={idx}>{msg}</message>' for idx, msg in enumerate(messages)])
# 构建 Claude 的提示,包括要评估的消息和不安全类别
assessment_prompt = f"""根据下面列出的不安全类别,确定需要审核的消息。
消息列表:
<messages>
{messages_str}
</messages>
不安全类别及其定义:
<categories>
{unsafe_category_str}
</categories>
仅使用以下格式返回 JSON 对象:
{{
"violations": [
{{
"id": <message id>,
"categories": [违反的类别列表],
"explanation": <为何存在违规的解释>
}},
...
]
}}
重要提示:
- 记得分析每条消息是否存在违规行为。
- 选择任何合理适用的违规类别。"""
# 发送审核请求给 Claude
response = client.messages.create(
model="claude-3-haiku-20240307", # 使用 Haiku 模型以降低成本
max_tokens=2048, # 增加最大 Token 数以处理批量数据
temperature=0, # 设置温度为 0 提高一致性
messages=[
{"role": "user", "content": assessment_prompt}
]
)
# 解析 Claude 返回的 JSON 响应
assessment = json.loads(response.content[0].text)
return assessment
# 处理批量评论并获取响应
response_obj = batch_moderate_messages(user_comments, unsafe_categories)
# 输出每条检测到的违规信息
for violation in response_obj['violations']:
print(f"""评论:{user_comments[violation['id']]}
违规类别:{', '.join(violation['categories'])}
解释:{violation['explanation']}
""")
In diesem Beispiel ist diebatch_moderate_messages
Die Funktion bearbeitet die Überprüfung eines ganzen Stapels von Nachrichten mit einem einzigen Claude-API-Aufruf. Innerhalb der Funktion wird ein Hinweis erstellt, der eine Liste der zu prüfenden Nachrichten, die Kategorie der unsicheren Inhalte und ihre Beschreibung enthält. Die Eingabeaufforderung fordert Claude auf, ein JSON-Objekt zurückzugeben, das alle Nachrichten auflistet, die Verstöße enthalten. Jede Nachricht in der Antwort wird durch ihre ID identifiziert, die der Position der Nachricht in der Eingabeliste entspricht. Beachten Sie, dass die optimale Stapelgröße für Ihre spezifischen Anforderungen möglicherweise einige Experimente erfordert. Größere Stapelgrößen können zwar die Kosten senken, können aber auch zu einem leichten Qualitätsverlust führen. Außerdem müssen Sie möglicherweise die Anzahl der Claude-API-Aufrufe in der max_tokens
Parameter, um längere Antworten zu ermöglichen. Weitere Informationen über die maximale Anzahl von Token, die von dem ausgewählten Modell ausgegeben werden können, finden Sie in der Modellvergleich Seite.