728x90
반응형

분류 전체보기 196

MCP(Model Context Protocol) 정리와 MCP 서버 구축

1. MCP란 Model Context Protocol(MCP)는 LLM 애플리케이션과 외부 데이터 소스 및 도구 간의 원활한 연동을 가능하게 해주는 오픈 프로토콜 AI 기반 IDE를 만들거나, 채팅 인터페이스를 개선하거나, 맞춤형 AI 워크플로우를 구축하든 MCP는 LLM이 필요한 컨텍스트에 표준화된 방식으로 접근할 수 있도록 도와준다. 1.1 왜 MCP인가?MCP는 LLM을 기반으로 에이전트와 복잡한 워크플로를 구축하는데 도움을 준다.LLM은 다양한 데이터 및 도구와의 통합이 자주 필요하며, MCP는 다음과 같은 방식으로 지원한다.LLM이 바로 사용할 수 있는 다양한 사전 구축 통합 기능 제공 (ex. DB, API, 외부 툴 등 쉽게 연동할 수 있는 통합 기능)LLM 제공자나 벤더 간 유연한 전환 ..

AI/LLM 2025.07.06

Cassandra의 스토리지와 Read, Write 동작 원리

0. 이전 게시글https://daeunnniii.tistory.com/213 Cassandra 구조와 원리 (feat. CAP 이론)1. Cassandra란 이름의 유래는 그리스 로마신화 카산드라. (예언의 능력이 있지만 아무도 믿지 않았던) 그래서 로고도 반짝이는 눈 모양으로 추정.대용량 데이터를 관리하기 위해 설계된 고성능 분daeunnniii.tistory.com 1. 개요Cassandra는 고성능 분산형 NoSQL 데이터베이스로, 쓰기 및 읽기 작업의 효율성과 내결함성을 보장하기 위해 CommitLog, Memtable, SSTable이라는 세 가지 핵심 구성요소를 사용한다. 이러한 구성요소들은 Cassandra의 내부 작동 원리를 이해하기 위해 필수적이다.2. 카산드라의 스토리지2.1 Comm..

Database/Cassandra 2025.05.01

Cassandra 구조와 원리 (feat. CAP 이론)

1. Cassandra란 이름의 유래는 그리스 로마신화 카산드라. (예언의 능력이 있지만 아무도 믿지 않았던) 그래서 로고도 반짝이는 눈 모양으로 추정.대용량 데이터를 관리하기 위해 설계된 고성능 분산 NoSQL 데이터베이스Google의 Big Table과 Amazon의 Dynamo를 섞어서 만든 key-value 및 Column 형태의 종합적인 플랫폼이라고 할 수 있다.노드는 카산드라의 인스턴스로 구성되고, 여러 노드들은 Gossip이라고 불리는 프로토콜을 통해 소통한다.카산드라는 master가 없는 Ring 구조로 구성되어 모든 노드가 같은 역할과 기능을 수행한다. (P2P를 지원)카산드라는 SQL과 비슷한 Cassandra Query Language(CQL)를 이용장점분산화: 카산드라는 DB를 분산..

Database/Cassandra 2025.04.24

Grafana Multi variables 활용한 시각화

1. 목표grafana를 사용하여 GROUP 드롭다운에서 특정 그룹을 선택하면 GROUP 선택지에 따라 GROUP DETAIL에서 해당 그룹에 속해있는 세부 정보를 보여주도록함.GROUP DETAIL에서 체크박스로 선택한 정보에 대해서만 Panel에 시각화하여 보여줌.아래는 GROUP DETAIL을 모두 선택(All)한 화면이다.아래는 GROUP DETAIL 내 체크박스를 3개만 선택한 화면이다.  2. Dashboard Variables 설정오른쪽 위에서 Edit > Settings > Variables > New variable를 선택한다.2.1 group varible 설정Select variable type에는 Query, Custom, Text box, Constant 등이 있다. 각 varia..

ETC/Grafana 2024.11.27

[시계열 데이터 이미지 인코딩] 2. Markov Transition Field(MTF) 개념 및 적용

