일단 하고 보는 사람

나중보단 지금에 집중하되, 지금보단 나중에 완벽해지자💪🏻

LLM

[OpenAI] Complete 모델 API 호출하기

JanginTech 2025. 2. 5. 15:23

1. 호출

import json
import openai

response = openai.Completion.create(        # ChatCompletion이 아닌 Completion 사용
    engine="gpt-3.5-turbo-instruct",        # model이 아닌 engine을 사용
    prompt="오늘 너무 추워서 ",
    stop=".",
    max_tokens=50,
    temperature=0.5,
    n=2,
)

print(json.dumps(response, indent=2, ensure_ascii=False))

 

요청할 메시지를 messages에 담아 정의하는 Chat 모델과는 달리,

Complete 모델을 쓸 때는 prompt로 단일 메시지를 직접 지정한다. 이 부분이 핵심 부분이 되겠다.

 

Chat 모델 프롬프트의 전제는 대화와 요청이다.

대화 형식으로 채팅을 하도록 지시할 수 있다는 의미다.

 

반면 Complete 모델은 문장 완성, 문장의 끝부분을 생성하는 것이다.

따라서 프롬프트에 문장의 중간까지를 설정하는 것이 일반적이다.

 

그래서 stop 매개변수를 사용한다.

생성하는 문장이 특정 문자나 문자열, 또는 목록 중 하나에 도달하면 중지하도록 지정하는 것이다.

여기서는 마침표(.)에 도달하면 문장 생성이 끝난다.

 

max_tokens, n, temperature 등의 매개변수는 Chat 모델 API 호출 때와 같이 각각 응답 최대 토큰 수, 응답 개수, 문장의 다양성에 관한 설정이다.

 

 

응답 결과를 보자.

 

object 부분을 보면 chat.completion이 아닌 text_completion으로 되어있다.

이를 통해 Complete 모델의 API 호출임을 알 수 있다.

 

 

  Chat 모델 Complete 모델
API 호출 방식 openai.ChatCompletion openai.Completion
모델 매개변수 model engine
요청할 메시지 messages prompt로 단일 메시지 직접 지정
모델 프롬프트 대화와 요청 문장 끝부분을 생성