Skip to content

Commit

Permalink
- url 수정
Browse files Browse the repository at this point in the history
- 코루틴 의존성 추가
- QueryResponseDto 삭제
  • Loading branch information
imsongkk committed Nov 18, 2022
1 parent e52cdb3 commit 3e24386
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 48 deletions.
2 changes: 2 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ dependencies {
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
implementation("org.springframework.boot:spring-boot-starter-data-mongodb")
implementation("org.springframework.boot:spring-boot-starter-webflux")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
testImplementation("org.springframework.boot:spring-boot-starter-test")
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
package com.example.CoTEVer.controller

import com.example.CoTEVer.dto.QueryRequestDto
import com.example.CoTEVer.dto.QueryResponseDto
import com.example.CoTEVer.dto.QuestionResponseDto
import com.example.CoTEVer.dto.QuestionRequestDto
import com.example.CoTEVer.dto.ResultRequestDto
import com.example.CoTEVer.service.QueryService
import org.springframework.web.bind.annotation.CrossOrigin
import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.PostMapping
import org.springframework.web.bind.annotation.RequestBody
import org.springframework.web.bind.annotation.RestController
Expand All @@ -16,8 +15,8 @@ class ClientController(
val queryService: QueryService
){
@PostMapping("/query")
fun userQuery(@RequestBody queryRequestDto: QueryRequestDto) : QueryResponseDto{
return queryService.getAnswer(queryRequestDto.query)
suspend fun userQuery(@RequestBody questionRequestDto: QuestionRequestDto) : QuestionResponseDto{
return queryService.getAnswer(questionRequestDto)
}

@PostMapping("/result")
Expand Down
5 changes: 0 additions & 5 deletions src/main/kotlin/com/example/CoTEVer/dto/QueryRequestDto.kt

This file was deleted.

16 changes: 0 additions & 16 deletions src/main/kotlin/com/example/CoTEVer/dto/QueryResponseDto.kt

This file was deleted.

5 changes: 5 additions & 0 deletions src/main/kotlin/com/example/CoTEVer/dto/QuestionRequestDto.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package com.example.CoTEVer.dto

data class QuestionRequestDto(
val question: String
)
25 changes: 25 additions & 0 deletions src/main/kotlin/com/example/CoTEVer/dto/QuestionResponseDto.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.example.CoTEVer.dto

data class QuestionResponseDto(
val question:String,
val explanation:Map<Int, ApiNode>,
val output:ApiOutput
)

data class ApiNode(
val sub_question:String,
val sub_answer:String,
val evidence_document:Map<Int, Document>
)

data class Document(
val url : String,
val title : String,
val document : String,
val score : Float
)

data class ApiOutput(
val final_explanation:String,
val final_answer:String,
)
37 changes: 15 additions & 22 deletions src/main/kotlin/com/example/CoTEVer/service/QueryService.kt
Original file line number Diff line number Diff line change
@@ -1,34 +1,27 @@
package com.example.CoTEVer.service

import com.example.CoTEVer.dto.QueryResponseDto
import com.example.CoTEVer.dto.QueryNode
import com.example.CoTEVer.dto.ResultRequestDto
import com.example.CoTEVer.entity.Log
import com.example.CoTEVer.dto.*
import com.example.CoTEVer.repository.LogRepository
import org.springframework.http.MediaType
import org.springframework.stereotype.Service
import org.springframework.web.reactive.function.client.WebClient
import org.springframework.web.reactive.function.client.awaitBody
import org.springframework.web.reactive.function.client.body
import reactor.core.publisher.Mono

@Service
class QueryService(
val logRepository: LogRepository
) {
fun getAnswer(query : String) : QueryResponseDto{
val res = QueryResponseDto(query, 2, finalAnswer = "A", finalExplanation = "B",
listOf(
QueryNode("subquery1", subQuestionKeyword = "keyword1", subAnswer = "solution1", top5List = listOf(
Pair("www.naver.com","A"),
Pair("www.naverB.com","B"),
Pair("www.naverC.com","C"),
Pair("www.naverC.com","D"),
Pair("www.naverC.com","E"))),
QueryNode("subquery2", subQuestionKeyword = "keyword2", subAnswer = "solution2", top5List = listOf(
Pair("www.google.com","A"),
Pair("www.googleB.com","B"),
Pair("www.googleC.com","C"),
Pair("www.googleD.com","D"),
Pair("www.googleE.com","E")))
))
//logRepository.save(Log(test = "A"))
return res
suspend fun getAnswer(questionRequestDto: QuestionRequestDto) : QuestionResponseDto{
val client = WebClient.create("http://35.206.248.188:8000/test")
val ret = client.post()
.uri("http://35.206.248.188:8000/test")
.contentType(MediaType.APPLICATION_JSON)
.body(Mono.just(questionRequestDto))
.retrieve()
.awaitBody<QuestionResponseDto>()
return ret
}

fun saveResult(resultRequestDto: ResultRequestDto){
Expand Down

0 comments on commit 3e24386

Please sign in to comment.