Skip to content

Neordinary4th-TimeTravel/TimeTravel_Server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

TimeTravel_Server

image

[2023 4th Ne(o)rdinary HACKATHON]

우리들의 추억여행

Project Name : TimeTravel

Subject : 네버랜드 신드롬, openAI를 활용해 과거와 현재를 이어주자

Project execution period : 2023.06.10 ~ 2023.06.11

Contributors : @이지호 | @길지운 | @유종건


개발 환경

  • JDK 8
  • Springboot
  • Spring Data JPA + JPQL
  • Swagger
  • Docker
  • AWS EC2 + RDS
  • MySQL
  • OpenAI

주요 기능

  • 캡슐(게시글) ..
  • 커뮤니티 ..
  • OpenAI를 활용한..

OpenAI 활용

ChatGpt와 한 번 대화하는 기능 구현

https://platform.openai.com/docs/api-reference/completions/create 를 참고하여 java로 작성


 // header 등록: Content-Type, Authorization(API KEY), Message
 HttpHeaders headers = new HttpHeaders();
 headers.setContentType(MediaType.APPLICATION_JSON);
 headers.set("Authorization", "Bearer " + Secret.OPEN_API_SECRET_KEY);

 Map requestBody = new HashMap<>();

 // Message: {role, content}, Message 등록
 requestBody.put("model", "gpt-3.5-turbo");
 requestBody.put("messages", messages);
 
 // respone 구하기
 // ENDPOINT = "https://api.openai.com/v1/chat/completions"
 RestTemplate restTemplate = new RestTemplate();
 ResponseEntity response = restTemplate.postForEntity(ENDPOINT, requestEntity, Map.class);
 


파일 구조


 demo
    ├── DemoApplication.java
    ├── common
    │   ├── Constant.java
    │   ├── config
    │   │   ├── RestTemplateConfig.java
    │   │   ├── SwaggerConfig.java
    │   │   └── WebConfig.java
    │   ├── entity
    │   │   └── BaseEntity.java
    │   ├── exceptions
    │   │   ├── BaseException.java
    │   │   └── ExceptionAdvice.java
    │   ├── response
    │   │   ├── BaseResponse.java
    │   │   └── BaseResponseStatus.java
    │   ├── scroll
    │   │   └── ScrollPaginationCollection.java
    │   └── secret
    │       └── Secret.java
    ├── src
    │   ├── Open
    │   │   ├── CategoryOpenRepositroy.java
    │   │   ├── MemberOpenRepository.java
    │   │   ├── OpenController.java
    │   │   ├── OpenService.java
    │   │   ├── PostOpenRepository.java
    │   │   └── dto
    │   │       ├── GetOpenAIReqDto.java
    │   │       ├── Message.java
    │   │       ├── PostCapsuleReqDto.java
    │   │       └── PostCapsuleResDto.java
    │   ├── member
    │   │   ├── MemberController.java
    │   │   ├── MemberRepository.java
    │   │   ├── MemberService.java
    │   │   ├── dto
    │   │   │   ├── CapDto.java
    │   │   │   ├── CapResDto.java
    │   │   │   ├── CapSightResDto.java
    │   │   │   ├── EmailCheckReqDto.java
    │   │   │   ├── EmailCheckResDto.java
    │   │   │   ├── FindScrapCategoryResDto.java
    │   │   │   ├── JoinReqDto.java
    │   │   │   ├── JoinResDto.java
    │   │   │   ├── LoginReqDto.java
    │   │   │   ├── LoginResDto.java
    │   │   │   ├── PatchNicknameReqDto.java
    │   │   │   └── PatchNicknameResDto.java
    │   │   └── entity
    │   │       └── Member.java
    │   └── post
    │       ├── PostController.java
    │       ├── PostService.java
    │       ├── dto
    │       │   ├── CreateCommentReqDto.java
    │       │   ├── FindPostByCategoryResDto.java
    │       │   ├── FindPostByTextResDto.java
    │       │   ├── FindPostByYearResDto.java
    │       │   ├── ScrapPostCategoryReqDto.java
    │       │   ├── ToggleCapsuleLikeReqDto.java
    │       │   ├── ToggleCapsuleLikeResDto.java
    │       │   ├── ViewImminentCapsuleResDto.java
    │       │   ├── ViewPostCategoryResDto.java
    │       │   └── ViewPostResDto.java
    │       ├── entity
    │       │   ├── Category.java
    │       │   ├── CategoryScrap.java
    │       │   ├── Comment.java
    │       │   ├── Post.java
    │       │   ├── PostLike.java
    │       │   └── PostTag.java
    │       └── repository
    │           ├── CategoryRepository.java
    │           ├── CategoryScrapRepository.java
    │           ├── CommentRepository.java
    │           ├── PostLikeRepository.java
    │           ├── PostRepository.java
    │           └── PostTagRepository.java
    └── utils
        ├── JwtService.java
        ├── SHA256.java
        └── ValidationRegex.java
        
        

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published