![[Python] JWT 구현](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqnSgc%2FbtsL2TtcwH5%2FYCNli2y8T3mMD6yqJZ4esk%2Fimg.png)
Python으로 JWT 인증 서비스 구현하기JWT(Json Web Token)는 웹 애플리케이션에서 인증(Authentication)과 권한 부여(Authorization)를 위해 널리 사용되는 토큰 기반 인증 방식임. Python을 사용하여 JWT를 생성하고 검증하는 간단한 AuthenticationService 클래스를 구현하는 방법을 소개함. 이 코드는 Django 프로젝트 환경을 가정하며 PyJWT 라이브러리를 사용함.JWT란?JWT는 JSON 형식의 데이터를 Base64로 인코딩한 문자열로, 안전한 정보 교환을 위해 주로 사용됨. JWT는 크게 세 가지 부분으로 구성됨:Header: 토큰 유형과 알고리즘 정보Payload: 사용자 정보 및 클레임(Claims)Signature: 토큰 무결성을 보..
![[Django] Django + OpenAI API 스트림 출력: Nginx 설정으로 실시간 출력 해결하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FchS7qQ%2FbtsLmNm2sBK%2FgKpZ9XNSkMi9CVki721y8k%2Fimg.png)
Django에서 OpenAI API로 LLM 스트림 출력 시 실시간 출력 문제 해결AS-IS문제상황 인지Django를 사용하여 OpenAI API로 LLM의 스트림 출력 구현 시, HTML에서 실시간 출력이 되지 않는 문제 발생 해결하려고 하는 문제스트림 데이터를 HTML에서 지연 없이 실시간으로 출력 만들고 싶은 기능OpenAI API의 스트림 결과를 HTML 화면에 실시간으로 출력 Challenge문제해결을 위해 고민한 내용 Django에서 OpenAI API를 사용해 스트림 데이터를 반환 HTML에서 서버로부터 전달된 스트림 데이터를 실시간으로 렌더링 Nginx를 사용한 리버스 프록시 설정 문제 확인 어떻게 기술적으로 해결했는지Nginx 설정에서 proxy_buffering 옵션이 켜져..
![[AT] Django Middleware Slack Webhook](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcu0hBu%2FbtsKZ5oZcau%2FIeyBi5XWKqgap8WRLSXzp0%2Fimg.png)
Django Middleware를 활용한 에러 알림 구현AS-IS문제 상황 인지Django 프로젝트에서 발생하는 에러를 실시간으로 파악하지 못해 대응 속도가 느림.해결하려고 하는 문제에러를 실시간으로 감지하고 알림을 보내는 방법이 필요함.만들고 싶은 기능에러 발생 시 DB에 로그를 기록하고, Slack으로 알림을 전송하는 시스템.Challenge문제 해결을 위해 고민한 내용Django 에러를 효과적으로 감지하기 위해 적합한 구조를 선택해야 했음.Slack Webhook API를 활용하여 알림을 전송하는 효율적인 방법 구현.어떻게 기술적으로 해결했는지Django의 Middleware와 process_exception 메서드를 활용해 에러를 감지.Python의 logging 모듈로 에러를 DB에 기록.Sla..
![[Django] ORM](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWArqm%2FbtsKDS3sBc0%2FGnXvwfwjgP00XoKmMrfVG0%2Fimg.png)
Django ORM 활용법Django ORM(Object-Relational Mapping)은 Django 프레임워크에서 데이터베이스를 쉽게 다룰 수 있도록 도와주는 기능임. SQL을 직접 작성하지 않고도 Python 코드로 데이터베이스를 조작할 수 있어 효율적임. 1. 데이터 필터링 (Filtering Data)데이터베이스에서 특정 조건에 맞는 데이터를 필터링하는 방법.# 특정 조건으로 데이터 필터링from myapp.models import MyModel# 예: name 필드가 'Alice'인 데이터 필터링filtered_data = MyModel.objects.filter(name='Alice')filter() 메서드를 사용해 특정 조건에 맞는 데이터를 조회함. 여러 조건을 결합하여 사용할 수도 있..
![[TIL] 2024-11-08(Django)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7nbv7%2FbtsKDhvvb6T%2F1wJpKAd9NeEAYxZ59bC3aK%2Fimg.jpg)
Today I Learned (2024-11-08)목차Today I Learned (2024-11-08)오늘 공부한 내용1. KDT(중간 프로젝트)영어 문장 생성하기(예문)2. DjangoORM어려웠던 내용궁금한 내용과 부족한 내용느낀 점오늘 공부한 내용1. KDT(중간 프로젝트)영어 문장 생성하기(예문)기존의 단어장을 참조하도록 해서RAG 방식으로 예문을 생성하도록함.1시간 30분 걸려서 1300개 예문을 생성했지만팀에서 만든 예문 검증 알고리즘으로 검사하니10% 정도만 생존...다른 임베딩 모델 고려(HuggingFace)2. DjangoORMORM에 대한 내용은 따로 글로 작성할 예정어려웠던 내용RAG 모델궁금한 내용과 부족한 내용어떻게 하면 좋은 답을 얻을 수 있을까.느낀 점어렵다 쉽지 않아. -->
![[TIL] 2024-11-07 (EduTech/Django)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fu2rqH%2FbtsKzoiHuUH%2FiORnROSsjv3OIkLD5E9Sk0%2Fimg.jpg)
Today I Learned (2024-11-08)목차Today I Learned (2024-11-08)오늘 공부한 내용1. KDT (세미나)에듀테크의 활용지식 추적학습 추천2. Django어려웠던 내용궁금한 내용과 부족한 내용느낀 점오늘 공부한 내용1. KDT (세미나)에듀테크의 활용AI는 에듀테크에서 필수가 아니다.에듀테크의 활용데이터 : 텍스트, 영상, 음성, 행동, 문제 풀기기술 : 지식 추적(Knowledge Tracing), 추천 알고리즘, 문항 반응 이론(IRT), 컴퓨터 적응 평가(CAT), 광학 문자 인식(OCR), 학습 챗봇(LLM, RAG)활용 : 맞춤 학습 경로 제공, 실시간 피드백 제공, 학습 동기 촉진, 교수 전략 개선, 학습 부진 조기 검진지식 추적학습자의 풀이 이력을 활용하여..
![[Django] DTL(Django Template Library)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQRy1d%2FbtsKyG4ji6z%2FAlmlmkGsHGHeka9CYNOcF0%2Fimg.png)
Django Template Language (DTL) 이해하기Django Template Language(DTL)는 Django에서 템플릿을 작성할 때 사용하는 언어임. HTML에 데이터를 삽입하여 동적 웹 페이지를 만들 수 있도록 도와줌.DTL의 기본 구조DTL은 템플릿 파일에서 변수 출력, 조건문, 반복문 등을 지원함. 일반적인 HTML 파일에 {{ }}와 {% %} 문법을 통해 파이썬 코드를 삽입하는 방식임.1. 변수 출력{{ }} 구문을 사용하여 변수 값을 출력할 수 있음. 예를 들어, 뷰에서 전달된 변수 name을 출력하려면 아래와 같이 작성함.Hello, {{ name }}!2. 필터 사용DTL은 텍스트나 변수에 대해 다양한 필터를 제공함. 예를 들어, 문자열을 대문자로 변환하는 upper ..
![[TIL] 2024-08-12 (Django)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkxKJ3%2FbtsI2qA2WD2%2FDHqfFq0fG9Qyy5K4WNMPkK%2Fimg.jpg)
Today I Learned (2024-08-12)목차Today I Learned (2024-08-12)오늘 공부한 내용1. KDT (django)django(장고) 란?django의 구조django의 특징어드민 페이지 지원2. 유튜브 기초통계학모집단과 표본추출표본추출 방법어려웠던 내용궁금한 내용과 부족한 내용느낀 점오늘 공부한 내용1. KDT (django)django(장고) 란?파이썬 웹 프레임워크이다.django의 구조MTV 아키텍쳐이다.Model(모델)Template(템플릿)View(뷰)django의 특징ORM(Object-Relational Mapping)쉽게 말해서 객체와 관계형 데이터베이스를 연결하는 역할을 한다.데이터베이스를 더 편리하게 다루기 위한 도구개발자가 데이터베이스와 소통할 때 일..