조대협 297

로컬에서 LLM 모델을 실행하기 위한 Ollama, LMStudio

요즘 LLM이 유행하면서 로컬 환경에서 소형 LLM인 sLLM을 실행하는 경우가 많은데, sLLM은 종류도 많을뿐더라, 코드를 직접 실행하고, 런타임을 최적화하기가 매우 어렵다.이런 문제를 해결하기 위해서 sLLM을 손쉽게 실행할 수 있는 환경이 있는데, 가장 널리 사용되는 환경으로는 Ollama와 LMStudio가 있다.  Ollama는 아래와 같이 CLI환경에서 프롬프트를 입력할 수 있다. 또한, HTTP REST API를 제공하기 때문에 애플리케이션 개발에도 유용하게 사용할 수 있다.  개인적으로는 LMStudio를 좀 더 선호하는데, LMStudio는 아래와 같이 GUI 베이스로, 쳇봇 GUI를 지원하기 때문에 좀더 깔끔하게 사용할 수 있고, 히스토리 관리등이 가능하다.  맥북 PRO M1으로 실..

GTM에서 전체시장, 유효시장, 수익 시장 (TAM,SAM,SOM)의 개념

TAM, SAM, SOM은 GTM(Go-to-Market) 전략에서 시장 규모를 이해하고 타겟을 설정하는 데 사용되는 중요한 개념이다. 각각의 용어는 다음과 같은 의미를 가진다 1. TAM (Total Addressable Market)전체 시장 규모를 나타낸다.TAM은 제품이나 서비스가 전 세계에서 제공될 수 있을 때, 이론적으로 접근 가능한 시장의 최대 규모를 의미한다.이는 이상적인 상황을 가정하며, 모든 경쟁사를 배제하고 시장을 100% 점유했을 때 달성 가능한 매출 규모다.TAM을 산출하는 것은 제품이 가진 전체 잠재력을 이해하는 데 중요하다.예:스마트워치를 제조하는 회사라면, TAM은 전 세계 모든 스마트워치 사용자의 시장 규모이다.2. SAM (Serviceable Addressable Mar..

비지니스 2025.01.04

생성형 AI로 코드 품질을 높이는 방법

쓰레드에서 @choi.openai 라는 분이 LLM 모델로 코드를 생성할때, "LLM에게 "더 나은 코드를 작성해달라"고 반복적으로 요구하면 실제로 더 나은 코드를 생성할 수 있다는 결과가 나왔습니다."라는 이야기가 있어서 테스트를 해봤다. 이 내용의 원본은 https://minimaxir.com/2025/01/write-better-code/ 이다.  Gemini를 이용해서 다음과 같이 간단한 REST API를 FastAPI로 만드는 프롬프트를 작성하였다.Create the REST API code with fastAPI. - get request with HTTP POST. Input body has username,address,gender fields. - have proper error hand..

2024년 LLM 애플리케이션 아키텍쳐 및 2025년 전망

2024년 LLM 애플리케이션 아키텍쳐 및 2025년 전망조대협(http://bcho.tistory.com) Langchain은 LLM (ChatGPT등)을 이용하여 애플리케이션을 개발할 수 있는 프레임웍이다.Langchain은 LangSmith라는 이름으로 LLM 애플리케이션의 실행 내역을 추적할 수 있는 기능을 가지고 있는데, 이를 통해서 사용자들의 LLM Application의 구조를 예측할 수 있다.  이번에 2024년 Langchain의 사용량에 대한 리포트가 나왔는데, 이를 통해서 LLM application이 어떻게 변화하고 있는지를 유추해볼 수 있다.  블로그 소스 : https://blog.langchain.dev/langchain-state-of-ai-2024/?fbclid=IwZXh0..

GTM 전략 상세

GTM 전략조대협 (http://bcho.tistory.com) GTM(Go-To-Market) 전략은 기업이 새로운 제품이나 서비스를 시장에 성공적으로 출시하기 위한 종합적인 계획을 말한다. 목표 고객 정의, 가치 제안 및 개발, 판매 및 마케팅 방법 결정 등의 요소를 포함한다.아키텍처 디자인에서 GTM 전략의 의미비즈니스 방향과 시스템 아키텍처의 방향이 서로 일치되도록 한다.우선순위, 아키텍처 설계 원칙 등을 고려한다.경쟁사와 시장의 이해를 통하여 시스템 아키텍처에서 차별화점을 개발한다.비즈니스 단계에 따른 아키텍처 설계, 시스템 운용 방안, 개발 프로세스를 도출한다.비즈니스 KPI에 일치된 시스템 모니터링 기능을 설계한다.GTM 전략의 구성 요소GTM 전략은 다음과 같은 구성 요소로 이루어진다.문제..

RAG 성능 튜닝 - Embedding fine tuning

다른 아이디어로는 Embedding 모델을 파인튜닝 하는 방법이 있다. OSS 나 클라우드 제공 Embedding 모델은 범용 목적에 맞춰져 있기 때문에, 특정 서비스의 단어 도메인과 맞지 않는 경우가 많다. 그래서, 이를 그 도메인의 단어로 파인튜닝하게 되면 Embedding된 결과를 통해서 유사 문서 (질문에 대한 답변)을 찾는 정확도가 향상되기 때문에 결과적으로 RAG의 성능을 향상 시킬 수 있다.  구글의 경우 Gecko Embedding 모델에 대한 파인 튜닝을 지원한다. https://cloud.google.com/vertex-ai/generative-ai/docs/models/tune-embeddings 텍스트 임베딩 조정  |  Generative AI on Vertex AI  |  Goo..

Small to Big Chunking in RAG

RAG에서 Chunk 를 retrieval 할때, 그 Chunk의 위와 아랫부분을 확장해서 같이 리턴하는 방법으로, 더 상세한 컨택스트를 리턴할 수 있다. 언뜻 보면 Parent/Child Chunking 기법과 유사하기는 하지만, 구현이 간단해 보이고, 문장을 중심으로 확장해서 컨택스트를 추출한다는 면에서 훨씬 효과가 있어보인다.  출처 https://www.youtube.com/watch?v=TRjq7t2Ms5I

아키텍처 설계 온라인 강의 오픈합니다.

안녕하세요?조대협입니다. 그동안 실시간으로만 진행해왔던 대용량 아키텍처 설계 강의를 온라인으로 패스트 캠퍼스에서 오픈합니다.생성형 AI 시대가 되면서, 코딩은 이제 AI가 하게 되고, 그러면 엔지니어로써 살아남기 위해서는 무엇을 준비해야 할까 고민을 해보면, 실리콘 밸리에서는 자바나 안드로이드 엔지니어가 아니라 General Software engineer라는 역할을 뽑습니다.특정 언어나 기술에 대한 종속성이 있는 것이 아니라, 비즈니스 문제를 기술로써 해결하는 사람으로, 이런 엔지니어의 특징은 문제 해결능력, 비즈니스에 대한 이해, 설계 능력과 좋은 커뮤니케이션 능력을 가지고 있습니다.  그래서 이번 대용량 아키텍처 강의는 그동안의 노하우를 다시 정리해서 리부트 하였습니다1. GTM 기반의 비즈니스 전..

5. 파이토치 - 분산 학습의 개념과 하드웨어

분산학습의 개념조대협 (http://bcho.tistory.com)분산 학습 개념분산학습이란, 모델이 커서 하나의 머신이나 장치(CPU,GPU) 에서 학습이 불가능할때, 모델을 여러개의 GPU나 또는 여러개의 머신으로 나눠서 학습을 하는 방법이다.분산 학습의 방법분산 학습 방법은 크게 모델 병렬화 (Tensor Parallelism), 데이터 병렬화 (Data Parallelism) 으로 분류 할 수 있다.   출처 https://uvadlc-notebooks.readthedocs.io/en/latest/tutorial_notebooks/scaling/JAX/tensor_parallel_simple.html 데이터 병렬화 : Distributed Data Parallelism (이하 DDP)라고 하는데,..