전체 글 36

LLM Attention (with Code)

느슨해진 attention에 긴장감을 주는 attention 복습 포스트입니다. Transformer and Self-AttentionTransformer 기본 구성 요소관련 포스트: https://dasarchiv.tistory.com/entry/llm-architectureTransformer는 2017년 발표된 "Attention Is All You Need" 논문에서 발표되었다. 최근 GPT 계열의 LLM들은 대부분 Transformer의 decoder 구조를 기반으로 하고 있다. Tokenizer: 입력 text를 token 단위로 나눔Embedding Layer: token을 vector로 변환dropout, layer normalization, feed-forward: 기본 신경망 layer..

KAMF : Kafka-A2A-MCP-Flink

AI SiloAI Silo 문제는 Data Silo에서 파생된 개념으로 AI 모델, 데이터, 기술, 인력, 인프라 등이 부서별로 분리·고립되어 서로 연계되지 못하여 AI를 효율적으로 활용하지 못하는 현상이다.특히 기업에서 사용되는 ai agent들이 각각 독립적으로 운영되어 서로 통신되지 못하여 ai를 도입한 효과를 보지 못하거나 사내 데이터의 중복과 일관성 저하 문제가 발생하고 있다.위와 같은 문제를 완화하기 위해 KAMF stack이 주목 받고 있다.KAMF stackKAMF stack은 Apache Kafka, MCP(Model Context Protocol), A2A(Agent2Agent), Apache Flink로 구성된다.MCP로 각각의 Agent를 만들고 A2A로 Agent들끼리 소통하게 한..

Agent's Memory: Knowledge Graph Memory MCP Server, Memory OS of AI Agent

Agent's Memoryai agent 기반 서비스에서는 사용자와의 대화 내용을 agent가 기억어는 것이 중요하다. 일반적으로 agent들이 기억을 유지하는 방법은 아래와 같다:context window 의존가장 기본적인 방법으로, LLM이 수용할 수 있는 고정된 길이의 context window에 대화 history를 잘라 넣는 방법이다.vector memory대화 내용을 vector embedding으로 변환하여 db에 저장, 새로운 질문이 들어오면 db에서 유사한 기록을 검색하여 현재 time step의 context에 포함시켜 답변 생성summary based memoryLLM으로 prompt-completion 쌍에 대한 요약을 생성하고 이를 NoSQL DB에 저장 (user_id, summ..

VLM : Models Summary (unfinished post: 0618 update)

OpenVLM Leaderboardhttps://huggingface.co/spaces/opencompass/open_vlm_leaderboardInternVM3OpenGVLab에서 개발한 MLLM 시리즈 모델 중 하나2.5 버전에 비해 멀티 모달 인시, 추론 능력이 향상되었고, tool use도 지원한다.모델 구조ViT-MLP-LLM 3-stack: InternVL3는 이전 버전과 동일한 "ViT-MLP-LLM" 구조로 구성된다.ViT (Vision Encoder)는 InternViT-300M-448px-V2.5 or InternViT-6B-448px-V2.5 를 사용LLM Backborn은 Qwen2.5를 사용MLP: Multi-Layer Perceptron. 1번 Modality vector를 2번..

Prompt Engineering

