AI, 클라우드, 협업, 문서, 자동화16 간단한 RAG(Retrieval Augmented Generation) 기반 챗봇 서비스 아래의 Flask 애플리케이션 코드는 Qdrant 벡터 데이터베이스와 OpenAI API를 연동하여 간단한 RAG(Retrieval Augmented Generation) 기반 챗봇 서비스를 구현한 것입니다. 각 부분에 대한 상세 정리와 함께, 더 좋은 코드가 되기 위한 개선 사항 및 추가 코드를 정리합니다.1. 코드 전체 해설이 코드는 크게 세 가지 주요 구성 요소로 나뉩니다: Flask 웹 서버, Qdrant 벡터 데이터베이스 클라이언트, OpenAI API 클라이언트.1.1. 초기 설정 및 클라이언트 초기화from flask import Flask, request, jsonify # Flask 웹 프레임워크 관련 모듈from qdrant_client import QdrantClient # Qdran.. 2025. 7. 20. 벡터DB, Qdrant를 활용한 벡터 검색 워크플로우 정리 세 가지 Python 코드는 Qdrant 벡터 데이터베이스를 활용한 기본적인 벡터 검색 워크플로우를 보여줍니다. 각 코드가 어떤 역할을 하는지, 그리고 전체적인 흐름은 어떻게 되는지 상세히 정리합니다.전체 워크플로우 개요이 세 가지 코드는 다음과 같은 순서로 실행되어야 하며, 각기 다른 역할을 수행합니다.첫 번째 코드: Qdrant에 벡터를 저장할 **컬렉션(Collection)**을 생성합니다.두 번째 코드: OpenAI 임베딩 모델을 사용하여 텍스트를 벡터로 변환한 후, 이 벡터들을 생성된 컬렉션에 **삽입(Upsert)**합니다.세 번째 코드: 새로운 텍스트를 벡터로 변환한 후, 이 쿼리 벡터와 가장 유사한 벡터들을 컬렉션에서 **검색(Query)**합니다.이 과정은 RAG(Retrieval Aug.. 2025. 7. 20. 벡터DB, Qdrant 컬렉션 검색 코드 설명 Qdrant 컬렉션 검색을 위한, 파이썬 코드를 바탕으로 각 부분의 의미와 전체적인 동작 흐름을 상세히 설명합니다.1. 코드의 의미이 코드는 Qdrant 벡터 데이터베이스에 연결하여, 미리 정의된 test 컬렉션에서 특정 query_vector와 유사한 상위 2개의 포인트를 검색하고, 그 결과(ID, 벡터, 페이로드, 점수)를 출력하는 기능을 수행합니다.from qdrant_client import QdrantClient # Qdrant 서버와 통신하기 위한 클라이언트 라이브러리를 가져옵니다.from qdrant_client.models import Distance, VectorParams, PointStruct # Qdrant 모델 정의를 가져옵니다.# Distance: 벡터 간 거리 측정 방식 (예:.. 2025. 7. 20. Qdrant 컬렉션에 포인트(Vector & Payload) 삽입 코드 설명 Python 코드는 Qdrant 컬렉션에 실제 데이터인 **포인트(Point)**를 삽입(Upsert)하는 예시입니다. 각 부분의 의미와 실행 방법, 그리고 올바른 결과를 상세히 설명합니다.1. 코드의 의미이 코드는 test라는 이름의 Qdrant 컬렉션에 두 개의 포인트(벡터와 페이로드)를 삽입하거나 업데이트합니다. upsert는 "Update"와 "Insert"의 합성어로, 해당 id를 가진 포인트가 이미 존재하면 업데이트하고, 없으면 새로 삽입합니다.from qdrant_client import QdrantClient # Qdrant 서버와 통신하기 위한 클라이언트 라이브러리를 가져옵니다.from qdrant_client.models import Distance, VectorParams, Point.. 2025. 7. 20. Qdrant 벡터 데이터베이스에 새로운 컬렉션(Collection)을 생성하는 예시 아래 Python 코드는 Qdrant 벡터 데이터베이스에 새로운 컬렉션(Collection)을 생성하는 예시입니다. 각 부분의 의미와 실행 방법, 그리고 올바른 결과를 상세히 설명합니다.1. 코드의 의미이 코드는 Qdrant 클라이언트를 사용하여 test라는 이름의 새로운 컬렉션을 생성합니다. 이 컬렉션은 2차원(dimension) 벡터를 저장하며, 벡터 간의 유사도를 측정할 때 코사인 유사도(Cosine Distance) 방식을 사용하도록 설정됩니다.from qdrant_client import QdrantClient # Qdrant 서버와 통신하기 위한 클라이언트 라이브러리를 가져옵니다.from qdrant_client.models import Distance, VectorParams # Qdran.. 2025. 7. 20. React 기본 사용법 React의 기본적인 동작 방식, React Router를 이용한 페이지 라우팅, 그리고 Redux Toolkit을 활용한 상태 관리 방법에 대해 상세히 설명합니다. 각 파일이 어떤 역할을 하는지 이해하시면 React 프로젝트의 구조와 흐름을 파악하는 데 도움이 될 것입니다.1. index.js 파일 : React 앱의 시작점index.js는 React 애플리케이션의 가장 첫 번째 진입점입니다. 웹 페이지의 HTML과 React 컴포넌트를 연결하고, 전역적으로 필요한 설정(라우터, 상태 관리 등)을 적용하는 역할을 합니다.import React from 'react'; // React 라이브러리를 가져옵니다. JSX 문법을 사용하기 위해 필수적입니다.import ReactDOM from 'react-do.. 2025. 7. 14. 이전 1 2 3 다음