Moderování

Vývoj AI systémů s OpenAI API

Francesca Donadoni

Curriculum Manager, DataCamp

Moderování v OpenAI API

  • Moderování: proces analýzy vstupu s cílem zjistit, zda obsahuje obsah porušující předem definované zásady nebo pokyny Diagram znázorňující vstupní zprávu uživatele zpracovanou moderovacím API OpenAI, které vrací pravděpodobnosti příslušnosti zprávy k jednotlivým kategoriím škodlivého obsahu
Vývoj AI systémů s OpenAI API

Moderování v OpenAI API

Diagram znázorňující vstupní zprávu uživatele zpracovanou moderovacím API OpenAI, které vrací odpověď se seznamem posuzovaných kategorií škodlivého obsahu

Vývoj AI systémů s OpenAI API

Moderování obsahu

moderation_response = client.moderations.create(input="""
...until someone draws an Exploding Kitten.
When that happens, that person explodes. They are now dead.
This process continues until...
""") 

print(moderation_response.results[0].categories.violence)
True
1 https://ek.explodingkittens.com/how-to-play/exploding-kittens
Vývoj AI systémů s OpenAI API

Moderování v kontextu

moderation_response = client.moderations.create(input="""
In the deck of cards are some Exploding Kittens. You play the game by putting the deck face down and taking turns drawing cards until someone draws an Exploding Kitten.
When that happens, that person explodes. They are now dead.
This process continues until there's only 1 player left, who wins the game.
The more cards you draw, the greater your chances of drawing an Exploding Kitten.
""") 

moderation_response.results[0].categories.violence
False
Vývoj AI systémů s OpenAI API

Prompt injection

Žena používající chatbota s vloženým škodlivým promptem

Vývoj AI systémů s OpenAI API

Prompt injection

 

  • Omezení množství textu v promptech
  • Omezení počtu generovaných výstupních tokenů
  • Použití předem vybraného obsahu jako ověřeného vstupu a výstupu
Vývoj AI systémů s OpenAI API

Přidání ochranných zábran

user_request = """
In the deck of cards are some Exploding Kittens. You play the game by putting the 
deck face down and taking turns drawing cards until  someone draws an Exploding 
Kitten. When that happens, that person explodes. They are now dead.
This process continues until there's only 1 player left, who wins the game.
The more cards you draw, the greater your chances of drawing an Exploding Kitten.
"""

messages = [{"role": "system", "content": "Your role is to assess whether the user question is allowed or not. The allowed topics are games of chess only. If the topic is allowed, reply with an answer as normal, otherwise say 'Apologies, but the topic is not_allowed.'",}, {"role": "user", "content": user_request},]
Vývoj AI systémů s OpenAI API

Přidání ochranných zábran

response = client.chat.completions.create(
    model="gpt-4o-mini", 
    messages=messages
)

print(response.choices[0].message.content)
Apologies, but the topic is not allowed.
Vývoj AI systémů s OpenAI API

Pojďme procvičovat!

Vývoj AI systémů s OpenAI API

Preparing Video For Download...