개발/Backend5 LLM 기반 추천 시스템 백엔드 - LLM 추천 파트 추천에 대한 기능 중에서는 특정 유저에 대한 추천의 생성과 등록된 추천을 불러는 것의 두 가지 기능이 있다. 여기서는 추천의 생성 및 DB 등록만 알아본다. POST로 추천 생성 @app.post('/api/recommend')async def create_recommend(user_id: UserId, db: AsyncSession = Depends(get_async_db)): return await recommend_func(user_id, db) 아래는 llm_recommend.py에 있는 함수들이다. 우선 LLM을 활용한 추천을 위한 프롬프트를 준비한다.그 다음 프롬프트에 유저가 이전에 높은 별점을 매긴 영화 정보를 삽입한다.현재 서비스하고 있는, 다시 말해서 DB에 있는 영화로 한정하기 위.. 2025. 4. 25. LLM 기반 추천 시스템 백엔드 미들웨어 우선 CORS를 통해서 프론트엔드와의 연결을 허용한다.from fastapi import FastAPI# FastAPI 시작 app = FastAPI()origins = [ "http://localhost:5173", # Vite 개발 서버 "http://127.0.0.1:5173", # 다른 로컬 주소 "https://your-production-frontend.com" # 배포 환경에서는 실제 도메인]app.add_middleware( CORSMiddleware, #allow_origins=["*"], # 모든 도메인 허용 allow_origins=origins, allow_credentials=True, allow_methods=["*"].. 2025. 4. 25. SQLAlchemy 기초 개요SQLAlchemy는 파이썬으로 DB를 관리하는 패키지다. 이걸 모를 때는 쿼리를 아래와 같이 작성하고 query = """SELECT * FROM SAMPLE_TABLE WHERE TIMESTAMP """ sqlite로 db에 연결해서 excute하고 그랬는데 그럴 필요가 없다. Core 방식과 ORM (Object Relational Mapping)이 있다. Core:SQL의 표현에 가까운 방식low-level ORM:객체지향적인 방식high-level 이라고 한다. 우선 SQL과 유사한 Core 방식을 먼저 살펴본 다음에 ORM 방식을 살펴보기로 한다. 살펴볼 내용들 실습할 쿼리문들SELECTINSERTUPDAT.. 2025. 4. 23. FastAPI 기초 알아보기 FastAPI는 현대적이고, 빠르며(고성능), 파이썬 표준 타입 힌트에 기초한 Python의 API를 빌드하기 위한 웹 프레임워크라고 소개하고 있다. 쉽게 말해서 웹 개발 중에서 백엔드 파트를 파이썬으로 만들 수 있게 해주는 프레임워크다. 웹 개발을 하기 전에 RESTful API라는 개념을 알아야 한다. RESTful APIRESTful API는 REST(Representational State Transfer) 스타일을 따르는 API로 웹 서비스를 설계하고 구현하는 방법론이다. 초심자가 이해하기 쉬운거 같은 대략적인 특징 몇가지만 정리해보았다. 1. 리소스 (Resource) 중심 - 모든 것을 리소스(자원) 로 표현 (주로 복수형 명사 사용) - 각 리소스는 고유한 URI로 식별 .. 2025. 4. 20. 백엔드 기초 개념과 가이드 라인 백엔드 (Backend):웹 어플리케이션이나 소프트웨어의 서버 측 구성 요소사용자에게 직접 보이지 않지만 앱의 핵심 로직을 처리하고 데이터를 관리한다. 1. 주요 기능: - 데이터 처리 및 저장 - 비즈니스 로직 구현 - API 제공 - 보안 및 인증 관리 - 프론트엔드와의 통신 2. 주요 구성 요소: a) 서버: - 웹 서버 (예: Nginx, Apache) - 프론트엔드 서버 - 어플리케이션 서버 (예: Tomcat, Gunicorn) - 백엔드 서버. 웹 제공 - API 서버 - 데이터 통신, 즉 DB 접근 목적 b) 데이터베이스: - 관계형 DB (MySQL, PostgreSQL 등등) - NoSQL DB .. 2025. 3. 30. 이전 1 다음