LLM(대형 언어 모델)은 텍스트를 생성하고, 언어를 번역하고, 다양한 창의적인 텍스트 형식을 작성하고, 질문에 비공식적으로 답변할 수 있는 인공 지능(AI)입니다. 이는 매우 강력하여 새로운 도구와 애플리케이션을 만드는 데에도 사용할 수 있습니다.
LLM(대형 언어 모델)은 대규모 텍스트 데이터 세트에 대해 훈련된 고급 인공 지능(AI) 시스템입니다. 이를 통해 단어와 구가 어떻게 서로 어울리는지 학습하여 이해하기 쉽고 올바른 문장을 생성할 수 있습니다.
LLM은 생성 AI 의 한 유형으로, 새로운 콘텐츠를 만들 수 있음을 의미합니다.
LLM은 일반적으로 변환기 라고 하는 신경망 유형을 사용하여 구축됩니다. Transformer는 자연어를 이해하고 생성하는 데 필수적인 단어 간의 장거리 종속성을 학습할 수 있습니다. 변환기 모델은 여러 레이어 로 구성되며 각 레이어는 서로 다른 작업을 수행합니다.
LLM의 예로는 OpenAI에서 만든 GPT-3이 있습니다. GPT-3는 많은 텍스트와 코드를 통해 배웠습니다. 글을 쓰고, 언어를 번역하고, 창의적인 콘텐츠를 만들고, 질문에 친절하게 답변할 수 있습니다.
`Seed text: "The cat sat on the mat." LLM prediction: "The cat sat on the mat and stared at the bird."`
창의적 글쓰기: LLM은 시, 단편 소설, 대본과 같은 창의적인 텍스트를 생성할 수 있습니다. 예를 들어, GPT-3이라는 LLM을 사용하여 독창적이고 창의적인 시를 생성할 수 있습니다.
1: Google Cloud Platform 계정을 만듭니다.
Google Cloud Platform 웹사이트( 를 방문하면 됩니다.
2: API 키를 받으세요. API를 사용하려면 API 키가 필요합니다. 대기자 명단을 통과하면 MakerSuite에서 한 번의 클릭으로 키를 생성할 수 있습니다. 이 링크를 통해
3: PaLM API 클라이언트 라이브러리를 설치합니다. PaLM API 클라이언트 라이브러리는 PaLM API와 상호 작용하는 데 사용할 수 있는 코드 세트입니다. 다음 명령을 실행하여 설치할 수 있습니다.
npm init -y npm install google-auth-library
npm install @google-ai/generativelanguage
4: 필수 모듈 가져오기
const { TextServiceClient } = require("@google-ai/generativelanguage").v1beta2; const { GoogleAuth } = require("google-auth-library");
이 단계에서 코드는 require
함수를 사용하여 필요한 모듈을 가져옵니다. @google-ai/generativelanguage
라이브러리에서 TextServiceClient
클래스를 가져오고 google-auth-library
에서 GoogleAuth
클래스를 가져옵니다.
5: 상수 설정
const MODEL_NAME = "models/text-bison-001"; const API_KEY = process.env.API_KEY;
여기서 코드는 사용하려는 텍스트 생성 모델의 이름을 지정하는 MODEL_NAME
과 환경 변수에서 API 키를 검색하는 API_KEY
두 가지 상수를 설정합니다.
6: TextServiceClient 인스턴스 생성
const client = new TextServiceClient({ authClient: new GoogleAuth().fromAPIKey(API_KEY), });
이 단계에서는 TextServiceClient
클래스의 인스턴스를 만듭니다. 환경 변수에서 얻은 API 키로 인스턴스화되는 GoogleAuth 클래스를 사용하여 인증으로 클라이언트를 초기화합니다.
7: 프롬프트 정의
const prompt = "Write a simple and short cover letter for a technical writer";
여기서 코드는 텍스트 생성을 위한 입력으로 사용될 초기 텍스트를 보유하는 prompt
라는 변수를 정의합니다.
8: 텍스트 생성
client .generateText({ model: MODEL_NAME, prompt: { text: prompt, }, }) .then((result) => { console.log(JSON.stringify(result)); });
이 단계에서 코드는 client
인스턴스를 사용하여 텍스트를 생성합니다. 클라이언트 인스턴스에서 generateText
메소드를 호출합니다. 모델 이름( MODEL_NAME
)과 프롬프트 텍스트( prompt
)가 포함된 객체를 속성으로 전달합니다.
generateText
메소드는 then
메소드를 사용하여 처리된 Promise를 반환합니다. 생성된 결과는 JSON 문자열로 변환된 후 블록 내부 콘솔에 기록됩니다.
node index.js
[{"candidates":[{"safetyRatings":[{"category":"HARM_CATEGORY_DEROGATORY","probability":"NEGLIGIBLE"},{"category":"HARM_CATEGORY_TOXICITY","probability":"NEGLIGIBLE"},{"category":"HARM_CATEGORY_VIOLENCE","probability":"NEGLIGIBLE"},{"category":"HARM_CATEGORY_SEXUAL","probability":"NEGLIGIBLE"},{"category":"HARM_CATEGORY_MEDICAL","probability":"NEGLIGIBLE"},{"category":"HARM_CATEGORY_DANGEROUS","probability":"NEGLIGIBLE"}],"output":"Dear [Hiring Manager name],\n\nI am writing to express my interest in the Technical Writer position at [Company name]. I have been working as a technical writer for the past five years, and I have a proven track record of success in developing and delivering clear, concise, and engaging technical documentation.\n\nIn my previous role at [Previous company name], I was responsible for writing a wide range of technical documentation, including user guides, API documentation, and training materials. I have a strong understanding of the technical writing process, and I am proficient in a variety of writing and editing tools.\n\nI am also an excellent communicator, and I am able to effectively translate complex technical information into language that is easy for both technical and non-technical audiences to understand. I am confident that I have the skills and experience that you are looking for in a Technical Writer.\n\nI am eager to learn more about the Technical Writer position at [Company name], and I am confident that I would be a valuable asset to your team. I am available for an interview at your earliest convenience.\n\nThank you for your time and consideration.\n\nSincerely,\n[Your name]","citationMetadata":{"citationSources":[{"startIndex":1068,"_startIndex":"startIndex","endIndex":1196,"_endIndex":"endIndex","uri":"//www.upwork.com/resources/cover-letter-tips","_uri":"uri","license":"","_license":"license"}]},"_citationMetadata":"citationMetadata"}],"filters":[],"safetyFeedback":[]},null,null]