대화 내용 저장하기(json)
RAG 챗봇 개선: stay 의도 구분 & 대화 로깅 배포 후 테스트를 하던 도중 문제를 발견했다. “상대 딜러가 솔저랑 소전인데 난 파라를 하고싶어 어떻게 해야지 이기면서 즐기는 게임을 할 수 있을까?” “난 애쉬로 계속 하고 싶은데 둠피 때문에 살기가 힘들어 어떻게 해야해?” 둘 다 사용자가 지금 영웅을 유지하겠다는...
RAG 챗봇 개선: stay 의도 구분 & 대화 로깅 배포 후 테스트를 하던 도중 문제를 발견했다. “상대 딜러가 솔저랑 소전인데 난 파라를 하고싶어 어떻게 해야지 이기면서 즐기는 게임을 할 수 있을까?” “난 애쉬로 계속 하고 싶은데 둠피 때문에 살기가 힘들어 어떻게 해야해?” 둘 다 사용자가 지금 영웅을 유지하겠다는...
Django 프로젝트 Docker 배포 정리 1. 서버 접속하기 로컬 PC에서 서버에 SSH로 접속한다. ssh 사용자id@접속IP ex) ssh ubuntu@123.123.123.123 접속하면 서버 안에서 프로젝트 폴더를 만들거나, 기존 프로젝트 폴더로 이동해서 작업하면 된다. 2. 현재 서버에서 실행 중인 포트 확인하기...
LangGraph로 RAG 챗봇 고도화하기 이전 글에서 기본적인 RAG 챗봇을 만들었다. 사용자가 질문하면 문서를 검색하고, LLM이 답변을 생성하는 단순한 흐름이었다. 그런데 실제로 사용해보니 한계가 있었다. “겐지 카운터 알려줘” → “모이라 어때?” 같은 후속 질문을 이해하지 못함 (대화 흐름 기억 없음) ...
RAG로 게임 가이드 챗봇 만들기 친구들과 함께 게임을 하게 되면 “이 캐릭터는 어떻게 운영해야 하는지”, “누구를 우선적으로 노려야 하는지”, “상성 관계가 어떻게 되는지” 와 같이 물어보며 나에게 계속 오더를 요청했다. 그냥 AI에게 물어보면 되지 않을까 싶지만 실제로 해보면 이런 문제가 있었다. 최근에 추가된 캐릭터 정보가 반영...
사용자 학습 패턴 분석 사용자의 퀴즈 풀이 패턴을 더 깊이 있게 분석하고 맞춤형 피드백을 제공하기 위해 기능 업데이트를 진행했다. 단순히 “맞았다/틀렸다”를 넘어 사용자가 어떤 유형(문법/어휘)에서 약한지, 빈칸을 채우는 데 몇 초가 걸렸는지, 어떤 오답을 적었는지 파악할 수 있다. 1. DB 설계 CREATE TABLE...
repository 연결 git init git remote rm origin git remote add origin "주소 입력" git pull origin main commit 하기 git add . git commit -m "commit message" git push -u origin main # git p...
JWT 정리 JWT는 여러 곳에서 활용할 수 있다. 나는 http security와 websocket interceptor에서 활용했다. websocket은 해당 글 에서 로직을 확인할 수 있다. 아래는 내가 작성했던 코드는 아니고 어떤식으로 작성한다 정도로 작성한 것이니 참고용으로만 확인한다. *내가 작성한 로직은 github 확인 F...
append는 리스트 자체가 요소로 들어가고 extend는 리스트를 풀어서 넣는다. list1 = [] list1.append([1, 2, 3]) list1.append([4]) list1.append([5]) print(list1) # [[1, 2, 3], [4], [5]] list2 = [] list2.extend([1, 2, 3]) list...
chirpy 설정 모음 Posted by _layouts/post.html에서 <a href="">haedal-uni</a> site.social.links[0] 대신 site.social.links[1] 로 변경(twitter에서 github로 변경) footer _includes/footer.html에서 {% if...
조건부서식 - 막대그래프 추가하기 *엑셀 시트 이름은 숫자형식으로 test를 진행했다. import openpyxl from openpyxl.formatting.rule import DataBarRule wb = openpyxl.load_workbook("test.xlsx") for sheet_name in wb.sheetnames: if...