> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 GPT3.5 인터페이스를 호출하는 방법

Python에서 GPT3.5 인터페이스를 호출하는 방법

PHPz
풀어 주다: 2023-05-02 18:25:07
앞으로
4499명이 탐색했습니다.

    GPT3.5 인터페이스 호출 방법은 주로 openai 설치, api_requestor.py 교체, 인터페이스 호출 및 샘플 프로그램 설명의 네 부분으로 구성됩니다.

1 openai 설치

                    Python openai 라이브러리는 pip install openai를 통해 직접 설치할 수 있습니다. openai가 설치되었지만 이후 프롬프트에서 ChatCompletion을 찾을 수 없다는 메시지가 나타나면 "pip install -U openai" 명령을 사용하여 openai를 업그레이드하세요.

2 api_requestor.py 교체

Python openai가 설치되면 api_requestor.py 파일이 생성됩니다. 해당 파일은 아래와 같이 Python 환경 라이브러리 파일 디렉터리 "site-packagesopenaiapi_requestor.py"에 위치합니다. 파일을 교체하고 공용 계정 Lele Sensing School에서 api35에 응답하여 교체할 파일을 얻으세요.

Windows:
C:ProgramDataAnaconda3Libsite-packagesopenaiapi_requestor.py
또는
C:ProgramDataAnaconda3envsxxxlibsite-packagesopenaiapi_requestor.py
Linux:
/root/miniconda3/lib/pythonxx/site-packages/openaiapi_requestor. py
또는
/root/miniconda3 /envs/xxx/lib/pythonxx/site-packages/openaiapi_requestor.py
이 파일을 대체 파일을 얻으려면 공개 계정 Lele Perception School에서 api35로 답장하세요. 명3 인터페이스 호출 설명 口 인터페이스 호출 방법은 변경되지 않았으며 이는 Openai 자체 호출 방법과 일치합니다. 입력에는 주로 7개의 매개변수가 있습니다. ㅋㅋㅋ    함께 사용                 over ''s had 's out's ‐ ‐‐‐‐‐ (1) 모델: 모델 이름, gpt-3.5-turbo 또는 gpt-3.5-turbo-0301

​ ​ ​ ​(2) 메시지: 완료해야 할 질문이나 내용이 아래에 강조 표시됩니다.

(3) 온도: 결과의 무작위성을 제어합니다. 0.0은 결과가 고정됨을 의미합니다. 무작위성이 높으면 0.9로 설정할 수 있습니다.

(4) max_tokens: 반환되는 최대 단어 수(질문 및 답변 포함) 일반적으로 한자는 토큰 2개를 차지합니다. 100으로 설정되어 있다고 가정합니다. 프롬프트 질문에 40개의 한자가 있는 경우 반환된 결과에는 최대 10개의 한자가 포함됩니다. ChatGPT API에서 허용하는 최대 토큰 수는 4096입니다. 즉, max_tokens의 최대 설정은 4096에서 질문의 토큰 수를 뺀 값입니다.

(5) top_p: 1로 설정합니다.

(6) Frequency_penalty: 0으로 설정합니다.

(7) Presence_penalty: 0으로 설정합니다.

(8) 스트림: 연속 출력 또는 전체 출력을 제어합니다.

위의 입력 매개변수는 스트림, 즉 출력에 제어 흐름을 사용할지 여부를 추가한다는 점에 유의해야 합니다.

stream 값이 False이면 모든 텍스트 결과가 완전히 반환되며 response.choices[0].delta['content']를 통해 읽을 수 있습니다. 단, 워드 수가 많을수록 반환 대기 시간이 길어집니다. 제어 흐름을 읽을 때 시간은 4워드/초를 참조할 수 있습니다. Steam 값이 True인 경우 반환되는 결과는 Python 생성기이며 반복을 통해 결과를 얻어야 합니다. 평균은 초당 약 4워드(33초에 134워드, 39초에 157워드)입니다. 읽기 프로그램은 다음과 같습니다.

4 message

메시지 필드는 아래와 같이 역할과 내용의 두 부분으로 구성됩니다.

  model="gpt-3.5-turbo",
  messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who won the world series in 2020?"},
        {"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
        {"role": "user", "content": "Where was it played?"}
    ]
로그인 후 복사

gpt-3.5-turbo 모델에서 역할에는 시스템이 포함되며, 세 가지 유형이 있습니다. 어시스턴트와 사용자. 시스템 역할은 ChatGPT에 질문에 구체적으로 답변할 역할을 알려주는 것과 같습니다. 콘텐츠에 특정 역할과 질문 내용을 지정해야 합니다. gpt-3.5-turbo-0301의 가장 큰 차이점은 문제의 내용에 더 많은 관심을 기울이고 특정 역할 부분에 특별한 관심을 기울이지 않는다는 것입니다. gpt-3.5-turbo-0301 모델은 6월 1일까지 유효하며, gpt-3.5-turbo는 계속 업데이트될 예정입니다. +         보조 보조자와 사용자 사용자는 역할을 지정하는 것과 동일하며, 해당 내용을 해당 문제에 직접 작성할 수 있습니다.

5 샘플 프로그램

                                                      ''의''를 사용하여             '의'를 통해 ‐ ‐ ‐ ‐ ‐ (1) 스트림 = False to

import openai
 
def openai_reply(content, apikey):
    openai.api_key = apikey
    response = openai.ChatCompletion.create(
    model="gpt-3.5-turbo-0301",#gpt-3.5-turbo-0301
    messages=[
    {"role": "user", "content": content}
    ],
    temperature=0.5,
    max_tokens=1000,
    top_p=1,
    frequency_penalty=0,
    presence_penalty=0,
    )
    # print(response)
    return response.choices[0].message.content
 
 
if __name__ == '__main__':
    content = '你是谁?'
    ans = openai_reply(content, '你的APIKEY')
    print(ans)
로그인 후 복사

​ ​ ‐ ‐ ‐ ‐ ‐ (2) 스트림 = 참

import time
import openai
 
openai.api_key = "你的APIKEY"
response = openai.ChatCompletion.create(
  model="gpt-3.5-turbo",
  messages=[
    {"role": "user", "content": 'how are you'}
    ],
  temperature=0,
  max_tokens=1000,
  stream=True,
  top_p=1,
  frequency_penalty=0,
  presence_penalty=0,
  user='RdFast智能创作机器人小程序'
)
 
print(response)
print('response["choices"][0]["text"]结果如下所示:')
ans = ''
for r in response:
    if 'content' in r.choices[0].delta:
      ans += r.choices[0].delta['content']
      print(ans)
 
print(ans)
로그인 후 복사

3개 API 호출 효과

위 내용은 Python에서 GPT3.5 인터페이스를 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