Chat GPT

[Chat GPT] Open AI (Ollama) + Node.js

allempty_sheep 2024. 8. 5. 16:25
반응형

 

비주얼 스튜디오 코드와 노드JS 를 설치 해 주자.

 

Visual Studio Code

https://code.visualstudio.com/

 

Visual Studio Code - Code Editing. Redefined

Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.  Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

code.visualstudio.com

 

Node Js

https://nodejs.org/en

 

Node.js — Run JavaScript Everywhere

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org


D 드라이브에 'chatGPTStudy' 라는 폴더를 만들어 주었다.

VS Code 를 실행하여 만든 폴더를 지정 해 준다.

 

터미널을 열어서 초기화를 진행 해 줄 것이다.

 

 

npm init

 

실행 시 다음과 같이 나올것이다.

 

패키지 네임 그대로 Enter 입력

버전 그대로 Enter 입력

Description 설명 입력해도 되고 안해도됨

entry point 최초로 실행되는 자바스크립트

test command, keywords  Enter 입력

author 은 작성자

license  Enter 입력

 

 

Is this Ok? 에서 Enter

 

모두 실행하면

package.json 파일이 하나 생성 될 것이다.

 

new file을 눌러서 파일을 하나 만들어 줄 것이다.

console.log("hi");

 

콘솔을 하나 적고 확인해보자.

터미널에 다음을 입력하면 콘솔 내용이 나올 것이다.

node test

 

 

라이브러리를 하나 설치 해 주자.

npm install openai --save

 

다운 후에 package.json 에서 dependencies 에 라이브러리버전이 다운 된 것을 볼 수 있다.

 

다운로드 된 모듈은 node_modules 안에 저장 되어있다.

해당 폴더는 git 등에 업로드 할 필요 없다.

package.json, package-lock.json 만 있으면 npm install 으로 모듈을 모두 설치 할 수 있다.

 

ollama 설치 후 인스톨을 해주자.

https://ollama.com/

 

Ollama

Get up and running with large language models.

ollama.com

 

명령 프롬프트를 열어서 아래를 실행하여 다운 받아 준다.

ollama pull llama3

 

잘못 받았을 시 아래처럼 삭제 할 수 이다.

ollama rm llama3

 

목록 조회는 다음과 같다.

ollama list

 

다 받았다면 아래와 같이 나올 것이다.

 

실행 시켜준다.

ollama run llama3

 

다운 받을 동안 js 를 하나 작성 해 주자. 

openai.js 파일을 하나 만들었다.

const OpenAI = require('openai');

const main = async () => {

    const openai = new OpenAI({
        baseURL: 'http://localhost:11434/v1',                       //
        apiKey: 'ollama'                                            // 아무거나 입력
    });

    const completion = await openai.chat.completions.create({
        model: 'llama3',
        messages: [{
            role: "user",
            content: "한국의 수도는 뭐야? 한국어로 대답해줘"                    // 질문
        }],
        stream: false,
    });

    console.log(completion.choices[0].message.content);
};

main();

 

실행 해 보면 아래와 같이 나올 것이다.



'Chat GPT' 카테고리의 다른 글

[Chat GPT] Node.js Backend 를 만들어보자  (0) 2024.08.06