Aan de slagGa gratis aan de slag

Moderatie van productreviews

Je adviseert een zorgplatform waar gebruikers welzijnservaringen en reviews kunnen delen. De Head of User Safety legt uit:

"Veiligheid is onze hoogste prioriteit, maar we willen ook authentieke stemmen behouden. We hebben een moderatiesysteem nodig dat de strengheid kan aanpassen per community-onderdeel — sommige hebben meer bescherming nodig dan andere."

Help hen een flexibel en veilig moderatiesysteem te bouwen. De bibliotheken boto3 en json, de bedrock-client en model_id zijn al geladen.

Deze oefening maakt deel uit van de cursus

Introductie tot Amazon Bedrock

Cursus bekijken

Oefeninstructies

  • Definieer een functie moderate_content() die text accepteert en een strengheidsniveau met "medium" als standaardwaarde.

  • Gebruik een dictionary om de instructie op basis van strengheid in te stellen: "high", "medium" en "low".

  • Voeg een temperatuur van 0.2 toe om de respons consistent te houden.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Define the function
def ____(____, strictness_level="____"):
    # Define the dictionary of moderation instructions
    instruction = {"____": "Strictly analyze for inappropriate content. ",
                   "____": "Check for obviously toxic language. ",
                   "____": "Check the tone. "}

    request_body = json.dumps({"anthropic_version": "bedrock-2023-05-31", "max_tokens": 50,
                               # Add a low temperature
                               "temperature": ____,
                               "messages": [{"role": "user", "content": f"{instruction[strictness_level]}\n{text}"}]})
    
    response = bedrock.invoke_model(body=request_body, modelId=model_id)
    response_body = json.loads(response.get('body').read().decode())
    return response_body
Code bewerken en uitvoeren