전체 글 (1190) 썸네일형 리스트형 이직에 대해서 1. 퇴사(라쓰고 layoff 라 읽는다)솔직히 회사에 실망감이 너무나 컸다.방관하는 상사, 무조건 안된다는 회사, 의미 없는 일, 전혀 성장하지 않는 시간들일하는척하면 돈은 들어오지만 이 회사에 오래 다니고 싶은 생각은 1도 없었다더 정확히는 성장 할 수 없다는 걸 회사 첫날 알았을때부터 이직을 준비 했다.(이렇게 빨리 이직을 준비한 회사는 아마 없을것이다. 회사 출근한지 1시간 30분 만에 이직을 준비했다. - 특히 HR이 최악이였다.) 사람이 많고, 대기업이라고 해도 좋은게 아닌건 알고는 있었다. 대기업이 처음도 아니였고.회바회 / 팀바팀 / 사바사 이니까하지만 무의미한 시간들이 내 인생을 채워질때마다 새로운걸 갈망하는 마음은 언제가 커진다. 백엔드개발자에게 기획과 AI를 시키면서 "자신감을 가지고.. kafka -> fluentd -> kafka 로 데이터 전송하기 (local) 이번에 받은 업무가 kafka에 로그 데이터가 있는 것을 fluentd로 consumer 하고 kafka로 다시 전송하는 작업을 진행하기 전에 local에서 테스트 한 코드를 여기에 적는다. (실제 적용은 pub/sub -> fluentd -> kafka 로 되어 있다.) 1. kafka docker-compose로 실행하기 $docker-compose up으로 바로 실행version: '3.8'services: zookeeper: image: confluentinc/cp-zookeeper:7.5.0 container_name: zookeeper environment: ZOOKEEPER_CLIENT_PORT: 2181 ZOOKEEPER_TICK_TIME: 2000 .. Elasticsearch k-NN 알고리즘 자연어 처리(NLP) 시스템, 추천 엔진, 검색 기반 시스템과 같은 머신 러닝(ML) 애플리케이션을 구축할 때, 일정 수준 이상의 규모가 되면 k-Nearest Neighbor(k-NN) 검색을 활용된다. 데이터가 수억 개에서 수십억 개까지 늘어나면, k-NN 검색을 확장하는 것이 큰 도전 과제가 된다.이러한 문제를 해결하기 위해 Approximate k-Nearest Neighbor (ANN) 검색이 등장했다. ANN은 k-NN 문제의 일부 제약을 완화함으로써 검색 속도를 획기적으로 줄일 수 있는 방법을 제공한다. 벡터 검색을 이해하는 쉬운 방법은 전통적인 어휘 검색(Lexical Search) 과 비교해보자. 우리가 익숙한 엘라스틱서치의 어휘 검색은 사용자가 입력한 단어나 그 변형(어간, 동의어 등).. airflow + dbt 를 활용한 데이터 파이프라인 데이터 웨어하우스에서 데이터를 변환하고 모델링하는 작업은 SQL을 작성하고, 파이프라인을 구축하고, 테스트하는 모든 과정하나하나 코드로 작성해야 했다. 나의 경우엔 예전에 포스팅했던 NES(notebook 환경)를 통해서 데이터 파이프 라인 작업을 하지만 가장 큰 문제가 정합성과 테스트가 문제였다. (+데이터 카탈로그의 부재도 한몫한다)파이썬 + sql + numpy로 동작하는 작업에서 저장되는 데이터가 한곳이 아닌 여러곳이였으며(심지어 외부 저장소도 있었다.. ) 데이터 정합성과 실패에 대한 대책을 코드로 하다보니, 데이터 칼럼이 변경되거나, 로직이 변경되면 난리도 아니였다. (변경되는 해당 칼럼이 적용된 파이프라인만 찾는것도 하루가 걸린적이..)그래서 찾아보다가 dbt를 사용해서 transform을.. 인터넷 연결이 안되었는데 youtube 페이지는 어떻게 나오는걸까? 1. 인터넷을 연결해주세요나는 항상 모뎀을 끄고 다닌다. 굳이 내가 없는 집에 전기세가 아까우니까. 집에 와서 컴퓨터를 키면 몇 초 정도 인터넷이 되지 않아, 유투브에 들어가면 위와 같은 화면이 나를 반긴다. 근데...인터넷이 연결되지 않았는데 어떻게 화면이 그려지지??? 답은 캐싱이다. 더 정확히는 서비스 워커를 이용한 캐싱이다. 서비스 워커는 웹사이트의 리소스(HTML, CSS, JavaScript, 이미지 등)를 브라우저의 캐시에 저장하고, 오프라인 상태에서도 이 캐시된 리소스를 사용할 수 있게 한다. 유투브 이름으로 된 저장소를 보면 offline상태에서 실행되는 js를 확인할수 있다. 2. 서비스 워커(Service Worker)서비스 워커는 웹 애플리케이션의 성능을 향상시키고, 오프라인 기능.. [3] 이력서 챗봇 만들기 - postgreSQL pg_vector LLM에서 출력되는 벡터를 저장하고 검색하기 위해서 postgreSQL을 사용하여 벡터 검색을 하려 한다.먼저 postgreSQL은 RDS를 사용할것이다! (1년간 무료!)접속은 ec2에서만 접근가능하도록 퍼블릭 연결은 차단한다.1. 설치 ec2에서 먼서 postgreSQL 패키지 설치를 해야 한다.pgvector extension를 ec2에 설치 후 해당 설치 파일을 postgreSQL에 설치하는 방식이다.$ sudo apt update$ sudo apt install postgresql postgresql-contrib### pgvector 직접 설치$ sudo apt install postgresql-server-dev-16$ cd /tmp$ git clone --branch v0.8.0 https.. fastapi로 server sent event 구현 실습 실시간 주식 데이터를 제공하는 서비스를 생각해보자. 해당 데이터는 주식 시작과 함께 끊임없이 데이터가 변경된다. 그리고 해당 화면을 보는 유저는 계속해서 데이터를 제공받아야 한다.클아이언트와 서버 개발자는 이걸 어떻게 개발해야 할까? (1초마다 데이터를 갱신한다고 가정하겠다.) 아마도 아래의 두가지를 생각할수 있다.1. 1초마다 서버에 get 요청을 받은 후 화면 갱신2. 스트림 데이터를 통해 1초마다 데이터를 받은 후 화면 갱신 1번 "1초마다 서버에 get 요청을 받은 후 화면 갱신" 일 경우 http 커넥션이 계속해서 발생하게 된다. 통신은 기본적으로 steless이므로 서버는 어떤 사용자가 어떤 데이터를 원하는지 계속해서 탐색해야 하는 상황이 된다. 2번 "스트림 데이터를 통해 1초마다 데이터.. [2] 챗봇 프론트 화면을 만들어보자. 이번에는 리액트로 간단한 채팅 창을 만들어보고 배포하려고 합니다.간단하게 챗GPT의 화면과 비슷하게 만들었습니다. 1. 리액트 코드 먼저, 프로젝트를 설정하기 위해 다음 명령어를 사용하여 새로운 리액트 애플리케이션을 생성npx create-react-app chat-appcd chat-app src/App.jsimport React, { useState, useEffect, useRef } from "react";import "./App.css";function App() { const [messages, setMessages] = useState([]); const [inputValue, setInputValue] = useState(""); const messagesEndRef = useRef(.. 이전 1 2 3 4 ··· 149 다음