LLM은 입력된 token sequence에서 다음 token의 확률 분포를 계산하여 다음 token을 생성하는 모델이다. LLM에게 prompt는 전체가 하나의 token sequence일 뿐이라는 점을 인지하여 prompt engineering을 해야 한다. 간혹 LLM을 생각하는 존재로 취급하고 Prompting을 하는 경우를 볼 수 있는데, LLM은 기본적으로 next token prediction으로 작동한다는 점을 인지하고 prompt를 작성해야 한다. LLM 작동 방식사용자 입력 -> tokenizetokens -> embeddingtransformer decoder 기반의 각 모델 architecture를 통해 순차적으로 처리 (모델에 따라 순차적이지 않을 수 있다. Multi-Token ..

GraphRAG (Microsoft)

Knowledge Graph?Knowledge Graph란, NebulaGraph(https://www.nebula-graph.io/posts/graph-RAG)에서 제안된 방식이다.Graph RAGGraphRAG 프로세스는 크게 인덱싱(Indexing) 단계와 쿼리(Querying) 단계로 구성된다.IndexingIndexing 단계에서는 아래와 같은 작업이 수행된다:1. Text Units:Naive RAG에서 chunking이라고 부르는 부분과 유사하다. 입력 텍스트를 TextUnit이라고 불리는 관리 가능한 chunk로 분절하는 것이다.2. Knowledge graph 구성:1) LLM으로 TextUnit으로부터 Entity와 Relation을 추출한다.Entity: 텍스트에 등장하는 주요 개체나..

Agent가 뭘까 : Agent, Agentic AI, Multi-Agent, Agentic RAG

Agent, Agentic AI, Multi-Agent, Agentic RAGAgentAgent는 특정 task를 수행하는 agent이다.즉, Agent는 특정 task를 다양한 tool들을 통해 해결한다.Agent는 단순하고 반복적인 작업을 자동화하는 데에 적합하지만 자율적인 의사 결정 능력은 없다. 스스로 생각하지 않고 사용자가 지시한 것을 수행하는 가상 도우미 정도의 역할을 할 수 있다.1. LLMAgent는 기본적으로 LLM을 기반으로 돌아간다. LLM은 Agent 내에서 텍스트 처리, 상황 및 맥락 이해, 결정 등을 모두 관장한다.2. 계획 설계 및 추론LLM을 통해 task를 해결하기 위한 계획을 설계한다. 사용자 입력으로부터 목표를 명확히하고, 해결 방법을 추론하고, 추론 결과를 기반으로 세..

DeepSeek-V3

DeepSeek-V3 요약Open Source Model Architecture : Mixture-of-Experts(MoE) 구조Parameter:total : 6,710억개activated per token: 370억개Speed: 초당 약 60개의 토큰을 처리할 수 있어 이전 버전(DeepSeek-V2)보다 3배 빨라졌다고 한다.Specialized task: 교육, 코딩, 수학적 추론ArchitectureDeepSeek 모델도 Transformer Decoder 구조를 기반으로 하지만 여기에 몇 가지 설계적 요소를 추가하여 성능을 향상시켰다.Multi-head Latent Attention (MLA)기존 transformer attenetion mechanism을 개선한 attention으로, 이 ..

Meta-Chunking: Learning Efficient Text Segmentation via Logical Perception

최근 LLM이 답변할 때 외부 지식을 참고하여 더 정확한 답변을 생성하도록 하는 RAG 기법이 많이 사용되고 있다. 쉽게 말하자면 RAG은 챗봇이 사용자의 질문에 답할 때 관련 문서들을 찾아보고 답하는 것이다. 이때 참조할 문서는 일정 길이의 chunk로 나뉘어 있는데 이 chunk를 나눌 때 서로 연관된 내용이 분리되거나 불필요한 내용이 포함될 경우, RAG의 결과가 좋지 않은 문제가 있다. 이와 같은 문제를 해결하고자 제안된 방법이 Meta-Chunking이다. Meta-Chunking은 문장들 간의 논리적 연결성을 고려하여 더 의미있는 단위로 문서를 분할하는 방법론이다. Meta-Chunking의 전략은 크게 두 가지이다.1) Margin Sampling ChunkingLLM이 연속된 문장들을 분리..

RAGCache: Efficient Knowledge Caching for Retrieval-Augmented Generation (RAG 속도 향상 방법)

본 논문은 베이징 대학교와 ByteDance가 효율적인 RAG 수행을 위해 연구한 내용을 담고 있다. 최근 LLM 추론 시간 자체에 대한 가속화 연구가 많이 진행되고 있다(vLLM, SGLang ...). RAG 작동 효율 향상을 위해 LLM 추론 자체가 빠른 것도 도움되지만 RAG 시스템 특성을 적절히 고려한 최적화도 필요하다.RAG 시스템에서 보이는 주요한 문제는 아래와 같다:1. Performance BottleneckRAG의 retirieval 단계는 일반적으로 millisecond 단위로 매우 빠르게 처리된다.문제는 generation 단계이다. 검색된 문서가 input에 추가되면서 추론 시 계산 비용과 메모리 사용량이 증가한다.LLM 추론은 크게 두 단계로 진행된다: 1) prefill 단계..