AI를 여행하는 개발자를 위한 안내서 (LLM 개발 스킬트리)


AI(LLM) 기반 애플리케이션 개발을 하고자 하는 경우 참조하실 수 있도록 기술 스택별로 사용할 수 있는 툴/라이브러리/서비스/관련정보를 정리했습니다.

기술 스택의 구분이 모호할 수 있으며, 언급된 툴/라이브러리/서비스가 여러 스택에 해당될 수 있다는 점을 감안하시기 바랍니다.

프로그래밍 언어Python
– LangChain 및 다양한 툴이 지원하는 언어
https://www.python.org/

Jupyter Notebook
– Python 기반 대화형 개발 환경
– Google colab 을 이용한 온라인 개발/테스트가 매우 편리
https://colab.research.google.com/

Javascript
– 웹 배포가 가능한 장점
– python 다음으로 많은 프로젝트들이 지원하는 언어인듯
주요 LLM 모델GPT-4
– 제작사: OpenAI
– 멀티모달 능력, 높은 추론 능력, 광범위한 지식
https://openai.com/gpt-4

PaLM 2
– 제작사: Google
– 다국어 지원, 코드 생성 능력, 추론 능력 향상
https://ai.google/discover/palm2/

Gemini
– 제작사: Google
– 멀티모달 AI, Ultra/Pro/Nano 버전 제공, 고성능
https://deepmind.google/technologies/gemini/

Claude
– 제작사: Anthropic
– 긴 컨텍스트 처리, 윤리적 고려사항 반영
https://www.anthropic.com/index/claude-2

LLaMA
– 제작사: Meta (Facebook)
– 오픈소스, 다양한 크기(7B, 13B, 70B)
https://ai.meta.com/llama/

BLOOM
– 제작사: BigScience
– 다국어 지원, 오픈소스, 176B 파라미터
https://bigscience.huggingface.co/blog/bloom

Gopher
– 제작사: DeepMind
– 280B 파라미터, 다양한 작업에서 높은 성능
홈페이지

Jurassic-1 Jumbo
– 제작사: AI21 Labs
– 178B 파라미터, 다국어 지원
https://www.ai21.com/blog/announcing-ai21-studio-and-jurassic-1

Megatron-Turing NLG
– 제작사: NVIDIA & Microsoft
– 특징: 530B 파라미터, 대규모 학습 데이터
https://developer.nvidia.com/megatron-turing-nlg-530b

GPT-NeoX-20B
– 제작사: EleutherAI
– 오픈소스, 20B 파라미터
https://github.com/EleutherAI/gpt-neox

ERNIE 3.0 Titan
– 제작사: Baidu
– 중국어 특화, 260B 파라미터
https://wenxin.baidu.com/wenxin/ernie (중국어)
LLM 모델 실행 도구Ollama
– 사전 학습된 LLM 모델들을 쉽게 다운로드하고 실행
– 간단한 API를 통해 LLM과 상호작용
– 모델 관리 및 버전 제어를 지원
https://ollama.com/download

LocalAI
– 다양한 LLM을 로컬에서 실행할 수 있는 오픈소스 도구
https://github.com/go-skynet/LocalAI

Msty
– ollama 와는 달리 미려한 챗 GUI 를 제공
– 다양한 모델 지원, ollama 연동 가능
https://msty.app/

llama.cpp
– C/C++로 구현된 LLaMA 모델 추론 엔진
– 로컬 CPU에서 LLM 실행 가능
https://github.com/ggerganov/llama.cpp

GPT4All
– 로컬에서 실행 가능한 어시스턴트 챗봇, 다양한 오픈소스 LLM 지원
https://gpt4all.io/

Hugging Face Transformers CLI
– 커맨드 라인에서 Hugging Face 모델을 쉽게 실행할 수 있는 도구
https://huggingface.co/docs/transformers/index

Kobold AI
– 텍스트 생성 AI를 위한 사용자 친화적 인터페이스
https://github.com/KoboldAI/KoboldAI-Client

OpenLLM
– 생산 환경에서 LLM을 미세조정, 서빙, 배포할 수 있는 플랫폼
https://github.com/bentoml/OpenLLM

Fauxpilot
– GitHub Copilot의 오픈소스 대안
– 로컬에서 코드 생성 AI 실행 가능
https://github.com/fauxpilot/fauxpilot

vLLM
– 빠른 LLM 추론 및 서빙을 위한 라이브러리
https://github.com/vllm-project/vllm

Hugging Face
– 다양한 오픈소스 LLM 제공
https://huggingface.co/transformers/
LLM 프레임워크LangChain
– LLM 애플리케이션 개발을 위한 프레임워크,
– Python/javascript 공식 지원
– go/ruby 버전도 있음
https://www.langchain.com/

