AI 12

[AI] VLLM qwen3(tool_calls) web서버 사용 방법 ( 리눅스 )

vLLM은 대형 언어 모델(LLM)의 추론 및 서빙을 효율적이고 고속으로 처리할 수 있는 오픈소스 라이브러리입니다. 특징고성능 추론 및 서빙OpenAI 호환 API 서버다양한 모델 지원하드웨어 및 분산 추론 지원vllm web 서버 생성먼저 로컬 모델이나 허깅페이스에서 사용할 모델을 다운로드하거나 정해야 한다.chat-template ./qwen3_nonthinking.jinja은 https://qwen.readthedocs.io/en/latest/deployment/vllm.html 에서 다운로드할 수 있다. qwen3의 nothink를 위한 chat template이다 think를 사용하고 싶으면 안 해도 된다.vllm serve 로컬 모델경로 or 허깅페이스 가능 --served-model-nam..

AI 2025.06.25

[AI] Milvus 사용방법

1. Milvus 다운로드Milvus는 vectordb로 리눅스 환경에서 동작한다.https://milvus.io/docs/ko/install_standalone-docker-compose.md Docker Compose로 Milvus 실행하기(Linux) | Milvus 문서화Docker Compose를 사용하여 Milvus를 독립형으로 설치하는 방법을 알아보세요. | v2.6.xmilvus.io Docker Compose를 다운로드하기 위해 https://github.com/milvus-io/milvus/releases/ 에 접속해서 원하는 버전의 Docker Compose 파일을 다운로드한다.docker-compose.yaml은 Milvus를 실행시키기 위해 필요한 3개의 서비스 컨테이너 서비스를 ..

AI 2025.06.25

[AI] LangChain - LangGraph ( State, Message )

LangGraph는 상태 기반 LLM을 만들기 위한 프레임워크입니다. 쉽게 말해 LLM의 현재 상태에 따라 조건문 반복문 등을 사용하여 유연한 LLM 워크플로우를 만들 수 있는 기능으로 StateGraph, MessageGraph, ReAct 등이 있습니다.  구성요소구성요소설명노드(Node)실행 단위. LLM 호출, 함수 실행 등.엣지(Edge)다음에 어떤 노드로 갈지 정의. 조건 분기, 루프 가능.상태(State)전체 흐름에서 공유되는 데이터. 상태를 기준으로 흐름 결정 가능. 상태(State) - 모든 노드가 공유하는 데이터상태는 전체 그래프 에서 사용하는 공용 데이터로 그래프가 처리하는 데이터 구조를 정의하는 객체입니다. 일반적으로 StateGraph에서는 기존 상태를 ovrride(덮어쓰기)합니..

AI 2025.04.08

[AI] LangChain - Tool Calling 사용법

