OpenAI API 호출: chat.completions
OpenAI chat.completions 엔드포인트로 메시지를 보내고, temperature와 max_tokens를 설정한 뒤 응답을 구문 분석해보세요.
OpenAI API 호출: chat.completions은(는) CoddyKit의 무료 AI Agents 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 AI Agents 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. AI Agents 강의에는 총 4개의 강의가 포함되어 있습니다.
왜 chat.completions인가
OpenAI에는 두 가지 API가 있습니다.
- chat.completions — 표준적이며 폭넓게 지원되는 엔드포인트
- Responses API / Assistants — 관리형 에이전트(더 고급 기능)
이 과정에서는 에이전트의 95%에서 핵심적으로 사용되는 chat.completions를 다룹니다.
SDK 설치
패키지 하나, 한 줄이면 됩니다.
# pip install openai
from openai import OpenAI
client = OpenAI() # reads OPENAI_API_KEY from env첫 호출
가장 기본적인 완성 요청은 다음과 같습니다.
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=[
{'role': 'system', 'content': 'You are concise.'},
{'role': 'user', 'content': 'Capital of France?'},
],
)
print(response.choices[0].message.content)
# 'Paris'응답 객체의 구조
응답에는 텍스트 외에도 여러 내용이 있습니다. 유용한 필드는 다음과 같습니다.
response.choices[0].message.content # the text
response.choices[0].finish_reason # 'stop' / 'length' / 'tool_calls'
response.usage.prompt_tokens # input tokens
response.usage.completion_tokens # output tokens
response.usage.total_tokens # sum
response.id # 'chatcmpl-...' for tracing주요 매개변수
model— 사용할 모델temperature— 0.0은 결정적 출력, 1.0은 창의적 출력max_tokens— 출력 길이의 상한top_p— temperature의 대안seed— 재현 가능한 출력(주의 사항 있음)
작업에 맞는 temperature 선택하기
- 0.0 — 추출, 분류, 코드 생성
- 0.2~0.5 — 대부분의 에이전트 의사 결정
- 0.7~1.0 — 창작, 브레인스토밍
중지 시퀀스
특정 표식이 나오면 출력을 중단합니다.
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=messages,
stop=['\n\n', 'END'],
)
# Stops as soon as a blank line or 'END' appears.여러 선택지
한 번의 호출로 후보를 N개 생성합니다.
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=messages,
n=3, # three samples
)
for choice in response.choices:
print(choice.message.content)처리해야 할 오류 유형
RateLimitError— 429 오류, 대기 시간을 늘려 재시도APIConnectionError— 네트워크 문제APITimeoutError— 응답 지연AuthenticationError— 잘못된 API 키BadRequestError— 스키마 문제
비동기 호출
처리량이 높은 에이전트에는 비동기 클라이언트를 사용하세요.
from openai import AsyncOpenAI
import asyncio
client = AsyncOpenAI()
async def ask(q):
r = await client.chat.completions.create(
model='gpt-4o-mini',
messages=[{'role': 'user', 'content': q}],
)
return r.choices[0].message.content
results = asyncio.run(asyncio.gather(*[ask(q) for q in questions]))시간 제한 및 재시도 기본 제공
SDK는 기본적으로 일부 재시도를 수행합니다. 다음과 같이 재정의할 수 있습니다.
client = OpenAI(
timeout=30.0,
max_retries=3,
)종료 이유
finish_reason == "length"는 무엇을 의미할까요?
복습
이제 Python에서 OpenAI를 호출할 수 있습니다. 다음으로는 Anthropic API를 다룹니다. Anthropic API에는 작지만 중요한 차이점이 있습니다.
자주 묻는 질문
“OpenAI API 호출: chat.completions” 강의는 무료인가요?
네 — “OpenAI API 호출: chat.completions” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 AI Agents 강의 전체를 잠금 해제할 수 있습니다. AI Agents 강의에는 총 4개의 강의가 포함되어 있습니다.
“OpenAI API 호출: chat.completions”에서 뭘 배우나요?
OpenAI chat.completions 엔드포인트로 메시지를 보내고, temperature와 max_tokens를 설정한 뒤 응답을 구문 분석해보세요. 브라우저에서 직접 실행하는 실습 코드로 AI Agents을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
AI Agents을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 AI Agents은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“OpenAI API 호출: chat.completions” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 AI Agents 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 AI Agents 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- OpenAI API 호출: chat.completions
- Anthropic API 호출: messages
- 응답 스트리밍(SSE)
- 비용 이해하기: 토큰 계산 및 예산