작은 메모장
0-1. 사용할 모듈 본문
LangChain
LLM(Large Language Model)을 활용한 어플리케이션을 만들기 위한 Framework
쉽게 말해, LLM 언어 모듈과 어플리케이션 사이의 통합을 쉽게 만들어주는 프레임워크
이걸 왜 써야하는가?
LangChain을 사용하지 않고 Open AI API의 GPT 4만을 사용한 것과 비교하여,
LangChain에는 특화된 영역만을 담당하는 모듈이 있으나, GPT는 이 같은 특화된 모듈이 없기에 직접 구현해야함.
예를 들어, 문서화에 특화된 모듈과, Prompt에 특화된 모듈, Large language에 특화된 모듈, 채팅에 특화된 모듈등이 각각 나눠있는 형태.
또한, LangChain은 어플리케이션의 Component, 즉 언어 모듈 구성을 바꾸기가 상당히 쉬운 편.
가령 GPT 4를 활용하여 어플리케이션을 만들 때, 기존에 쓰던 언어모델보다 성능이 뛰어난 언어 모델이 나왔다고 하면,
단 한줄의 코드 수정만으로 모델 변경이 가능함.
다시 말해, 특정 회사의 AI 모델을 어렵게 연결하여 최적화 과정을 거치는 것보다, 중간에 LangChain이 모델관리를 맡기는 편이 유지보수성에 매우 뛰어나다는 이유.
거기에 여러 Github 프로젝트들과 다양한 서브 모듈들의 개발로 인해 접근성과 난이도가 점점 쉬워지고 있는 중.
Streamlit
파이썬 전용 웹 개발 패키지로, 머리아픈 html, css 개발을 자동으로 해주는 패키지다.
이걸 왜 써야하는가?
Streamlit의 가장 큰 장점은 모든 명령이 파이썬으로만 이루어진다는 것.
게다가 정보에 맞는 디자인까지 자동으로 해주기때문에 정보만 넣으면 되는 편리함이 있음.
또한 개발하기 난해한 데이터 모델부터 그래프 흐름까지 지원하고, 파일 입출력 또한 지원함.
Pinecone
클라우드 기반 벡터 데이터베이스 서비스로, 원하는 데이터를 벡터로 변환하고 이를 데이터베이스에 저장하는 DB 서비스다.
데이터만 넣으면 벡터로 변환하고 그에 맞는 데이터 구조를 생성해 빠른 쿼리를 가능하게 하는 유용한 서비스.
게다가 무료다 (!)
Hugging face
인공신경망 알고리즘 중, 트랜스포머 신경망에 관련한 서비스를 제공하는 모듈
트랜스포머 신경망은 문장 전체를 병렬 구조로 번역 및 분석하는 방식으로, RNN의 한계를 극복했다고 평가받음.
이 Hugging face는 정말 수많은 트랜스포머 모델과 학습 스크립트를 제공하는 것.
Hugging face를 사용하면, 트랜스포머 모델 사용시 layer, model등을 선언하거나 매번 학습 스크립트를 구현하는 수고를 덜 수 있음.
물론 GPT가 짱짱이지만, 다른 모델을 써보기 위해서 사용할 것임.
FastAPI
파이썬을 기반으로 개발된 웹 프레임워크.
주로 API 개발에 초점을 맞추어 설계되었고, 높은 성능과 직관적인 문법을 제공하는 것이 큰 특징.
ChatGPT plugin을 위한 API 구축을 위해 사용할 예정
'Web Develop > Fullstack GPT' 카테고리의 다른 글
1-2. Message 초기 설정 (0) | 2023.12.24 |
---|---|
1-1. LangChain 만져보기 (0) | 2023.12.24 |
0-3. 기초 세팅 (0) | 2023.12.24 |
0-2.준비 과정 (0) | 2023.12.18 |