어제 오늘 내일

NodeJS LangChain OpenAI API 호출 예제 본문

IT/AI

NodeJS LangChain OpenAI API 호출 예제

hi.anna 2025. 3. 9. 06:27

 

NodeJS LangChain으로 OpenAI API 호출 예제

패키지 설치

npm install langchain @langchain/core @langchain/openai dotenv
  • langchain: LangChain의 기본 패키지로, 다양한 LLM(대형 언어 모델)과의 통합, 체인 구성, 에이전트 활용을 지원.
  • @langchain/core: LangChain의 핵심 기능을 포함하며, 메시지 처리(HumanMessage, AIMessage), 체인 구성 등의 기본 인터페이스 제공.
  • @langchain/openai: OpenAI 모델(ChatOpenAI, OpenAIEmbeddings)을 LangChain에서 쉽게 사용할 수 있도록 지원하는 패키지.
  • dotenv: .env 파일을 로드하여 환경 변수(API 키 등)를 관리하는 라이브러리.

 

.env 파일

루트 디렉토리에 .env 파일을 만들고 OpenAI API 키를 설정합니다.

OPENAI_API_KEY=OpenAI에서 받은 Key

 

index.js

import "dotenv/config";
import { ChatOpenAI } from "@langchain/openai";
import { HumanMessage } from "@langchain/core/messages";

async function main() {
  // OpenAI 모델 인스턴스 생성
  const chatModel = new ChatOpenAI({
    openAIApiKey: process.env.OPENAI_API_KEY, // .env에 저장된 API 키 사용
    modelName: "gpt-3.5-turbo", // 사용할 모델 지정
    temperature: 0.7, // 창의성 조절
  });

  // AI에게 보낼 메시지 정의
  const messages = [new HumanMessage("안녕! 오늘 기분 어때?")];

  // OpenAI API 호출
  const response = await chatModel.invoke(messages);

  console.log("AI 응답:", response.content);
}

main().catch(console.error);
  1. @langchain/openai의 ChatOpenAI을 사용하여 OpenAI API를 호출합니다.
  2. @langchain/core/messages에서 HumanMessage 객체를 생성하여 메시지를 전달합니다.
  3. invoke()를 사용하여 AI 응답을 받아 출력합니다.

 

실행

node index.js

 

결과

AI 응답: 안녕하세요! 제 기분은 좋아요, 괜찮으신가요? 혹시 무언가 이야기하고 싶은 것이 있나요? 함께 이야기 나누면 좋 을 것 같아요.

 

 

반응형
Comments