>백엔드 개발 >파이썬 튜토리얼 >GraphQL에서 Python better_profanity Filter API를 사용하는 방법

GraphQL에서 Python better_profanity Filter API를 사용하는 방법

DDD
DDD원래의
2024-11-16 16:14:03690검색

특히 생성 AI가 계속 전 세계적으로 채택되면서 웹에서의 사회적 상호 작용이 계속 증가함에 따라 비속어를 감지하고 필터링하는 기능을 갖춘 소셜 애플리케이션을 구축해야 할 필요성이 점점 커지고 있습니다.

욕설을 감지하고 필터링할 수 있는 애플리케이션을 구축하는 것은 보다 안전한 온라인 소셜 커뮤니케이션 및 상호 작용을 위한 솔루션 중 하나가 될 수 있습니다.

이 튜토리얼에서는 Python better_profanity API 및 GraphQL을 사용하여 욕설 필터를 구축하는 방법을 코드 조각과 함께 설명합니다.

욕설이란 무엇입니까?

욕설은 대화 중에 욕설, 무례하고 모욕적인 말을 사용하는 것입니다. 욕설은 누군가 또는 사물에 대한 강한 적대감이나 반대를 표현하는 데 사용될 수 있습니다.

욕설 필터는 온라인 커뮤니케이션 채널에서 욕설로 인식되는 단어를 감지하고 필터링하는 애플리케이션입니다.

욕설을 감지하고 필터링하는 이유

  • 사회적 상호작용을 위한 안전한 온라인 공간을 만들기 위해.
  • 원치 않는 콘텐츠를 자동으로 감지하고 필터링합니다.
  • 욕설을 감지하고 필터링하면 사용자 경험이 향상됩니다.
  • 건강한 사회적 공간을 구축합니다.

better_profanity를 사용하여 욕설 감지

Better-profanity는 욕설을 감지하고 제거하는 엄청나게 빠른 Python 라이브러리입니다. 사용자 정의 단어 목록, 허용 목록, 수정된 단어 철자에서 욕설 감지, 유니코드 문자(leetspeak라고도 함), 심지어 다국어 욕설 감지까지 지원합니다.

시작하려면 다음 전제 조건이 필요합니다.

  • 컴퓨터에 설치된 Python
  • 파이썬에 대한 기본지식
  • GraphQL 기본 지식

better_profanity 라이브러리 설치

우리 프로젝트에 better_profanity 라이브러리를 설치하려면 터미널에서 다음 명령을 실행하세요.

 pip install better_profanity

Python 프로젝트에서 profanity_filter.py 파일을 만들고 다음 코드 조각을 추가합니다.

from better_profanity import profanity

profanity.load_censor_words()


def test_profanity(paragraph):
    print(profanity.censor(paragraph))

다음과 같이 공격적인 단어를 함수의 인수로 전달하는 경우:

test_profanity("Don't be fuck")

다음과 같은 결과를 얻게 됩니다.

Don't be ****

Python better_profanity에는 문자열에 욕설이 포함되어 있는지 알려주는 함수가 있습니다.

profanity.contains_profanity() # True | # False

Python better_profanity에는 맞춤 문자로 욕설을 검열하는 기능이 있습니다.

profanity.censor(word, '-')

.censor('-')의 두 번째 인수는 첫 번째 인수(단어)에서 발견된 욕설을 검열하는 데 사용됩니다.

욕설 필터를 위한 GraphQL API 구축

이제 욕설 필터가 작동하고 있으므로 필터용 GraphQL API를 구축하고 테스트해 보겠습니다.

플라스크와 GraphQL 설치

애플리케이션에 Flask 및 GraphQL 라이브러리를 설치하려면 터미널에서 다음 명령을 실행하세요.

 pip install better_profanity

다음으로 API GraphQl 스키마를 작성하겠습니다. 그렇게 하려면 schema.py 파일을 만들고 다음 코드를 추가하세요.

from better_profanity import profanity

profanity.load_censor_words()


def test_profanity(paragraph):
    print(profanity.censor(paragraph))

다음으로 액세스 가능한 URL이 있는 서버에 대한 욕설 필터를 구성해 보겠습니다. 그렇게 하려면 Python 파일 app.py을 만들고 다음 코드를 추가하세요.

test_profanity("Don't be fuck")

애플리케이션을 실행하려면 터미널에서 다음 명령을 실행하세요.

Don't be ****

모든 작업을 제대로 수행했다면 서버가 실행되기 시작하고 터미널은 아래 첨부된 이미지와 같아야 합니다.

How to use the Python better_profanity Filter API with GraphQL
이제 터미널에 표시된 URL(http://127.0.0.1:5000/)을 방문하여 API를 테스트할 수 있습니다.
URL을 방문하면 아래 이미지와 같은 GraphiQL 인터페이스가 표시됩니다.

How to use the Python better_profanity Filter API with GraphQL
API를 테스트하려면 제공된 GraphQL 인터페이스에서 다음 쿼리를 실행하세요.

profanity.contains_profanity() # True | # False

다음과 같은 응답을 받게 됩니다.

profanity.censor(word, '-')

How to use the Python better_profanity Filter API with GraphQL

결론

모든 사용자를 위한 안전한 소셜 네트워크를 구축하는 것은 소셜 애플리케이션을 구축할 때 고려해야 할 중요한 요소입니다. 이 튜토리얼에서는 욕설의 개념과 애플리케이션에서 욕설을 감지하고 필터링하는 방법을 소개했습니다. 우리는 Python 프레임워크인 Flask와 GraphQL을 사용하여 욕설 필터 API를 구축하는 방법을 설명했습니다.

위 내용은 GraphQL에서 Python better_profanity Filter API를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.