본문 바로가기

분류 전체보기123

히스토리,컨택스트 캐싱 이용하면서 히스토리 적용 1. 히스토리만 적용 (히스토리를 자동으로 관리 해주는 방식)일단 히스토리 적용 안하는이상 GEMINI는 사용자가 이전 질문한것들은 기억 못하고 오직 새질문만 받고 답한다.예를들어 처음 질문 "이 코드를 만들어 줘봐" 하고 응답 받고 그 다음 질문 "아까 만들어준 코드에서 이 기능도 추가해줘봐" 할시 GEMINI는 이전에 대한 질문,응답을 기억 못하니 "죄송합니다,전에 답변한 코드에 대한 정보가 없습니다" 이런식으로 답변한다.그러므로 이전 질문,응답에 대한 정보를 포함해서 새질문을 요청해야한다.#multi_turn1.pyimport google.generativeai as genai model = genai.GenerativeModel('gemini-1.5-flash')chat_session = mode.. 2024. 8. 8.
DB 조회시 인덱스 기능 알겠습니다. Spring 프로젝트에서 데이터베이스 쿼리를 실행할 때 JPQL을 이용하는 방법과 MyBatis를 이용하는 방법을 각각 설명하고, 인덱스 설정 및 활용 예시도 함께 제공하겠습니다.JPQL을 이용할 때인덱스 설정데이터베이스 테이블에 인덱스를 설정하려면 SQL을 사용합니다. 예를 들어, MySQL 데이터베이스에서 users 테이블의 username 컬럼에 인덱스를 추가하려면 다음과 같은 쿼리를 실행합니다.sqlCREATE INDEX idx_username ON users(username);JPQL로 조회Spring Data JPA를 사용하여 JPQL을 이용해 데이터를 조회할 수 있습니다. 1.엔티티 클래스 정의:@Entitypublic class User { @Id @Generated.. 2024. 8. 5.
엑셀에 있는 데이터를 PANDAS 이용해서 DB에 저장 일단 엑셀의 구조는 이렇게 있고,각인덱스 데이터마다 스페이스,매체,프로그램에 해당하는 태그들을 TB_EXHIT_TAG 테이블에 [ 플랫폼 라이브 인덱스  10 , 중정 인덱스 12 , 다원예술 인덱스 13] 일경우 밑에처럼 이렇게 삽입한다.905 / 10 / 현재시간905/ 12 / 현재시간905/ 13 / 현재시간    import pandas as pdimport mysql.connector# MySQL 데이터베이스 연결 설정db_config = { 'user': '계정이름', 'password': '비번', 'host': '호스트', 'port': 포트번호, 'database': 'DB이름'}# MySQL 연결conn = mysql.connector.connect(**db.. 2024. 8. 5.
이미지,동영상을 서버에 저장 안하고 바로 Gemini요청하기 클라가 이미지 업로드후 서버한테 요청할때 원래는 서버에 저장하고 Gemini한테 요청 했는데 이제 저장안하고 요청하고 클라한테 반환할때도 메모리에 임시 저장중인거를 반환한다.from flask import Flask, request, render_templateimport google.generativeai as genaifrom PIL import Imageimport base64@app.route('/submit', methods=['POST'])def gemini_question(): question = request.form['question'] # 파일 저장 경로 설정 # request.files['image']는 FileStorage 객체에 접근이고 실제로 읽으려면 read().. 2024. 7. 24.
파이썬 파일 SHA256해시 클라에서 요청할때마다 영상이 동일하면 캐싱하고 아니면 업로드하는데일단 이전 요청 동영상이랑 이후 요청 동영상이랑 동일한지 판별하려면 해싱후 하는방법이 있다.근데 영상의 제목으로만 하면 당연히 같은 영상인데 제목만 같을 수 도 있으니 파일 자체 읽어 해싱을 한다. def generate_file_hash(file_path): """파일의 SHA256 해시를 생성합니다.""" sha256_hash = hashlib.sha256() with open(file_path, "rb") as f: for byte_block in iter(lambda: f.read(4096), b""): sha256_hash.update(byte_bl.. 2024. 7. 23.
Flask,Gemini 에러 or 호환 관련 1)urllib3 라이브러리가 현재 사용 중인 SSL 라이브러리 버전과 호환되지 않음을 경고해서 urllib3 다운그레이드 하거나 OpenSSL 업그레이드한다.*urllib3 다운그레이드pip install urllib3==1.26.15#현재 설치된 버전 보기pip show urllib3#다시 되돌릴 경우(최신버전)pip install --upgrade urllib3#원하는 버전(예를들어 2.0.0 경우)pip install urllib3==2.0.0 *OpenSSL 업그레이드brew updatebrew install opensslbrew upgrade openssl 2024. 7. 19.
Flask,Gemini Flask 설치: 터미널에서 다음 명령어를 입력하여 Flask를 설치합니다pip install Flask app.py파일 생성후(이름은 자유이나 flask이름으로 하는것만 피하면 될듯)from flask import Flaskapp = Flask(__name__)@app.route('/about')def about(): return 'The about page'if __name__ == '__main__': app.run(debug=True) # 괄호안 host="현재 연결중인 네트워크ip주소" 적으면 현재 네트워크 사용중인 기기 모두 사용가능 이제 Gemini를 이용하려면 패키지 설치pip install google-generativeai Gemini 테스트로 json말고 text .. 2024. 7. 18.
파이썬 가상환경 맥북에 파이참을 깔고 장고 프로젝트 실행해보려했는데 장고 레스트 프레임워크나 다른 라이브러리등이 안깔려서 깔아야하는데 해당 프로젝트용 가상환경 만들고 이 프로젝트 전용 버전에 맞는 라이브러리들을 가상환경에서 관리하는거를 한다. 이렇게 프로젝트별 각자 다른 가상환경을 이용해야 서로 다른 프로젝트간의 라이브러리 버전등 충돌이 안일어난다만약 A,B,C프로젝트 있는데 A는 옛날 프로젝트, B,C는 최신 프로젝트일경우 이 3개가 같은 가상환경 공유해서 사용하고 라이브러리가 최신버전일경우 B,C는 최신이라 동작하나 A프로젝트는 옛날 프로젝트니 오류가 나고 동작 안할수도 있다.그래서 각 프로젝트마다 가상환경 생성하고 한다. 밑에는 예를들어 envA라는 이름 가상환경으로 하는거다.터미널로 해당 프로젝트 위치로 이동후c.. 2024. 7. 18.
css,JavaScript관련 1. css에서 해당 태그 위치 위로 이동시키기사진과 같이 원래는 셀렉태그 위에 줄선이 KR/EN에 가려져서 문제 였는데 이 셀렉태그를 감싼 div에서   margin-top이라는거를 사용해서 위치를 이동시킬 수 있었다! selected>Newest selected>Lowest Price selected>Highest Price selected>Name Order   2. slect 태그와 비슷한 검색기능까지 있는 datalist태그 사용먼저 html코드는 이거고block;"> 대관팀 선택 선택 밑에 등록 화면보면 유저의 인덱스까지 .. 2024. 7. 18.