[Tool Calling 이란?]Tool Calling(도구 호출)은 LLM이 단순 텍스트 응답을 넘어서, 등록된 함수나 프로그램을 직접 실행하고 그 결과를 응답에 반영하는 기능이다. 즉, LLM이 사용자의 질문을 분석해 필요한 툴을 스스로 판단하고 실행하는 구조이다. 예시 질문필요한 툴LLM에게 질문LLM이 선택한 필요한 툴“서울 오늘 날씨 어때?”날씨 API“파스타 요리법 알려줘”위키백과 검색 도구“삼성전자 주가 알려줘”주식 데이터 API“23 + 45는?”계산기 함수“내 회사 문서에서 찾은 요약 보여줘”벡터 DB 툴 (RAG) Tool Calling 흐름Tool Calling 흐름[User 입력] ↓[LLM 판단: "이건 툴이 필요하군!"] ↓[툴 이름 + 인자 → Tool 호출] ↓[결..

AI 2025.04.04

[AI] 대형 언어 모델 파인튜닝 기법 정리 (SFT, PEFT, RLHF, DPO, RL)

대형 언어 모델(LLM)을 활용한 파인튜닝은 이제 누구나 해볼 수 있을 만큼 쉬워졌지만, SFT, PEFT, RLHF, DPO, PPO, RL 등 용어가 너무 많고 헷갈리는 경우가 많습니다. 이번 글에서는 LLM 파인튜닝 전략을 개념 중심으로 정리해보고,언제 어떤 방법을 선택해야 하는지 흐름별로 알아보겠습니다.전체 개념 흐름 데이터 있음   |   |-- 자원이 부족하거나 빠르게 실험하고 싶다   |      -->  PEFT (LoRA, QLoRA)   |   |-- 자원이 충분하고 최대 성능이 목표다   |      -->  Full SFT   |   v 모델이 기본적인 응답을 하게 됨 (SFT 완료)   |   |-- 더 공손하고, 사람 같은 답변을 만들고 싶다   |      -->  RLHF (..

AI 2025.03.26

[AI] LoRA 기반 PEFT 파인튜닝과 용어정리

Llama 3.1 LoRA 기반 PEFT 적용 가이드 LoRA (Low-Rank Adaptation)는 LLM(대형 언어 모델)의 일부 파라미터만 미세 조정하여메모리와 계산량을 절약하는 파인튜닝 기법입니다.Llama 3.1 모델에 LoRA를 적용하여 PEFT(Parameter-Efficient Fine-Tuning)를 수행하는 방법을이론과 실전 코드 예제를 통해 단계별로 설명합니다1. PEFT(LoRA)란 무엇인가?(https://github.com/huggingface/peft)PEFT (Parameter-Efficient Fine-Tuning)기존 LLM을 풀 파인튜닝(Full Fine-Tuning)하지 않고, 적은 수의 파라미터만 학습하는 방법.대표적인 방식으로 LoRA, QLoRA, Adapter..

AI 2025.02.27

[AI] Huggingface모델 다운받아 Ollama에 올려서 RAG와 Memory사용하기

사용할 모델은 야놀자의 eeve 모델을 사용하여 진행함HuggingFace Hub 설치pip install huggingface-hub 모델 다운로드https://huggingface.co/heegyu/EEVE-Korean-Instruct-10.8B-v1.0-GGUF heegyu/EEVE-Korean-Instruct-10.8B-v1.0-GGUF · Hugging FaceUsage requirements # GPU model CMAKE_ARGS="-DLLAMA_CUBLAS=on" FORCE_CMAKE=1 pip install llama-cpp-python --force-reinstall --upgrade --no-cache-dir --verbose # CPU CMAKE_ARGS="-DLLAMA_CUBLAS..

AI 2024.06.27

[AI] Ollama 다운로드 및 모델 다운 방법

Ollama 는 로컬 환경(내 PC)에서 대규모 언어 모델인 LLM을 실행할 수 있도록 설계된 도구로 Mistral, Llama 3 등 다양한 오픈소스 LLM을 지원합니다. 또 한 Hugging face에서 다운 받은 GGUF 모델을 Ollama에 올려서 사용할 수 있습니다. Ollama 다운경로 https://ollama.com/download Download Ollama on macOSDownload Ollama on macOSollama.com 올라마 설치 후 확인 cmd에 ollama 입력ollama올라마에서 모델 명 복사현재 Ollama에 다운 받은 모든 모델 출력ollama list모델 다운 받기xxxx에 모델 명을 넣으면 된다.run - 모델 다운받고 실행pull - 모델만 다운로드ollam..

AI 2024.06.27

[AI] 임베딩(Embedding)

임베딩기법은 자연어 처리를 위한 기법중 하나로 머신러닝 알고리즘을 쓸 때 머신러닝 알고리즘은 어떤 문자형 데이터를 처리할 수 없기 때문에 인티저 인코딩이나 원핫 인코딩 같은 형태로 벡터 표현 형태로 그 텍스트 데이터를 변경을 수행해 주었어야만 했다. 하지만 주로 사용하는 원핫 인코딩을 사용할 경우 여러 가지 문제점들이 있게된다. 첫 번째로는 데이터 표현형태가 Sparse(희박하다)해진다는 문제점이 있다. 만약 10000개의 단어가 들어있을 때 1000개의 단어에 9999에는 0이들어있고 하나의데이터에 1이 들어있는 문제가있다. 이런 문제를 해결하기 위해 Sparse한 one-hot encoding의 데이터 표현을 Dense(빽빽한)한 표현 형태로 변환하는 기법이다. 이를 위해서 원본 데이터에 Dense한..

AI 2024.05.09