주어진 텍스트에서 다양한 오류를 식별하고 수정하는 맞춤형 GPT 프롬프트 개발 진행:
- 대문자 및 오타 수정: 대문자 오류와 오타 수정.
- 문법 오류 수정: 문법적 오류 식별 및 수정.
- 잘못된 단어 교체: 부적절한 단어를 올바른 단어로 교체.
- 각 오류에 대해 original, fix, type 정보를 포함한 객체 출력. 정확한 프로그램적 수정 가능.
1. Nest.js 기반으로 구축된 백엔드:
- 서비스 계층: GPT 프롬프트 호출 및 텍스트 수정 작업 관리.
- 모듈 계층: 각 기능 모듈화, 유지 보수성 상승.
- 컨트롤러 계층: 클라이언트 요청 처리 및 서비스 계층 연동.
2. Express.js에서 Nest.js로 업그레이드
기존 Express.js에서 Nest.js로 업데이트 완료:
- 모듈 시스템 및 의존성 주입 활용: 코드 재사용성 상승, 테스트 및 유지보수 용이성 향상.
3. Yarn Berry 적용
- Yarn Berry 도입으로 패키지 관리 최적화
- 빠른 설치 속도 및 의존성 관리 효율성 상승.
- 주석이 달린 텍스트 표시: 대문자, 문법 수정, 잘못된 단어 교체 등 시각적 강조.
- 인터랙티브 편집: 사용자가 직접 수정 가능, 각 수정에 명확한 주석.
백엔드에서 받은 데이터를 기반으로 주석 동적 적용, 원활한 사용자 경험 제공.
- 프롬프트 사용 시 입출력 예제 없이 입력: 약 평균 800 ~ 1000 토큰 사용.
- 프롬프트 사용 시 입출력 예제와 함께 입력: 약 평균 2000 토큰 사용.
- 소모 비용 약 $0.00065445.
예제 입력 없이 동일한 출력 결과를 갖도록 예제를 수정
- HTML Tag, CSS Style 등 GPT에 넣을 경우 토큰 소모량이 크게 증가하는 데이터들을 전부 제거하여 텍스트만 추출하는 기능을 백엔드 서비스에 구현. 이를 통해 GPT 토큰 사용량을 감소.
- 소모량: 14,272 Tokens -> 1,489 Tokens
숙제 데이터에서 숙제 템플릿에 있는 질문 데이터를 비교하여 학생들의 답변만 남겨두는 로직을 개발.
플로우:
1. submission Data(원본 과제물 데이터) 전달
2. submission, homework data(과제 데이터) 비교
3. 학생 작성물만 추출(Filtered Data)
4. 불필요한 태그 삭제(Original Text)
5. Original Text를 GPT에 전달 후 첨삭 시작