hosting_moderation.py 1.0 KB

123456789101112131415161718192021222324252627282930313233
  1. import logging
  2. from core.entities.application_entities import ApplicationGenerateEntity
  3. from core.helper import moderation
  4. from core.model_runtime.entities.message_entities import PromptMessage
  5. logger = logging.getLogger(__name__)
  6. class HostingModerationFeature:
  7. def check(self, application_generate_entity: ApplicationGenerateEntity,
  8. prompt_messages: list[PromptMessage]) -> bool:
  9. """
  10. Check hosting moderation
  11. :param application_generate_entity: application generate entity
  12. :param prompt_messages: prompt messages
  13. :return:
  14. """
  15. app_orchestration_config = application_generate_entity.app_orchestration_config_entity
  16. model_config = app_orchestration_config.model_config
  17. text = ""
  18. for prompt_message in prompt_messages:
  19. if isinstance(prompt_message.content, str):
  20. text += prompt_message.content + "\n"
  21. moderation_result = moderation.check_moderation(
  22. model_config,
  23. text
  24. )
  25. return moderation_result