1. Markov Transition Field(MTF)란?Markov Transition Field (MTF) 알고리즘은 이산화한 시계열 데이터의 전이 확률을 나타내는 알고리즘이다.N개의 Time Series 데이터가 있다고 가정한다.Time Series 데이터를 분위수를 활용하여 Q+1 bin으로 이산화한다.아래 과정을 통해 상태 전이 행렬을 구한다. 즉, Markov model은 상태 전이 행렬(state transition matrix)을 만들기 위한 것이다.상태 전이 행렬은 어떤 상태가 시간에 따라 어떻게 변화하는지 나타낸 것$w_{ij} = P(x_t = j | x_{t-1} = i)$i 상태로부터 j 상태로 전이하는 확률을 $W_{ij}$라고 한다.위 확률을 최대우도추정법(maximum li..

AI/Time series 2024.11.25

[시계열 데이터 이미지 인코딩] 1. Gramian Angular Field (GAF) 개념 및 적용

1. Gramian Angular Field (GAF) 이란?Gram Matrix: 각 시점 간의 시간적 상관관계를 극좌표를 기반으로 표현하는 알고리즘 ($G = X^TX$)서로 다른 모든 벡터들에 대해 유사도를 나타내는 행렬이라고 볼 수 있다.cosine similarity와 비슷하게 값이 1에 가까우면 유사도가 높고, 0이면 유사도가 없고, -1이면 정반대의 유사도를 가진다.극좌표 기반 행렬은 시계열 데이터를 이미지로 변경할 때 시간 상관관계를 보존할 수 있다는 장점이 있다. 1. Time Series 데이터를 -1~1까지로 정규화를 한다.시계열 데이터의 작거나 큰 다양한 범위들을 [-1, 1] 혹은 [0, 1] 구간으로 정규화시킨다.2. 정규화된 Time Series 값을 극좌표계(poloar co..

AI/Time series 2024.11.24

ClickHouse에 NATS 엔진 설정 방법

개요NATS로 publish한 메세지들이 바로 Clickhouse의 테이블에 추가될 수 있도록 NATS 엔진 설정 방법을 알아본다.1. NATS 메시징 시스템 구축1.1 NATS 설치# nats-server 설치$ curl -L https://github.com/nats-io/nats-server/releases/download/v2.10.18/nats-server-v2.10.18-linux-amd64.zip -o nats-server.zip$ unzip nats-server.zip -d nats-server$ sudo cp nats-server/nats-server-v2.10.18-linux-amd64/nats-server /usr/bin/ # nats 설치$ curl -sf https://binari..

Database/Clickhouse 2024.11.23

Tensorflow에서 multi GPU 사용 방법

1. GPU 확인보유하고 있는 gpu 정보와 해당 gpu 번호 확인from tensorflow.python.client import device_libdevice_lib.list_local_devices()아래 결과를 통해 gpu가 2개 있는 것을 확인할 수 있다. MirroredStrategy2. 사용 가능한 모든 GPU 병렬처리MirroredStrategy 인스턴스 생성 시 아무것도 지정하지 않으면 multi GPU에 대해 분산처리되어 동작함.마찬가지로 with mirrored_strategy.scope() 블럭 내에서는 모델 생성 및 학습 모델 설계 관련 구현하고, with 구문 내에서 model이 compile되어야함.import tensorflow as tfmirrored_strategy = t..

AI/딥러닝 2024.11.22

Opensearch 유사도 검색

이전 게시글앞서 PDF 문서를 Text로 변환하여 Custom analyzer 적용하여 인덱싱하였음.https://daeunnniii.tistory.com/206 Opensearch Tokenizer, Analyzer와 Custom Analyzer 적용1. Opensearch AnalyzerOpensearch에 텍스트 입력 시 필드를 인덱싱하고 Documents화 할 때 Lucene 엔진에 의해 텍스트가 분석되어 입력됨.이때 텍스트를 분석하는 엔진을 Analyzer라고 함.Lucene 에서 제공하는 Andaeunnniii.tistory.com Opensearch 유사도 검색1. More like this 쿼리More Like This (MLT) 쿼리는 입력으로 주어진 document 집합과 비슷한 doc..

Database/Opensearch 2024.11.21

Opensearch Tokenizer, Analyzer와 Custom Analyzer 적용

1. Opensearch AnalyzerOpensearch에 텍스트 입력 시 필드를 인덱싱하고 Documents화 할 때 Lucene 엔진에 의해 텍스트가 분석되어 입력됨.이때 텍스트를 분석하는 엔진을 Analyzer라고 함.Lucene 에서 제공하는 Analyzer는 하나의 Tokenizer와 다수의 Filter로 구성1.1 Filter의 종류CharFilter와 TokenFilter 2가지가 존재CharFilter는 입력된 문자열에서 불필요한 문자를 normalization하기 위해 사용TokenFIilter는 tokenizer에 의해 분해된 token에 대한 Filter 처리를 함.기본적으로 CharFilter에 의해 공백 콤마 등의 문자를 삭제하며, 예시로 문서의 유형이 xml일 경우 의 문자열들..

Database/Opensearch 2024.11.20
728x90
반응형