LlamaIndex (구 GPT Index)
– 대규모 데이터셋에 대한 LLM의 추론을 지원하는 데이터 프레임워크
https://www.llamaindex.ai/

Haystack
– 검색 및 질답 시스템 구축을 위한 end-to-end 프레임워크
https://haystack.deepset.ai/

Microsoft Semantic Kernel
– AI 애플리케이션 개발을 위한 경량 SDK
https://github.com/microsoft/semantic-kernel

Embedchain
– LLM 기반 챗봇 구축을 위한 프레임워크
https://github.com/embedchain/embedchain

Botpress
– 대화형 AI 애플리케이션 개발을 위한 오픈소스 플랫폼
https://botpress.com/

Autogen
– 멀티 에이전트 대화 프레임워크
https://github.com/microsoft/autogen

ExLlamaV2
– LLaMA 모델을 위한 고성능 추론 엔진, CUDA 지원
https://github.com/turboderp/exllamav2

Vercel AI SDK
특징: LLM을 활용한 AI 기반 스트리밍 애플리케이션 개발을 위한 SDK
홈페이지: https://sdk.vercel.ai/

OpenAI Function Call
특징: OpenAI의 LLM을 사용한 함수 호출 및 도구 사용 프레임워크
홈페이지: https://platform.openai.com/docs/overview
프롬프트 엔지니어링Prompt Engineering Guide: 프롬프트 작성 기법
https://www.promptingguide.ai/

Prompt Engine
– 프롬프트 최적화 및 관리를 위한 오픈소스 도구
https://github.com/microsoft/prompt-engine

LangChain
– LLM 애플리케이션 개발을 위한 프레임워크, 프롬프트 템플릿 포함
https://www.langchain.com/

Promptable
– 프롬프트 생성, 테스트, 버전 관리를 위한 협업 플랫폼
https://promptable.ai/

PromptLayer
– 프롬프트 버전 관리, 로깅, 추적을 위한 도구
https://promptlayer.com/

FLAML (Fast and Lightweight AutoML)
– 자동화된 프롬프트 최적화 기능 포함
https://github.com/microsoft/FLAML

Dust
– LLM 애플리케이션 개발 및 프롬프트 디자인을 위한 플랫폼
https://dust.tt/

GPT Index (현재 LlamaIndex로 알려짐)
– LLM과 외부 데이터를 연결하는 데 도움을 주는 프레임워크
https://www.llamaindex.ai/

Prompts.ai
– GPT-3 프롬프트 실험 및 최적화를 위한 웹 인터페이스
https://prompts.ai/

OpenPrompt
– 프롬프트 기반 학습을 위한 오픈소스 프레임워크
https://github.com/thunlp/OpenPrompt

Prompt Perfect
– AI 기반 프롬프트 최적화 도구
https://promptperfect.jina.ai/

Anthropic’s Constitutional AI
– 윤리적이고 안전한 AI 시스템을 위한 프롬프트 엔지니어링 방법론
홈페이지

Brainware
– 프롬프트 엔지니어링 및 LLM 오케스트레이션 플랫폼
https://www.brainware.ai/

Humanloop
– LLM 애플리케이션 개발 및 프롬프트 최적화를 위한 플랫폼
https://humanloop.com/

Prompt Base
– 프롬프트 마켓플레이스 및 커뮤니티
https://promptbase.com/

DreamStudio
– Stable Diffusion을 위한 프롬프트 엔지니어링 도구
https://beta.dreamstudio.ai/
데이터 로딩 및 처리LangChain Document Loaders
– 다양한 형식의 문서 로딩
홈페이지

LangChain Wrapper
– 다양한 검색 엔진을 위한 Wrapper를 제공
– Google Search, Bing Search, DuckDuckGo, SerpAPI
– Custom Search Engine 지원

Pandas
– 데이터 처리 라이브러리
https://pandas.pydata.org/
임베딩 및 텍스트 처리HuggingFace Embeddings
langchain embeddings
https://huggingface.co/models?sort=trending&search=embedding

Sentence Transformers
– 텍스트 임베딩 생성
https://www.sbert.net/

spaCy
– 자연어 처리 라이브러리
https://spacy.io/
벡터 데이터베이스Pinecone
– 벡터 검색 데이터베이스
https://www.pinecone.io/

Faiss
– Facebook AI의 유사성 검색 라이브러리
https://github.com/facebookresearch/faiss

Chroma
– 임베딩을 위한 오픈소스 벡터 데이터베이스
https://www.trychroma.com/

