일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 평창
- 연설
- Public Speaking
- 제약
- 풀러스
- 2018계획
- 카이제곱분포
- publicspeaking
- F분포
- 영화
- 토스트마스터
- 취업
- PGTM
- 데분
- 구글#빅쿼리#데이터분석
- 데이터분석
- 임상통계
- 엘뱌키안
- 공유경제
- SQLD
- 영어연설
- 대중연설
- 분석
- 인과추론
- CC#5
- 데이터
- 정형데이터
- CC#3
- 사이허브
- Toastmaster
- Today
- Total
지지플랏의 DataScience
[글또] LLM 관련 모듈 동향 살펴보기- OPEN AI, Langchain , Pandas AI 본문
예상독자
- LLM 서비스 활용방법을 알아가려는 사람
- Langchain, Pandas AI를 활용하려는 사람
1. 대 LLM 시대
LLM이란? Large Language Model의 약자로 거대 언어모델입니다.ChatGPT 서비스가 등장한 22년 12월보다 훨씬 전에 지속적인 언어모델의 발전이 있었습니다.
최근에는 ChatGPT뿐 아니라 다양한 서비스가 있습니다.
- Chat GPT: OPEN AI가 만든 대 LLM 시대를 만든 서비스. 다양한 API를 제공하는 것이 특징
- Claude: Anthropic에서 만든 LLM으로 최근 각광받음
GPT-4보다 더 좋은 모델인 Claude 3.0이 공개되었습니다. Claude 3.0은 Opus, Sonnet, Haiku라는 3가지 모델로 이루어져있으며 각 모델은 성능뿐만 아니라 자체적인 윤리성도 검증했다고 합니다
- Gemma: 구글이 공개한 오픈소스 경량 대규모 언어모델(SLLM). 2B/7B 모델이 있음.Keras모듈에 탑재됨.
- 구글이 공개한 오픈 모델이라는 것에 의의가 있음
- Gemini: 구글 딥마인드에서 만든 언어모델, 최근 발매된 갤럭시 S24에 경량모델이 들어갔다고 알려짐
- https://keras.io/api/keras_nlp/
2. Chat gpt API 활용 방법
우리가 사용하는 Chat GPT는 대화형 인터페이스를 이용한 방법입니다. 이는 진입장벽을 매우 낮춰 빠른 유저 확보에 성공하였습니다. 이외에도 OPEN AI 자체에서 제공하는 API 서비스들이 있습니다. 다양한 기업들이 이미 OPEN AI가 공개한 API를 이용해서 서비스를 하고 있습니다.
일반 유저 역시 이 API를 이용해서 직접 서비스를 구현할 수 도 있습니다. Python으로 API를 이용하는 것은 잘 나와있습니다. (Quick start Tutorial)
다음은 OPEN AI가 제공하는 API 콜 코드입니다.
!pip install openai
#Colab에 KEY 설정
from google.coalb import userdata
from openai import OpenAI
OPENAI_API_KEY = userdata.get('OPENAI_KEY')
client = OpenAI(api_key= OPENAI_API_KEY)
completion = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "너는 데이터 분석가야"},
{"role": "user", "content": "데이터분석 자동화 기술에 대해서 알려줘"}
]
)
completion.choices[0].message
'물론입니다! 데이터 분석 자동화 기술은 데이터 과학 및 분석 작업을 자동화하여 효율성을 향상시키고 인간의 개입을 최소화하는 기술을 말합니다. 데이터 분석 자동화 기술은 다음과 같은 기능을 제공할 수 있습니다 데이터 수집 및 전처리 자동화: 데이터를 수집하고 전처리하는 작업을 자동화하여 데이터 분석가가 직접 수작업으로 수행할 필요가 없도록 도와줍니다.
(생략)
이러한 데이터 분석 자동화 기술을 활용하면 데이터 분석 작업을 더욱 효율적으로 수행할 수 있고, 신속하고 정확한 결정을 내릴 수 있습니다.
Chatgpt API를 이용 한다는건 별로 대단한 일은 아닙니다. API 개념만 이해하면 누구든 사용할 수 있기 때문이죠. 중요한 것은 GPT 자체보다는 DALL-E와 같은 Text to Image, Wisper 라는 audio to text 등 다양한 모델을 적용할 수 있다는 점이고 이를 활용한 비즈니스 모델을 상상하고 활용할 수 있다는 점입니다.
3. Langchain 모듈
API를 자체 개발하는 것은 개발자들이 주로 하겠지만, 때로 나만의 모델이나 프로젝트에 사용할 수도 있는 장점이 있습니다. 또한 OPEN AI는 LLM의 선두 기업이기 때문에 비즈니스 전략에 대해서 공부해볼 수 있습니다. 요즘은 단일 API를 넘어서 LLM 모듈을 편하게 이어주는 Langchain 이라는 SDK(Software Development kit) 이 등장했습니다.
Langchain은 LLM과 어플리케이션간의 통합을 간소화하기 위한 SDK로 개발자들은 코드를 바꾸지 않고 쉽게 모델을 교체할 수 있는 장점이 있습니다. Langchian의 기능은 총 4단계로 요약할 수 있습니다.
- 데이터 소스: LLM 컨텍스트를 구축하기 위해서 다양한 데이터 소스에서 액세스하고 검색할 수 있도록 한다.
- 단어 임베딩: 텍스트를 벡터로 변환하여 모델에 넣는다.
- 벡터 데이터베이스: 임베딩된 텍스트는 유사성 검색을 위해서 벡터 데이터베이스에 저장된다.
- 언어모델: OPEN AI,허깅페이스에서 제공되는 LLM 을 지원하며 API 엔드포인트 목록을 빠르게 업데이트 한다.
https://www.samsungsds.com/kr/insights/what-is-langchain.html
4. Pandas AI 활용 방법
API가 나온뒤로 Pandas AI라는 분석 자동화 모듈이 개발되고 있습니다. 다음은 공식 홈페이지에서 제공하는 코드 스니펫 입니다.
https://docs.pandas-ai.com/en/latest/
import os
import pandasai
import pandasai.pandas as pd
from pandasai import Agent
from google.colab import userdata
from pandasai.llm import OpenAI
from pandasai import SmartDataframe
print(pandasai.__version__)
df = pd.DataFrame({
"country": ["United States","United Kingdom","France","Germany","Italy","Spain","Canada","Australia","Japan","China"],
"gdp": [19294482071552,2891615567872,2411255037952,3435817336832,1745433788416,1181205135360,1607402389504,1490967855104,4380756541440,14631844184064],
"happiness_index": [6.94, 7.16, 6.66, 7.07, 6.38, 6.4, 7.23, 7.22, 5.87, 5.12]})
display(df)
OPENAI_API_KEY = userdata.get('OPENAI_KEY')
llm = OpenAI(api_token=OPENAI_API_KEY)
sdf = SmartDataframe(df, config={"llm": llm})
sdf.chat("Plot a chart of the gdp by country")
5. 마무리
Pandas AI도 2.0 버전으로 넘어가고 다양한 LLM이 나오는 걸 보니 참으로 발전속도가 빠르네요! Langchain 공부를 차일피일 미루고 있었는데 강의도 만들겸 한번 날잡고 공부해봐야겠습니다. LLM 모델이 빠르게 변하는 만큼 Langchain, Pandas AI등과 같은 모듈들도 함께 성장해가니 활용하기 참 좋은 시대인 것 같습니다.
6. 출처
7. 글또 9기 글 모음
- LLM 관련 모듈 동향 살펴보기 - OPEN AI, Langchain, Pandas AI
- 당신은 절대 글을 잘 쓸 수 없다.
- 기호주의와 연결주의로 알아보는 AI의 발전
- 알고리즘은 데이터 분석가에게 필요할까?
- Analytics Engineer 직무 뜯어보기
- 데이터 분석을 위한 준비하고 배울 것들
- 시계열 Prophet 모형과 하이퍼파라미터 뜯어보기 with 주가데이터
- Google bigquery에 데이터를 적재하고 태블로로 데이터 가져오기
'Data Science' 카테고리의 다른 글
생존분석과 lifeline 패키지 활용 - LogRank, 카플란-마이어, 콕스비례위험모형 (2) | 2024.06.11 |
---|---|
DataScience 책 추천(교양, 통계, 데이터과학, 머신러닝, 프로그래밍 등 ) (0) | 2024.06.10 |
[글또] Google bigquery에 데이터를 적재하고 태블로로 데이터 가져오기 (1) | 2024.03.08 |
[글또]시계열 Prophet 모형과 하이퍼파라미터 뜯어보기 with 주가데이터 (1) | 2024.02.27 |
[글또] 데이터 분석을 위한 준비하고 배울 것들 (0) | 2024.02.18 |