서버 중간에 간섭하고 싶은 경우, Middleware 를 사용하시면 됩니다. 요청, 응답 사이에 간섭하는 것을 middleware 라고 부릅니다. import { NextResponse } from 'next/server' export async function middleware(request) { console.log(request.nextUrl) // 유저가 요청중인 URL console.log(request.cookies) // 유저가 보낸 쿠키 console.log(request.headers) // 유저의 headers 정보 NextResponse.next() // 통과 // NextResponse.redirect() // 다른페이지 이동 // NextResponse.rewrite() // 다..
2023년 11월에 openai api 에서 나온 어시스턴트 API 로 나만의 AI 챗봇을 만들 수 있습니다. 스레드를 이용하여 대화를 계속 이어 나아갈 수 있으며, 코드 실행, 파일 업로드, 문서 검색 등의 도구 사용도 가능합니다. 어시스트 => 스레드 => 메세지 => Run 순으로 만드시면 됩니다. 스레드에 메세지를 저장하고, 사용자, 어시스트간의 메시지를 추가만 하면 됩니다. Run 에서 계속 실행이 되며, 위에 과정은 스레드 안에서 실행은 한 상태며 응답을 주고 받습니다. 그렇기 때문에 어시스트, 스레드는 한 번 만들면 메시지만 추가하기만 하면 됩니다. 내 어시스턴트를 만들 때 성격과 목표를 주면 해당 역할에 맞춰서 움직이며 사용자와 어시스턴트간의 메세지를 주고 받을 수 있다. 쉽게 말해 나만의..
GPT-4 비전 모델을 사용하면 단일 API 호출로 텍스트와 이미지 등 멀티모달 입력을 해석할 수 있습니다. 이미지가 모호하거나 불분명하면 모델이 최선을 다해 해석은 하지만, 결과의 정확도는 떨어질 수 있습니다. 현재 지원되는 파일 형식 (png, jpeg, jpg, webp, gif) 입니다. 이미지 용량은 20mb 로 제한되어 있습니다. 모델이 이미지를 처리한 뒤, 이미지는 자동삭제됩니다. 오래 실행되는 대화의 경우, base64 대신 URL 을 통한 이미지를 전달하는 것이 좋음. 이미지 크기를 예상되는 최대 크기보다 작게 다운사이딩하면 지연 시간을 개선할 수 있음. 참조: https://platform.openai.com/docs/guides/vision 비용 계산 이미지 입력에는 텍스트와 마찬가지..
openai api 에서 제공하는 DALL-E 3 를 이용한 이미지 생성 방법 입니다. 아래는 간단한 소개입니다. 텍스트 프롬프트를 기반으로 처음부터 이미지 생성(DALL-E 3, DALL-E 2) 새 텍스트 프롬프트에 따라 모델이 기존 이미지의 일부 영역을 대체하도록 하여 이미지의 편집된 버전 생성(DALL-E2) 기존 이미지의 변형 만들기 (DALL-E 2) 텍스트를 이용한 이미지를 생성 후, URL or Base64 로 받을 수 있습니다. URL 은 1시간보장됩니다. 예제 import openai from "@/config/openai"; export default async function (req, res) { const response = await openai.images.generate({..
Embedding 주어진 텍스트에 대한 임베딩을 만들어주는 모델로, 두 문장의 임배딩 유사도를 계산함으로서 문맥적 검색을 수행할 수 있습니다. 즉 챗봇이 대답하고자 하는 내용을 포함한 FAQ 가 있다고 가정하면, 이를 임베딩 벡터 데이터베이스로 만들어두고, 사용자의 요청을 벡터화 해서 임베딩 벡터 데이터베이스의 벡터들과 유사도를 측정, 가장 유사한 내용을 가지고 오는 것입니다. 동작 플로우 이해를 돕기 위한 동작 플로우 입니다. (질문, 대답) (검색, 결과) 등의 데이터셋 준비 임베딩할 데이터를 특정 기준으로 묶어서 text 화를 합니다. 생성된 임베딩을 사용하여 검색, 추천, 시각화 등의 작업을 수행할 수 있음 임베딩 만들기 OpenAI 권장 모델: text-embedding-ada-002 impor..
지표 모니터링 이유 지표를 모니터링하는 이유는 현재 seo 지표가 우리가 목표로 하는 것에 잘 가고 있는지, 아니면 빠른 트러블 슈팅을 하기 위함입니다. 특히 콘텐츠 서비스 특성상 콘텐츠를 보고 들어오는 자연 유입 트래픽을 올려야 하기 때문에 모니터링은 필수 항목입니다. 검색 결과를 만드는 3가지 단계 1. 크롤링: 봇이 웹페이지의 콘텐츠를 복사하여 검색엔진으로 가져옴. 2. 인덱싱: 가져온 콘텐츠를 주제별로 색인 3. 랭킹: 색인된 콘텐츠에 순위를 부여하여 결과로 제공 위와 같은 방식에 문제가 생기는 경우, 또는 색인이 생성되지 않은 경우를 잘 체크해주어야 합니다. seo 지표란 현재 웹사이트에 대한 검색결과에 대한 실적을 보여줍니다. 총 클릭수, 노출 수, 평균 CTR, 개제 순위 이며 구글 기준으로..
- Total
- Today
- Yesterday
- cors
- 스벨트
- nextjs14
- dockerfile
- 타입스크립트
- AWS
- docker
- Vite
- Storybook
- vue composition api
- 깃허브
- nuxt2
- Github Actions
- Embedding
- vscode
- 서버 to 서버
- 티스토리챌린지
- 오블완
- nextjs13
- webpack
- 네이버 서치 어드바이저
- Git
- NextJS
- openAI
- React
- NUXT
- seo
- vue router
- nodejs
- svelte
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |