Merge branch 'main' of https://dev.lunaticbum.kr/lun_admin/lunBackServer
This commit is contained in:
commit
81417ff8aa
@ -138,6 +138,19 @@ class Lama {
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
val embedimgModelEeve ="lancard/korean-yanolja-eeve"
|
||||||
|
val embedimgModelBgeM3 = "bge-m3"
|
||||||
|
val currentEmbedimg = embedimgModelEeve
|
||||||
|
|
||||||
|
val llmPhi4 = "phi4:14b"
|
||||||
|
val llmGemma3 = "gemma3:12b"
|
||||||
|
|
||||||
|
val llmDolphin3 = "dolphin3"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
val currentLLM = llmDolphin3
|
||||||
|
|
||||||
fun addDocuments(query : String , refinedQuery: RefinedQuery?) {
|
fun addDocuments(query : String , refinedQuery: RefinedQuery?) {
|
||||||
var querys : ArrayList<String> = ArrayList()
|
var querys : ArrayList<String> = ArrayList()
|
||||||
@ -182,10 +195,10 @@ class Lama {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var format = "원문:\n'%s'\n원문의 웹 페이지 소스는 '%s'이 질문에 대해 연관 결과로 받은 내용이야. 해당 정보를 파악해서 'query:{질문},contents:{본문내용 한국어},summary:{요약 한국어},keywords:[키워드],related_links:[링크],relatedness_score:{0.0~10.0}'이 형식의 결과만들어줘"
|
var format = "원문:\n'%s'\n원문의 웹 페이지 소스는 '%s'이 질문에 대해 연관 결과로 받은 내용이야. 해당 정보를 파악해서 본문 내용을 최대한 자세히 알려줘 'query:{질문},contents:{본문내용 한국어},summary:{100자 이하로 요약 한국어},keywords:[키워드],related_links:[링크],relatedness_score:{0.0~10.0}'이 형식의 결과만들어줘"
|
||||||
internal fun makeSummarizeRequestMsg(it : SearXngResult) : String= format.format(it.originHtml,it.originQuery)
|
internal fun makeSummarizeRequestMsg(it : SearXngResult) : String= format.format(it.originHtml,it.originQuery)
|
||||||
|
|
||||||
internal fun makeCahtReq(reqMsg:String) = OllamaApi.ChatRequest.Builder("phi4:14b").stream(false).format("json").messages(listOf(OllamaApi.Message.Builder(OllamaApi.Message.Role.USER).content(reqMsg).build())).build()
|
internal fun makeCahtReq(reqMsg:String) = OllamaApi.ChatRequest.Builder(currentLLM).stream(false).format("json").messages(listOf(OllamaApi.Message.Builder(OllamaApi.Message.Role.USER).content(reqMsg).build())).build()
|
||||||
|
|
||||||
@Async
|
@Async
|
||||||
fun webPageSummarize(it : SearXngResult , text : String) {
|
fun webPageSummarize(it : SearXngResult , text : String) {
|
||||||
@ -201,7 +214,7 @@ class Lama {
|
|||||||
EmbeddingRequest(
|
EmbeddingRequest(
|
||||||
listOf(aiResponce.message.content),
|
listOf(aiResponce.message.content),
|
||||||
OllamaOptions.builder()
|
OllamaOptions.builder()
|
||||||
.model("bge-m3")
|
.model(currentEmbedimg)
|
||||||
.truncate(false).build()
|
.truncate(false).build()
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@ -296,7 +309,7 @@ class Lama {
|
|||||||
chatClient, OllamaOptions.builder().build(), ObservationRegistry.create(), ModelManagementOptions.defaults())
|
chatClient, OllamaOptions.builder().build(), ObservationRegistry.create(), ModelManagementOptions.defaults())
|
||||||
println("On generateResponse :: find something ${query}")
|
println("On generateResponse :: find something ${query}")
|
||||||
query?.let { originalQuery ->
|
query?.let { originalQuery ->
|
||||||
var embeddingResponse = embeddingModel.call(EmbeddingRequest(listOf(originalQuery), OllamaOptions.builder().model("bge-m3").truncate(false).build()))
|
var embeddingResponse = embeddingModel.call(EmbeddingRequest(listOf(originalQuery), OllamaOptions.builder().model(currentEmbedimg).truncate(false).build()))
|
||||||
addDocuments(originalQuery, querySummarize(originalQuery))
|
addDocuments(originalQuery, querySummarize(originalQuery))
|
||||||
println("points size ${embeddingResponse.result.output.size}")
|
println("points size ${embeddingResponse.result.output.size}")
|
||||||
var context : String? = ""
|
var context : String? = ""
|
||||||
@ -318,7 +331,7 @@ class Lama {
|
|||||||
|
|
||||||
val prompt = "참조:\n$context\n참조 내용을 고려해서\n해당 질문:${query}\n에 {질문내용:[한국어],답변내용:[한국어],전체키워드:[],참조링크:[]}형식으로 대답 해줘 ".trimIndent()
|
val prompt = "참조:\n$context\n참조 내용을 고려해서\n해당 질문:${query}\n에 {질문내용:[한국어],답변내용:[한국어],전체키워드:[],참조링크:[]}형식으로 대답 해줘 ".trimIndent()
|
||||||
println(prompt)
|
println(prompt)
|
||||||
val response: OllamaApi.ChatResponse = chatClient.chat(OllamaApi.ChatRequest.Builder("phi4:14b").stream(false).format("json").messages(
|
val response: OllamaApi.ChatResponse = chatClient.chat(OllamaApi.ChatRequest.Builder(currentLLM).stream(false).format("json").messages(
|
||||||
listOf(OllamaApi.Message.Builder(OllamaApi.Message.Role.USER).content(prompt).build())
|
listOf(OllamaApi.Message.Builder(OllamaApi.Message.Role.USER).content(prompt).build())
|
||||||
).build())
|
).build())
|
||||||
|
|
||||||
|
|||||||
@ -64,7 +64,7 @@ spring.data.mongodb.option.heartbeat-frequency=10000
|
|||||||
spring.data.mongodb.option.local-threshold=15
|
spring.data.mongodb.option.local-threshold=15
|
||||||
|
|
||||||
spring.ai.ollama.base-url=https://lama.lunaticbum.kr
|
spring.ai.ollama.base-url=https://lama.lunaticbum.kr
|
||||||
spring.ai.ollama.chat.options.model=phi4:14b
|
#spring.ai.ollama.chat.options.model=phi4:14b
|
||||||
|
|
||||||
##spring.data.redis.url=ollama.lunaticbum.kr
|
##spring.data.redis.url=ollama.lunaticbum.kr
|
||||||
#spring.data.redis.host=lunaticbum.kr
|
#spring.data.redis.host=lunaticbum.kr
|
||||||
@ -82,7 +82,7 @@ spring.ai.vectorstore.qdrant.port=443
|
|||||||
#spring.ai.vectorstore.qdrant.initialize-schema=true
|
#spring.ai.vectorstore.qdrant.initialize-schema=true
|
||||||
spring.ai.vectorstore.qdrant.api-key=blama-admin-key-gb
|
spring.ai.vectorstore.qdrant.api-key=blama-admin-key-gb
|
||||||
spring.ai.vectorstore.qdrant.collection-name=blama_vectors
|
spring.ai.vectorstore.qdrant.collection-name=blama_vectors
|
||||||
spring.ai.ollama.embedding.model=nomic-embed-text
|
#spring.ai.ollama.embedding.model=nomic-embed-text
|
||||||
|
|
||||||
spring.ai.ollama.embedding.enabled=true
|
spring.ai.ollama.embedding.enabled=true
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user