Elasticsearch - Transformers 임베딩 입력 저장 (Local Mode)

개요 엘라스틱서치에서 밀집 벡터 위한 매핑 구성 방법 살펴보기 밀집 벡터가 저장될 embedding 이라는 필드 정의 Python 코드로 엘라스틱서치 코드 구현 코드 전체 시나리오 Elasticsearch에 연결 및 인덱스 초기화 dense_vector 타입으로 매핑 정의 문서 배열 정의 BERT 모델을 이용해 각 문서를 벡터 임베딩 벡터 포함 문서를 Elasticsearch에 색인 Elasticsearch 클라이언트 연결 로컬에서 실행 중인 Elasticsearch 서버에 접속 basic_auth: 로그인 자격 (ID: elastic, PW: 123456) verify_certs=False: 인증서 검증 생략 (로컬에서 SSL 없이 사용 시 편의용) es_admin = Elasticsearch("http://localhost:9200", basic_auth=("elastic", "123456"), verify_certs=False) Mapping 정의 및 인덱스 생성 dense_vector: 벡터 검색용 필드 (벡터 유사도 기반 검색 가능) dims: BERT의 출력 벡터는 기본적으로 768차원이므로 그에 맞춤 mapping = { "properties": { "embedding": { "type": "dense_vector", "dims": 768 # BERT의 출력 벡터 차원 수 } } } 기존 인덱스 삭제 후 새로 생성 기존에 있던 chapter-2 인덱스를 삭제 (중복 방지) 새로운 인덱스를 위에서 정의한 벡터 매핑으로 생성 try: es_admin.

엘라스틱 클라우드에 데이터 추가하기 - 예제 (2025, 06)

CH03 - 데이터 추가 개요 Cloud에 데이터 추가 이전 예제 확인 링크 : https://dschloe.github.io/de/2025/06/elk_install_sample_01/ 파이썬 코드 # 필요한 라이브러리들을 가져옵니다 import time # 시간 지연을 위한 라이브러리 import requests # HTTP 요청을 위한 라이브러리 from bs4 import BeautifulSoup # HTML 파싱을 위한 라이브러리 from elasticsearch import Elasticsearch # Elasticsearch 클라이언트 # ✅ Elastic Cloud 연결 (API 키 인증 방식) # Elastic Cloud의 클러스터에 API 키를 사용하여 연결합니다 # API 키는 사용자명/비밀번호 대신 더 안전한 인증 방식입니다 es = Elasticsearch( "your_cloud_url", # Elastic Cloud 클러스터 URL api_key="your_api_key" # API 키 ) # 저장할 인덱스 이름을 상수로 정의합니다 INDEX_NAME = "evan-elk-search" # ✅ 인덱스 생성 (존재하지 않으면 새로 생성) # Elasticsearch에서 데이터를 저장할 인덱스가 있는지 확인하고, 없으면 새로 생성합니다 if not es.

엘라스틱 서치 시작하기 - 예제 (2025, 06)

개요 엘라스틱 클라우드 활용 예제 확인 회원가입 회원가입 페이지 : https://cloud.elastic.co/ 필자는 Google 로그인을 통해 회원가입을 하였다. 가입 중간에 데이터 저장하는 공간이 있는데, 필자는 GCP를 선택하였다. 다음 화면에서는 다음과 같이 지정하였다. General Purpose 인덱스 명 : evan-elk-search 인덱스 명을 확인하면 다음과 같다. URL과 API 주소를 확인한다. URL : your_url your_api_key 설치 및 예제 확인 Windows 10 윈도우 설치 파일 : https://www.elastic.co/kr/downloads/elasticsearch 압축 파일을 해제하고 C 드라이브쪽으로 폴더를 이동시킨다. 폴더 경로 : C:\elasticsearch-9.

BigQuery 데이터 입출력 From Local TO BigQuery

개요 서비스 계정 추가 후, 데이터 업로드 GCP 서비스 계정 추가 IAM 및 관리자 > 서비스 계정 > 서비스 계정 만들기 선택 서비스 계정 이름은 각자 정한다. 필자는 lgu6th-bq-loader로 명명했다. 서비스계정 ID는 이메일 주소 ID를 사용한다. 만들고 계속하기 버튼을 클릭한다. 권한을 부여한다. BigQuery 관리자를 선택한다. 그 후 계속 버튼을 클릭한다. 그 후 완료 버튼을 클릭한다. 서비스 키 다운로드 다음과 같은 화면에서 키 관리 버튼을 클릭한다. 다음과 같은 화면에서 키 추가 버튼을 클릭한다.

GCP VM Connect to BigQuery using Streamlit (ver. 2025, 06)

개요 VM 만들기 Web UI가 일부 변경됨 (추가 진행하기로 함) VM 생성 및 VS Code 연결 VM과 BigQuery 연결 VM 머신 생성 머신 구성 이름과 성능 체크 월별 예상 가격을 체크한다. OS 및 스토리지 Ubuntu - Ubuntu 24.04 LTS 방식으로 진행 (x86/64) 방식 선택 디스크 사이즈 : 25GB 암호화 : Google 관리 암호화 키 선택 데이터 보호 이 부분은 생략하고 넘어간다. 네트워킹 방화벽은 아래와 같이 HTTP & HTTPS 트래픽 허용 보안 액세스 범위 : 모든 Cloud API에 대한 전체 액세스 허용 VM 생성 다음과 같이 만들기 버튼 클릭 고정 IP 할당 VPC 네트워크 > IP 주소 클릭 오른쪽 끝 작업 하단 메뉴 선택 후 고정 IP 주소로 승급 선택 다음과 같이 임의의 이름 지정

AWS EC2 Connect to S3, Streamlit Web (2025 june)

개요 EC2 접속을 할 수 있다. EC2에서 개발환경 설정을 할 수 있다. 회원가입 링크 : https://aws.amazon.com/console/ 아래 화면, 우측 상단을 보면 English를 Korean으로 변경 아래 화면에서 AWS 계정 생성 버튼 클릭 링크 : https://aws.amazon.com/ko/console/ 회원가입 진행 재 로그인 IAM user sign in Account ID : 12자리 숫자로 AWS 계정을 식별하는 고유 값이다. 같은 회사라도 계정마다 ID가 다르다. IAM User : 각 IAM User는 별도 패스워드·액세스키를 갖고, 정책으로 권한을 제한 Sign In 가입 EC2 생성 EC2 검색 및 클릭 인스턴스 시작 화면 가운데 인스턴스 시작 버튼 클 이름 : lgu-streamlit-server01 Ubuntu 설정 OS 이미지는 기본값 적용 새 키 페어 생성 키 페어 이름 : lgu-streamlit-server01 키 페어 생성 버튼 클릭 시, 프로젝트 경로에 위치 시킬 것 네트워크 설정 위 그림에서 편집 선택 및 다음과 같이 설정 (인바운드 보안 그룹 규칙) 스토리지 구성은 30GiB 정도로 진행 최종적으로 인스턴스 시작 버튼 클릭 다음과 같은 화면에서 인스턴스에 연결버튼 클릭 EC2 인스턴스에 연결 탭에서 연결 버튼 클릭 SSH 클라이언트 탭 클릭 VS Code에서 Extension 패키지인 Remote SSH 활용 할 것임 VS Code에서 Remote 접속 단축키 Shift+Ctrl+P, “>REMOTE SSH CONNECT TO HOST” Configure SSH Hosts 선택 C:\User\user.

Airflow 활용한 DB Insert 예제 (M1, MacOS)

개요 MySQL과 PostgreSQL에 각각 테이블 생성 후 데이터 넣기 아래와 같이 병렬적으로 실행하는 예제 시나리오 테이블과 데이터를 추가하되 두 DB에 대한 접근 방식이 다름 MySQL은 직접적으로 넣기 PostgreSQL은 Airflow를 통해서 데이터 넣기 환경설정 사전에 MySQL과 PostgreSQL이 설치가 이미 되어 있음을 가정한다. 파이썬 설치 uv : https://docs.astral.sh/uv/getting-started/installation/ 프로젝트 초기화 프로젝트 디렉터리에서 다음과 순차적으로 실행 $ uv venv -p 3.11 $ source .venv/bin/activate Airflow 설치 먼저 환경변수를 설정한다. $ export AIRFLOW_HOME=$(pwd)/airflow 셸 스크립트 작성 및 실행 다음과 같이 셸 스크립트 작성 파일명 : install_airflow.

Airflow 활용한 API 크롤링 및 이미지 다운로드 (M1, MacOS)

개요 Airflow 활용해서 이미지 다운로드 받기 예제 개발환경설정 MacOS, M1 Python uv 개발환경 설정 uv 설치 공식 싸이트 확인 링크 : https://docs.astral.sh/uv/getting-started/installation/#installation-methods curl -LsSf https://astral.sh/uv/install.sh | sh 가상환경 설정 다음과 같이 설정, 프로젝트 초기화 (Python 3.11 지정) $ uv venv -p 3.11 $ source .venv/bin/activate Python 버전 확인 $ python --version AIRFLOW_HOME 환경변수 지정 airflow는 환경변수에 예민하다. 프로젝트 디렉터리 경로에서 다음과 같이 추가 $ export AIRFLOW_HOME=$(pwd)/airflow $ echo $AIRFLOW_HOME /Users/evan/Desktop/your/project/directory/airflow 설치 스크립트 작성 파일명 : install_airflow.

Windows 11 GPU 개발환경 설정 (ver. 2025.04)

개요 내 PC의 GPU 환경 확인 부터 딥러닝 설치까지, Windows 11 환경에서 진행 실패 없이 한번에 설치가 되었다! 내 PC의 GPU 환경 확인 시스템 > 디스플레이 > 고급 디스플레이에서 확인 장치 관리자에서 확인 작업 관리자 > 성능 탭에서 확인 현재 NVIDIA GeForce RTX 4060 그래픽 카드 사용중인 것 확인 NVIDIA Driver 설치 설치 링크 : https://www.nvidia.com/en-us/drivers/ GeForce Game Ready Driver 다운로 다운로드 받은 파일 관리자 권한으로 실행 후, 다음 그림에서 OK 버튼 클릭 동의 및 계속 버튼 클릭 다음 버튼 클릭 설치 중 설치 완료 다음 화면에서 Game Ready 드라이버 선택 다음 선택 완료 CUDA Toolkit 설치 CUDA 지원, 성능, 코어 수 확인 링크 확인 : https://www.

MSSQL Connect to Python (ver. 2025.04)

개요 SSMS에 계정 추가 계정 추가 후 Python 라이브러리 활용해서 연동 계정 추가 먼저 Security(보안) > Logins(로그인)에서 마우스 우클릭 진행 New Login 선택 다음 화면에서 Loing Name은 evan-tester2 명명, Password는 1234로 지정함 Default Database는 BikeStores로 지정함 Enforce password policy 체크 박스 해제 (테스트용) 왼쪽 메뉴에서 User Mapping 메뉴 선택 하단 옵션에서 db_datawriter 옵션 선택 왼쪽 메뉴에서 Server Roles 선택 dbcreator, public, sysadmin 선택 선택이 완료되었다면 OK 버튼 클릭 사용자 계정이 하나 생성된 것 확인 가능 데이터베이스 수준 역할 각 DB 수준의 역할은 공식문서 참조 : 데이터베이스 수준 역할 서버 인증 방식 변경 서버에서 마우스 우클릭 Security 선택 후, SQL Server and Windows Authentication Mode 선택 확인 후 SSMS 종료 후 재실행 SQL Server Configuration Manager 구성 아래와 같이 접속 TCP/IP 사용 SQL Server 네트워크 구성 선택 SQLEXPRESS에 대한 프로토콜 선택 후, TCP/IP 사용 변경 IP 주소, 포트 번호 지정 IPALL의 TCP 포트번호를 1433으로 지정한다.