Chaplus 잡담 API 채팅창에 잡담 기능 추가

독자 대상

  • 채팅방 개발에 관심이 있는 사람
  • 기존 대화방에'잡담'기능을 추가하려는 사람
  • 개시하다


    안녕하세요.
    챗봇 개발, 다음 고민 있나요?
  • 대응하는 어휘가 적어서 사용자의 질문에 대답할 수 없다
    ex "못해, 난 몰라"이렇게 대답하는 경우가 많아 사용자 만족도를 떨어뜨린다
  • 인사 등 상투적인 표현에도 대응하고 싶지만 대사 입력이 번거롭다
  • 내가 채팅 로봇을 개발하고 싶다면 상술한 과제를 많이 겪게 될 것이다.
    그러면 이번에는 채팅에'채팅 능력'을 가볍게 추가해 상술한 문제를 해결하는 방법을 소개해 드리겠습니다.

    Chaplus 잡담 API란 무엇입니까?



    차플러스(Chat+Plus의 신조어) API는 채팅 위주의'대화형'서비스에서 채팅 기능과 Q&A 자동 응답 기능을 쉽게 구현할 수 있는 웹 API다.2020년 3월 개발 &
    Chaplus API를 활용하면 폭넓은 화제의 잡담을 할 수 있고, 대사를 추가하고 캐릭터를 세밀하게 사용자 정의할 수 있다.

    위에서 설명한 대로 Chaplus API는 사용자가 메시지를 보내면 Score와 함께 "이런 것 같다"는 답변을 보냅니다.
    마음에 드는 사람은 이쪽 시위 행진에 말을 걸어주세요!
    https://www.chaplus.jp/demo

    사용법


    등록!


    우선 API 사용등록부터 하시죠.
    https://www.chaplus.jp
    위 페이지 아래의 로그인 형식에서 메일 주소와 용도를 입력합니다.
    등록 후 입력한 메일 주소에는 "API KEY"라고 적힌 메일이 전송됩니다.
    ※ 스팸으로 분류될 수 있으니 받은 편지함에서 우편물이 발견되지 않으면 확인하세요

    응답 얻기


    API KEY를 얻었으면 빨리 대답을 받아라.
    API의 규격은 여기에 기재되어 있기 때문에 상세한 설명을 생략합니다.
    https://k-masashi.github.io/chaplus-api-doc/
    응답을 받는 단점은 여기에 있습니다.
    https://www.chaplus.jp/v1/chat?apikey=<APIKEY>
    
    API KEY 섹션을 획득한 API KEY로 적절하게 변경하십시오.
    규격에 따라 요구를 발송하다.필요한 매개 변수를 json 형식으로 기술할 것을 요청합니다.
    json의 예
    {
        "utterance": "調子はどう?",
        "username": "太郎",
        "agentState":{
            "agentName": "エージェント",
            "tone": "kansai",
            "age": "14歳"
        }
    }
    
    utterance에서 사용자의 말을usename에 입력합니다.
    username을 지정하면 때때로 API 응답에 사용자 이름이 포함될 수 있습니다.
    agentState에 답장을 수여할 수 있는 에이전트(챗봇 자체)의 정보.
    agentName: 응답 에이전트의 이름
    tone: 응답하는 말투(관서강 등)
    에이지
    그럼 컬로 반응을 확인해 봅시다.
    curl -v -H "Content-Type: application/json" -X POST -d '{"utterance":"仕事終わりのビールは最高","username":"太郎","agentState":{"agentName":"エージェント","tone":"kansai", "age":"20歳"}}' https://www.chaplus.jp/v1/chat\?apikey\=<APIKEY>
    
    응답 예
    {
        "utterance": "仕事終わりのビールは最高",
        "bestResponse": {
            "utterance": "適量でね",
            "score": 1,
            "url": ""
        },
        "responses": [
            {
                "utterance": "適量でね",
                "score": 1,
                "url": ""
            },
            {
                "utterance": "今日も1日おつかれさま",
                "score": 1,
                "url": ""
            },
            {
                "utterance": "今日1日太郎はんががんばった証拠やね。",
                "score": 0.7083,
                "url": ""
            },
            {
                "utterance": "カンパーイ!",
                "score": 0.7083,
                "url": ""
            },
            {
                "utterance": "牛乳派です",
                "score": 0.3333,
                "url": ""
            },
            {
                "utterance": "偉い",
                "score": 0.3333,
                "url": ""
            }
        ],
        "tokenized": [
            "名詞,サ変接続,*,*,*,*,仕事,シゴト,シゴト",
            "動詞,自立,*,*,五段・ラ行,連用形,終わる,オワリ,オワリ",
            "助詞,連体化,*,*,*,*,の,ノ,ノ",
            "名詞,一般,*,*,*,*,ビール,ビール,ビール",
            "助詞,係助詞,*,*,*,*,は,ハ,ワ",
            "名詞,一般,*,*,*,*,最高,サイコウ,サイコー"
        ],
        "options": [
            "疲れた",
            "肩凝った",
            "会社の人間関係は家まで持ち込みたくないですね",
            "今日は大変な1日だったなー",
            "明日はいい朝を迎えたいね",
            "ヒーリング音楽流すと安らぎますよね"
        ]
    }
    
    각 응답문에 부여된 스코어 기준은 다음과 같다.
    Score
    1.0 : かなり自然
    0.8以上 : 自然
    0.6以上 : 自然とは言えないが、的を得ている場合が多い
    0.4以上 : 自然ではないが関連性がある程度認められている
    0.4未満 : 自然でない (とんちんかんな発話な可能性)
    
    옵션스는 다음 사용자가 말을 걸 때 참고할 수 있는'건의 발언'을 되돌려줍니다.

    이렇게 많은 일을 통해 보내는 말에 대한 응답문을 얻을 수 있다!
    BestResponse에는 최고 스코어의 응답문이 포함되어 있습니다.
    Best Response를 적용한 응답문은 기본적으로 OK지만, 같은 답변이 아닌 어느 정도 변화를 주고 싶다면 일정한 스코어에서 무작위로 선택할 수도 있다.

    맞춤 대사를 만들어 보도록 하겠습니다.


    Chaplus API는 별도의 설정 없이 대화에 대한 사용자 응답을 제공합니다.
    그러나 API에 완전히 맡기지 않는 경우도 있고, 때로는 상대방이 지정한 답변을 원하기도 한다.
    이 경우 맞춤 제작이 가능합니다.
    "utterancePairs":[
        {
            "utterance":"おはよう!",
            "response":"今日も1日頑張って!",
    	"options":"お布団から出られない,仕事行きたくない"
        },
        {
            "utterance":"調子はどう?",
            "response":"すごくいいよ!",
    	"options":"元気?,"
        }
    ]
    
    요청 매개 변수의addition에 상기 json을 추가하면 대사를 사용자 정의할 수 있습니다.
    이 같은 메시지를 주고'좋은 아침'이라고 말하면 "오늘 하루도 힘내라!"이렇게 대답하다.
    또한options가 추가되어 있기 때문에 답장할 때 options가 지정한 건의도 함께 반환합니다.
    addition에 추가된 예
    {
        "utterance": "調子はどう?",
        "username": "太郎",
        "agentState":{
            "agentName": "エージェント",
            "tone": "kansai",
            "age": "14歳"
        }
        "addition" {
            "utterancePairs" [
                {
                    "utterance": "肩凝った",
                    "response":"適度に運動しないとね",
                    "options":"肩まわしてくる,ジョギングしてくる,マッサージして",
                },
            ]
        }
    }
    

    NG 단어 설정


    API의 응답에는 채팅 내용의 응답으로 부적절한 문구가 포함될 수 있습니다.
    이때 신경 쓰이는 문구를 NG 단어에 로그인하십시오.
    NG 자를 지정하는 방법
            "ngwords" [
                "ため息",
                "やめてしまえ"
            ]
    
    위에서 말한 바와 같이 NG자는 지정된 문장을 배열하기만 하면 된다.
    addition에 추가된 예
    {
        "utterance": "調子はどう?",
        "username": "太郎",
        "agentState":{
            "agentName": "エージェント",
            "tone": "kansai",
            "age": "14歳"
        }
        "addition" {
            "ngwords" [
                "ため息",
                "やめてしまえ"
            ]
        }
    }
    

    총결산


    어때요?Chaplus API의 사용 방법은 다음과 같습니다.
    이외에도 다양한 설정을 할 수 있으니 시도하는 사람은 반드시 이쪽의 Doc를 참조해야 한다.
    https://k-masashi.github.io/chaplus-api-doc/
    위에서 말한 바와 같이 간단하게 대화에 대한 응답문을 얻을 수 있기 때문에 채팅BOT를 제작할 때 꼭 시도해 보세요!웹 API로 제공되므로 다양한 환경에서 시도할 수 있습니다.
    API에 대한 문의는 이쪽으로 오세요!
    읽어주셔서 감사합니다.

    좋은 웹페이지 즐겨찾기