LanceDB
– AI 앱을 위한 고성능 벡터 데이터베이스
– 벡터 임베딩을 효율적으로 저장하고 쿼리할 수 있는 SQLite와 유사한 빠른 데이터베이스
https://lancedb.com/
메모리 및 상태 관리LangChain Memory
– 대화 기록 관리
https://python.langchain.com/docs/modules/memory/

Redis
– 인메모리 데이터 구조 저장소
https://redis.io/
LangChain flow 시각화Langchain의 내장 시각화 기능
– Langchain은 일부 구성 요소에 대한 기본적인 시각화 기능 제공
– 간단한 플로우를 빠르게 확인하는 데 유용
https://langchain.readthedocs.io/en/latest/

LangFlow
– LangChain 컴포넌트를 위한 UI 및 플로우 차트 도구
https://github.com/logspace-ai/langflow

Flowise
– LangChain 플로우를 위한 드래그 앤 드롭 UI 도구
https://github.com/FlowiseAI/Flowise
도구 및 AgentLangChain Tools
– 다양한 외부 도구 통합
https://python.langchain.com/docs/modules/agents/tools/

LangChain Agents
– 자동화된 작업 수행
https://python.langchain.com/docs/modules/agents/

Composio
– AI 에이전트 통합 플랫폼
– 250개 이상의 애플리케이션을 지원하며, GitHub, Jira, Salesforce, Gmail 등 다수의 SaaS 앱 연결 지원
https://composio.dev/

CopilotKit
– 웹 앱에 AI 코파일럿 추가, GitHub Copilot과 같은 기능을 앱에 쉽게 추가
https://www.copilotkit.ai/
다중 Agent WorkflowLangGraph
– 언어 모델과 지식 그래프를 결합하여 더욱 강력한 정보 처리
– 상태 머신 개념을 사용하여 복잡한 AI 워크플로우를 그래프 방식으로 쉽게 구축
https://langchain-ai.github.io/langgraph/

LangGraph JS
– 그래프 기반 에이전트 워크플로우 구축 (Javascript)
https://www.langchain.com/langgraph

Neo4j
– 그래프 데이터베이스의 대표적인 오픈 소스 솔루션
– LangGraph와 같이 지식 그래프를 구축하고 관리
https://neo4j.com/
UI frameworkStreamlit
– 파이썬 기반, 간단한 문법, 빠른 프로토타이핑
– 학습 곡선이 낮음, 데이터 시각화에 강함
– 복잡한 레이아웃에는 제한적일 수 있음
https://streamlit.io/

Gradio
– 직관적인 인터페이스, 빠른 데모 생성
– 다양한 입력/출력 유형 지원, Hugging Face와의 통합
– 고급 커스터마이징에 제한이 있을 수 있음
https://gradio.app/

ComfyUI
– 노드 기반 이미지 생성 파이프라인 제작 오픈 소스 도구
– Stable Diffusion, ControlNet 등 다양한 모델과 함께 사용

Dash
– 반응형 웹 애플리케이션, 풍부한 컴포넌트
– 복잡한 대시보드 생성 가능, 높은 커스터마이징
– 학습 곡선이 상대적으로 높음
https://dash.plotly.com/

Streamlit IO (Streamlit의 확장)
– Streamlit 기반, AI 특화 기능 추가
– AI 워크플로우에 최적화, 사용 편의성
– 아직 개발 중인 단계로 기능이 제한적일 수 있음
https://www.streamlit.io/generative-ai

Panel
– 파이썬 기반, 데이터 시각화에 강함
– Jupyter Notebook과의 통합, 다양한 위젯 제공
– AI 특화 기능은 상대적으로 적을 수 있음
https://panel.holoviz.org/

Voilà
– Jupyter Notebook을 웹 애플리케이션으로 변환
– 노트북 기반 개발자에게 친숙, 간단한 사용법
– 복잡한 인터랙션에는 제한적일 수 있음
https://voila.readthedocs.io/

text-generation-webui
LLM을 위한 웹 인터페이스 제공, 다양한 모델 지원
https://github.com/oobabooga/text-generation-webui

Vercel AI SDK
– TypeScript로 AI 웹 앱 빌드
– React, Next.js, Vue, SvelteKit 등을 지원하며, 반복적인 설정을 단순화하고 대화형 UI 기반 구축
https://sdk.vercel.ai/
LLM 개발 관리, 디버깅LangSmith
– 모델 버전 관리, 협업(공유) 기능
– 로깅, 디버깅
https://smith.langchain.com/

Hugging Face Hub
– LangSmith와 마찬가지로 모델 버전 관리, 협업 기능 지원
– Transformers 라이브러리와의 긴밀한 연동
https://huggingface.co/


첨삭이 필요한 항목이 있으면 댓글로 제보 바랍니다!


You may also like...

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.