2025. 4. 29. 19:01ㆍBackend Development/Node.js
ChatGPT를 웹 페이지나 앱에서 질문하고 답변을 받는 건 많이들 이용하고 계실겁니다.
하지만 그 훌륭한 도구가 우리의 웹 애플리케이션이나 우리의 웹 사이트에 장착된다면 큰 효과는 더 뛰어나지 않을까요?
ChatGPT API를 Node.js(Javascript 동일)에서 호출하는 예시와 방법 그리고 간단한 코드 예시도 함께 알아보겠습니다.
1. 사전 준비
코드를 작성하기 전에 우선 OpenAI API Key를 발급 받아야합니다.
여기 페이지 에서 받으실 수 있습니다.
Tip: 해당 Key는 발급 당시에만 원문이 확인 가능하니, 메모장이나 어딘가에 해당 키값을 저장해두시는 것을 추천 드립니다.
그리고 API 요금은 ChatGPT 구독료와 별개입니다. API 호출 건당 비용이 발생하기에 그 비용을 미리 충전하셔야합니다.
여기 페이지 에서 요금을 충전할 수 있습니다.
2. 코드 작업
우선 두 가지 방법이 있습니다.
openai 라이브러리를 이용하기와 Axios 와 같은 HTTP 라이브러리를 통해서 호출하기가 있습니다.
어떤 방법이든 과정 자체는 비슷하지만 저는 편의를 위해 openai 라이브러리를 이용한 방법으로 진행하겠습니다.
2-1. 패키지 받기
npm install openai
2-2. 코드 작성
// index.js
const { OpenAI } = require('openai');
// OpenAI 인스턴스 생성
const openai = new OpenAI({
apiKey: 'sk-xxxxx', // ← 여기에 본인의 API 키 입력
});
// 비동기 함수로 ChatGPT 호출
async function chatWithGPT() {
try {
const response = await openai.chat.completions.create({
model: 'gpt-4',
messages: [
{ role: 'system', content: 'You are a helpful assistant.' },
{ role: 'user', content: 'Javscript 에서 배열을 선언하는 방법을 알려줘.' },
],
temperature: 0.7,
});
console.log('ChatGPT 응답:', response.choices[0].message.content);
} catch (error) {
console.error('오류 발생:', error);
}
}
chatWithGPT();
2-3. 코드 실행
node index.js
2-4. 실행 결과 확인
코드 전체 보기
https://github.com/imwh0im/openai-api-nodejs
GitHub - imwh0im/openai-api-nodejs: Node.js에서 ChatGPT API 호출
Node.js에서 ChatGPT API 호출 . Contribute to imwh0im/openai-api-nodejs development by creating an account on GitHub.
github.com
3. 주요 포인트 설명
API를 호출할 때, 사용되었던 각 파라미터에 대한 정보는 아래와 같습니다.
항목 | 설명 |
model | 사용할 모델 (gpt-4, gpt-3.5-turbo 등) |
messages | 대화 흐름을 구성하는 배열. system, user, assistant 역할이 있음 |
temperature | 창의성 설정. 0은 매우 보수적, 1에 가까울수록 창의적 |
response.choices[0].message.content | ChatGPT가 생성한 실제 응답 메시지 |
Tip: 해당 모듈에 대해 자세하게 궁금하시다면 여기 를 참고할 수 있습니다.
마무리
Node.js에서 ChatGPT를 사용하는 기본적인 방법에 대해 알아보았습니다.
API를 이용하면 비용이 별도로 발생한다는 단점은 있지만, 확장성이 좋기 때문에 우리의 프로젝트에서도 ChatGPT를 사용할 수 있다는 것은 엄청난 장점입니다.
비슷한 다른 글
2025.04.27 - [AI] - Edge AI, 클라우드 AI의 대안?
Edge AI, 클라우드 AI의 대안?
현재 대부분의 사람들은 AI를 직/간접적으로 사용하며 살아갑니다. 그리고 공통적으로 느린 속도에 대해 불평이 있기도 합니다.물론 연산 과정이 오래걸리는 문제 또한 있지만, 네트워크로 연산
imwh0im.tistory.com
'Backend Development > Node.js' 카테고리의 다른 글
map() vs forEach() 언제 사용해야할까? (0) | 2025.05.06 |
---|---|
ChatGPT와 Node.js로 네이버 뉴스 자동 요약 시스템 만들기 (2) | 2025.05.01 |