>  기사  >  백엔드 개발  >  Python 코드 줄을 사용하여 ChatGPT를 WeChat 로봇에 연결합니다.

Python 코드 줄을 사용하여 ChatGPT를 WeChat 로봇에 연결합니다.

WBOY
WBOY앞으로
2023-05-09 23:28:071087검색

1. 구현 원리

아마 모든 지능형 챗봇은 다음과 같은 구현 아이디어를 갖고 있지 않을까요?

먼저 코드(언어 제한 없음)를 통해 채팅 콘텐츠를 얻은 다음 채팅 콘텐츠를 AI 배경으로 전송하고 마지막으로 획득한 AI 응답을 원래 경로를 통해 채팅 인터페이스로 전송합니다.

Python 코드 줄을 사용하여 ChatGPT를 WeChat 로봇에 연결합니다.

이 과정에서 어려운 점은 다음과 같습니다.

  • 채팅 콘텐츠를 얻는 방법

  • AI 응답을 호출하는 방법

  • 자동으로 올바르게 응답하는 방법.

개발 과정에서 마지막 항목: 모든 대화를 수정하는 방법이 가장 어렵다는 것을 알게 될 것입니다.

2. 코드 업로드

PyOfficeRobot 다운로드

pip install PyOfficeRobot

1줄의 코드를 사용하여 WeChat 로봇 + ChatGPT

import PyOfficeRobot
PyOfficeRobot.chat.chat_by_gpt(who='程序员', api_key='你的api_key')

3. 매개변수 설명

위에 나열된 매개변수는 2개뿐입니다:

  • who='programmer': 필수, 지능적으로 답장하고 싶은 사람

  • api_key='your api_key': 필수, 나만의 ChatGPT

사실 메소드 내부에는 일련의 매개변수가 있지만 우리 프로젝트는 주로 소규모 사용자라면 무료로 사용하실 경우 기본값을 입력해 두었으니, 전문 개발자라면 아래 안내를 참고하여 수정하시면 됩니다. (OpenAI 공식 홈페이지에서)

    completions = openai.Completion.create(
        engine=model_engine,
        prompt=prompt,
        max_tokens=max_tokens,  # 生成结果时的最大 tokens 数。平均一个汉字是 2 个 tokens,text-davinci-003 最多是 4000 个 tokens,也就是 2000 个汉字左右
        n=n,
        stop=stop,
        temperature=temperature,  # 控制结果的随机性,如果希望结果更有差异性 0.9,或者希望有固定结果可以尝试 0.0
        top_p=top_p,  # 一个可用于代替 temperature 的参数,对应机器学习中 nucleus sampling,如果设置 0.1 意味着只考虑构成前 10% 概率质量的 tokens
        frequency_penalty=frequency_penalty,  # 控制字符的重复度,取值为 -2.0 ~ 2.0 之间的数字
        presence_penalty=presence_penalty  # 控制主题的重复度,取值为 -2.0 ~ 2.0 之间的数字
    )

위 내용은 Python 코드 줄을 사용하여 ChatGPT를 WeChat 로봇에 연결합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제