전체 글
![검색 증강 생성(RAG)이란?](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FB6qoK%2FbtsJ7434tVI%2F36hyh9JE4KVzuVQkG5nzMK%2Fimg.png)
검색 증강 생성(RAG)이란?
RAG(검색 증강 생성)는 데이터베이스와 같은 기존 정보 검색 시스템의 강점과 생성형 대규모 언어 모델(LLM)의 기능을 결합한 AI 프레임워크입니다. AI는 이러한 추가 지식과 자체 언어 기술을 결합하여 사용자의 특정 니즈에 맞는 보다 정확하고 최신 상태의 텍스트를 작성할 수 있습니다. 검색 증강 생성은 어떻게 작동하나요?RAG는 생성형 AI 출력 향상에 도움이 되는 몇 가지 주요 단계로 작동합니다. 검색 및 사전 처리: RAG는 강력한 검색 알고리즘을 활용하여 웹페이지, 기술 자료, 데이터베이스와 같은 외부 데이터를 쿼리합니다. 검색된 관련 정보는 토큰화, 어간 추출, 금지어 제거 등의 사전 처리 과정을 거칩니다.생성: 사전 처리된 검색 정보가 선행 학습된 LLM에 원활하게 통합됩니다. 이러한 통합을..
[ELK] Elasticsearch SSL 인증서 발급
Elasticsearch Node (transport) SSL 인증서 설치 및 적용1. CA 인증서 생성> bin/elasticsearch-certutil ca2. CA 인증서 기반으로 인증서 생성> bin/elasticsearch-certutil cert --ca [CA인증서 파일명]3. config/elasticsearch.yml 파일 수정config/elasticsearch.yml 에서 ssl 인증서 파일 경로 변경4. elasticsearch.keystore에 인증서 비밀번호 변경(추가)> bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password> bin/elasticsearch-keystore add ..
[ELK] Reindex 적용
새로운 데이터 스트림 생성PUT /_data_stream/logs-errpt-infra-test 해당 index를 새로운 데이터 스트림에 reindex 시킴POST _reindex?wait_for_completion=false{ "source": { "index": ".ds-logs-errpt-infra-2024.08.19-000012" }, "dest": { "index": "logs-errpt-infra-test", "op_type": "create" }}동일한 데이터스트림에서 reindex 시도 시 이미 존재하고 있는 index 때문에 정상적인 수행이 안됨.따라서 새로운 인덱스에 reindex를 임시로 수행op_type : create 없이 진행한다고 해도 추천하는 방법이 아님 여기서 ind..
[ELK] Logstash JDBC 설정
jdbc { jdbc_connection_string => "jdbc:postgresql://localhost:5432/test" jdbc_user => "test" jdbc_password => "test" jdbc_driver_class => "org.postgresql.Driver" jdbc_driver_library => "D:\elastic-logstash\logstash-8.10.2\lib\postgresql-42.6.0.jar" statement => "select * from pgdb12.ora_alarm_history where time > now() - interval '5 min'" jdbc_pool_timeout => 300 ..
[ELK] Elasticsearch Bool 복합 쿼리
must : 쿼리가 참인 도큐먼트들을 검색합니다.must_not : 쿼리가 거짓인 도큐먼트들을 검색합니다.should : 검색 결과 중 이 쿼리에 해당하는 도큐먼트의 점수를 높입니다.filter : 쿼리가 참인 도큐먼트를 검색하지만 스코어를 계산하지 않습니다. must 보다 검색 속도가 빠르고 캐싱이 가능합니다.
![랭체인과 LLM에 대해](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdBTZbY%2FbtsH2akWbKI%2FD36yK7wlE9N4nKQCjTXry0%2Fimg.png)
랭체인과 LLM에 대해
챗GPT가 쏘아올린 인공지능(AI) 열풍이 여전히 뜨겁다. 보다 정확히 말하면 챗GPT가 쏘아올린 대형 언어 모델(Large language model, LLM) 열풍이라고도 할 수 있겠다. 내로라하는 빅테크들이 너도나도 생성형 AI를 이야기하며 앞다퉈 시장에 뛰어들고 있다. 그리고 그 중심에는 LLM이 있다. 혜성처럼 등장한 챗GPT 이후 다양한 LLM이 개발되고 공개됐다. 구글이나 오픈AI 등 업계 대표 기업들이 폐쇄적인 생태계를 구축하며 독자적인 모델 성능 개선에 열을 올리는 가운데, 오픈소스 진영에서도 유사한 LLM들이 하나둘씩 선보여지고 있다. 특히 메타가 자체 LLM ‘라마 2(Llama 2)’를 오픈소스로 공개한 기점을 시작으로 LLM을 내놓는 기업들이 크게 늘어났다. 이렇듯 최근의 트렌드는..
[ELK] Elasticsearch Watcher 설정
회사에서 ELK를 통한 알림 시스템을 구축하려고 하는데 Alerting 및 Watcher 기능을 살펴보려고 한다. Alerting : kibana 에서 발생시킴Watcher : Elasticsearch 에서 발생시킴 Alerting Kibana 8.10.2 기준으로 Kibana에서 Alerting 설정은 Rules을 만들어서 알림을 발생시키는데 GUI 기반으로 편하게 만들 수 있는 장점이 있다. 다양한 임계값 설정과 알림 예시들이 많아서 쉽게 사용가능하고 QueryDSL도 사용가능해서 검색옵션을 풍부하게 할 수 있다. 하지만 여러개의 인덱스를 통해 조건을 거는건 불가능하며 간단한 알림 설정을 할 때 유용하다. Watcherwatcher는 Alerting 보다 더 자세하게 알림을 만들 수 있다. Watc..